int tri_tri_overlap_test_3d(float p1[3], float q1[3], float r1[3], float p2[3],
                            float q2[3], float r2[3]) {
  float dp1, dq1, dr1, dp2, dq2, dr2;
  float v1[3], v2[3];
  float N1[3], N2[3];
  v1[0] = p2[0] - r2[0];
  v1[1] = p2[1] - r2[1];
  v1[2] = p2[2] - r2[2];
  v2[0] = q2[0] - r2[0];
  v2[1] = q2[1] - r2[1];
  v2[2] = q2[2] - r2[2];
  N2[0] = v1[1] * v2[2] - v1[2] * v2[1];
  N2[1] = v1[2] * v2[0] - v1[0] * v2[2];
  N2[2] = v1[0] * v2[1] - v1[1] * v2[0];
  v1[0] = p1[0] - r2[0];
  v1[1] = p1[1] - r2[1];
  v1[2] = p1[2] - r2[2];
  dp1 = (v1[0] * N2[0] + v1[1] * N2[1] + v1[2] * N2[2]);
  v1[0] = q1[0] - r2[0];
  v1[1] = q1[1] - r2[1];
  v1[2] = q1[2] - r2[2];
  dq1 = (v1[0] * N2[0] + v1[1] * N2[1] + v1[2] * N2[2]);
  v1[0] = r1[0] - r2[0];
  v1[1] = r1[1] - r2[1];
  v1[2] = r1[2] - r2[2];
  dr1 = (v1[0] * N2[0] + v1[1] * N2[1] + v1[2] * N2[2]);
  if (((dp1 * dq1) > 0.0f) && ((dp1 * dr1) > 0.0f))
    return 0;
  v1[0] = q1[0] - p1[0];
  v1[1] = q1[1] - p1[1];
  v1[2] = q1[2] - p1[2];
  v2[0] = r1[0] - p1[0];
  v2[1] = r1[1] - p1[1];
  v2[2] = r1[2] - p1[2];
  N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
  N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
  N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
  v1[0] = p2[0] - r1[0];
  v1[1] = p2[1] - r1[1];
  v1[2] = p2[2] - r1[2];
  dp2 = (v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]);
  v1[0] = q2[0] - r1[0];
  v1[1] = q2[1] - r1[1];
  v1[2] = q2[2] - r1[2];
  dq2 = (v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]);
  v1[0] = r2[0] - r1[0];
  v1[1] = r2[1] - r1[1];
  v1[2] = r2[2] - r1[2];
  dr2 = (v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]);
  if (((dp2 * dq2) > 0.0f) && ((dp2 * dr2) > 0.0f))
    return 0;
  if (dp1 > 0.0f) {
    if (dq1 > 0.0f) {
      if (dp2 > 0.0f) {
        if (dr2 > 0.0f) {
          v1[0] = q2[0] - q1[0];
          v1[1] = q2[1] - q1[1];
          v1[2] = q2[2] - q1[2];
          v2[0] = r1[0] - q1[0];
          v2[1] = r1[1] - q1[1];
          v2[2] = r1[2] - q1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = p2[0] - q1[0];
          v1[1] = p2[1] - q1[1];
          v1[2] = p2[2] - q1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = q2[0] - r1[0];
          v1[1] = q2[1] - r1[1];
          v1[2] = q2[2] - r1[2];
          v2[0] = p1[0] - r1[0];
          v2[1] = p1[1] - r1[1];
          v2[2] = p1[2] - r1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = r2[0] - r1[0];
          v1[1] = r2[1] - r1[1];
          v1[2] = r2[2] - r1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        } else if (dq2 > 0.0f) {
          v1[0] = r2[0] - q1[0];
          v1[1] = r2[1] - q1[1];
          v1[2] = r2[2] - q1[2];
          v2[0] = r1[0] - q1[0];
          v2[1] = r1[1] - q1[1];
          v2[2] = r1[2] - q1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = q2[0] - q1[0];
          v1[1] = q2[1] - q1[1];
          v1[2] = q2[2] - q1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = r2[0] - r1[0];
          v1[1] = r2[1] - r1[1];
          v1[2] = r2[2] - r1[2];
          v2[0] = p1[0] - r1[0];
          v2[1] = p1[1] - r1[1];
          v2[2] = p1[2] - r1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = p2[0] - r1[0];
          v1[1] = p2[1] - r1[1];
          v1[2] = p2[2] - r1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        } else {
          v1[0] = p2[0] - p1[0];
          v1[1] = p2[1] - p1[1];
          v1[2] = p2[2] - p1[2];
          v2[0] = r1[0] - p1[0];
          v2[1] = r1[1] - p1[1];
          v2[2] = r1[2] - p1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = r2[0] - p1[0];
          v1[1] = r2[1] - p1[1];
          v1[2] = r2[2] - p1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = p2[0] - r1[0];
          v1[1] = p2[1] - r1[1];
          v1[2] = p2[2] - r1[2];
          v2[0] = q1[0] - r1[0];
          v2[1] = q1[1] - r1[1];
          v2[2] = q1[2] - r1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = q2[0] - r1[0];
          v1[1] = q2[1] - r1[1];
          v1[2] = q2[2] - r1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        }
      } else if (dp2 < 0.0f) {
        if (dr2 < 0.0f) {
          v1[0] = q2[0] - p1[0];
          v1[1] = q2[1] - p1[1];
          v1[2] = q2[2] - p1[2];
          v2[0] = r1[0] - p1[0];
          v2[1] = r1[1] - p1[1];
          v2[2] = r1[2] - p1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = p2[0] - p1[0];
          v1[1] = p2[1] - p1[1];
          v1[2] = p2[2] - p1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = q2[0] - r1[0];
          v1[1] = q2[1] - r1[1];
          v1[2] = q2[2] - r1[2];
          v2[0] = q1[0] - r1[0];
          v2[1] = q1[1] - r1[1];
          v2[2] = q1[2] - r1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = r2[0] - r1[0];
          v1[1] = r2[1] - r1[1];
          v1[2] = r2[2] - r1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        } else if (dq2 < 0.0f) {
          v1[0] = r2[0] - p1[0];
          v1[1] = r2[1] - p1[1];
          v1[2] = r2[2] - p1[2];
          v2[0] = r1[0] - p1[0];
          v2[1] = r1[1] - p1[1];
          v2[2] = r1[2] - p1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = q2[0] - p1[0];
          v1[1] = q2[1] - p1[1];
          v1[2] = q2[2] - p1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = r2[0] - r1[0];
          v1[1] = r2[1] - r1[1];
          v1[2] = r2[2] - r1[2];
          v2[0] = q1[0] - r1[0];
          v2[1] = q1[1] - r1[1];
          v2[2] = q1[2] - r1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = p2[0] - r1[0];
          v1[1] = p2[1] - r1[1];
          v1[2] = p2[2] - r1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        } else {
          v1[0] = p2[0] - q1[0];
          v1[1] = p2[1] - q1[1];
          v1[2] = p2[2] - q1[2];
          v2[0] = r1[0] - q1[0];
          v2[1] = r1[1] - q1[1];
          v2[2] = r1[2] - q1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = r2[0] - q1[0];
          v1[1] = r2[1] - q1[1];
          v1[2] = r2[2] - q1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = p2[0] - r1[0];
          v1[1] = p2[1] - r1[1];
          v1[2] = p2[2] - r1[2];
          v2[0] = p1[0] - r1[0];
          v2[1] = p1[1] - r1[1];
          v2[2] = p1[2] - r1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = q2[0] - r1[0];
          v1[1] = q2[1] - r1[1];
          v1[2] = q2[2] - r1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        }
      } else {
        if (dr2 < 0.0f) {
          if (dq2 >= 0.0f) {
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            v2[0] = r1[0] - q1[0];
            v2[1] = r1[1] - q1[1];
            v2[2] = r1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            v2[0] = p1[0] - r1[0];
            v2[1] = p1[1] - r1[1];
            v2[2] = p1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else {
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            v2[0] = r1[0] - p1[0];
            v2[1] = r1[1] - p1[1];
            v2[2] = r1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            v2[0] = q1[0] - r1[0];
            v2[1] = q1[1] - r1[1];
            v2[2] = q1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          }
        } else if (dr2 > 0.0f) {
          if (dq2 > 0.0f) {
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            v2[0] = r1[0] - q1[0];
            v2[1] = r1[1] - q1[1];
            v2[2] = r1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            v2[0] = p1[0] - r1[0];
            v2[1] = p1[1] - r1[1];
            v2[2] = p1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else {
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            v2[0] = r1[0] - p1[0];
            v2[1] = r1[1] - p1[1];
            v2[2] = r1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            v2[0] = q1[0] - r1[0];
            v2[1] = q1[1] - r1[1];
            v2[2] = q1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          }
        } else {
          if (dq2 > 0.0f) {
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            v2[0] = r1[0] - p1[0];
            v2[1] = r1[1] - p1[1];
            v2[2] = r1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            v2[0] = q1[0] - r1[0];
            v2[1] = q1[1] - r1[1];
            v2[2] = q1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else if (dq2 < 0.0f) {
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            v2[0] = r1[0] - q1[0];
            v2[1] = r1[1] - q1[1];
            v2[2] = r1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            v2[0] = p1[0] - r1[0];
            v2[1] = p1[1] - r1[1];
            v2[2] = p1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else
            return coplanar_tri_tri3d(r1, p1, q1, p2, r2, q2, N1, N2);
        }
      }
    } else if (dr1 > 0.0f) {
      if (dp2 > 0.0f) {
        if (dr2 > 0.0f) {
          v1[0] = q2[0] - p1[0];
          v1[1] = q2[1] - p1[1];
          v1[2] = q2[2] - p1[2];
          v2[0] = q1[0] - p1[0];
          v2[1] = q1[1] - p1[1];
          v2[2] = q1[2] - p1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = p2[0] - p1[0];
          v1[1] = p2[1] - p1[1];
          v1[2] = p2[2] - p1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = q2[0] - q1[0];
          v1[1] = q2[1] - q1[1];
          v1[2] = q2[2] - q1[2];
          v2[0] = r1[0] - q1[0];
          v2[1] = r1[1] - q1[1];
          v2[2] = r1[2] - q1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = r2[0] - q1[0];
          v1[1] = r2[1] - q1[1];
          v1[2] = r2[2] - q1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        } else if (dq2 > 0.0f) {
          v1[0] = r2[0] - p1[0];
          v1[1] = r2[1] - p1[1];
          v1[2] = r2[2] - p1[2];
          v2[0] = q1[0] - p1[0];
          v2[1] = q1[1] - p1[1];
          v2[2] = q1[2] - p1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = q2[0] - p1[0];
          v1[1] = q2[1] - p1[1];
          v1[2] = q2[2] - p1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = r2[0] - q1[0];
          v1[1] = r2[1] - q1[1];
          v1[2] = r2[2] - q1[2];
          v2[0] = r1[0] - q1[0];
          v2[1] = r1[1] - q1[1];
          v2[2] = r1[2] - q1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = p2[0] - q1[0];
          v1[1] = p2[1] - q1[1];
          v1[2] = p2[2] - q1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        } else {
          v1[0] = p2[0] - r1[0];
          v1[1] = p2[1] - r1[1];
          v1[2] = p2[2] - r1[2];
          v2[0] = q1[0] - r1[0];
          v2[1] = q1[1] - r1[1];
          v2[2] = q1[2] - r1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = r2[0] - r1[0];
          v1[1] = r2[1] - r1[1];
          v1[2] = r2[2] - r1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = p2[0] - q1[0];
          v1[1] = p2[1] - q1[1];
          v1[2] = p2[2] - q1[2];
          v2[0] = p1[0] - q1[0];
          v2[1] = p1[1] - q1[1];
          v2[2] = p1[2] - q1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = q2[0] - q1[0];
          v1[1] = q2[1] - q1[1];
          v1[2] = q2[2] - q1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        }
      } else if (dp2 < 0.0f) {
        if (dr2 < 0.0f) {
          v1[0] = q2[0] - r1[0];
          v1[1] = q2[1] - r1[1];
          v1[2] = q2[2] - r1[2];
          v2[0] = q1[0] - r1[0];
          v2[1] = q1[1] - r1[1];
          v2[2] = q1[2] - r1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = p2[0] - r1[0];
          v1[1] = p2[1] - r1[1];
          v1[2] = p2[2] - r1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = q2[0] - q1[0];
          v1[1] = q2[1] - q1[1];
          v1[2] = q2[2] - q1[2];
          v2[0] = p1[0] - q1[0];
          v2[1] = p1[1] - q1[1];
          v2[2] = p1[2] - q1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = r2[0] - q1[0];
          v1[1] = r2[1] - q1[1];
          v1[2] = r2[2] - q1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        } else if (dq2 < 0.0f) {
          v1[0] = r2[0] - r1[0];
          v1[1] = r2[1] - r1[1];
          v1[2] = r2[2] - r1[2];
          v2[0] = q1[0] - r1[0];
          v2[1] = q1[1] - r1[1];
          v2[2] = q1[2] - r1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = q2[0] - r1[0];
          v1[1] = q2[1] - r1[1];
          v1[2] = q2[2] - r1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = r2[0] - q1[0];
          v1[1] = r2[1] - q1[1];
          v1[2] = r2[2] - q1[2];
          v2[0] = p1[0] - q1[0];
          v2[1] = p1[1] - q1[1];
          v2[2] = p1[2] - q1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = p2[0] - q1[0];
          v1[1] = p2[1] - q1[1];
          v1[2] = p2[2] - q1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        } else {
          v1[0] = p2[0] - p1[0];
          v1[1] = p2[1] - p1[1];
          v1[2] = p2[2] - p1[2];
          v2[0] = q1[0] - p1[0];
          v2[1] = q1[1] - p1[1];
          v2[2] = q1[2] - p1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = r2[0] - p1[0];
          v1[1] = r2[1] - p1[1];
          v1[2] = r2[2] - p1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = p2[0] - q1[0];
          v1[1] = p2[1] - q1[1];
          v1[2] = p2[2] - q1[2];
          v2[0] = r1[0] - q1[0];
          v2[1] = r1[1] - q1[1];
          v2[2] = r1[2] - q1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = q2[0] - q1[0];
          v1[1] = q2[1] - q1[1];
          v1[2] = q2[2] - q1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        }
      } else {
        if (dr2 < 0.0f) {
          if (dq2 >= 0.0f) {
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            v2[0] = q1[0] - p1[0];
            v2[1] = q1[1] - p1[1];
            v2[2] = q1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            v2[0] = r1[0] - q1[0];
            v2[1] = r1[1] - q1[1];
            v2[2] = r1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else {
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            v2[0] = q1[0] - r1[0];
            v2[1] = q1[1] - r1[1];
            v2[2] = q1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            v2[0] = p1[0] - q1[0];
            v2[1] = p1[1] - q1[1];
            v2[2] = p1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          }
        } else if (dr2 > 0.0f) {
          if (dq2 > 0.0f) {
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            v2[0] = q1[0] - p1[0];
            v2[1] = q1[1] - p1[1];
            v2[2] = q1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            v2[0] = r1[0] - q1[0];
            v2[1] = r1[1] - q1[1];
            v2[2] = r1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else {
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            v2[0] = q1[0] - r1[0];
            v2[1] = q1[1] - r1[1];
            v2[2] = q1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            v2[0] = p1[0] - q1[0];
            v2[1] = p1[1] - q1[1];
            v2[2] = p1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          }
        } else {
          if (dq2 > 0.0f) {
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            v2[0] = q1[0] - r1[0];
            v2[1] = q1[1] - r1[1];
            v2[2] = q1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            v2[0] = p1[0] - q1[0];
            v2[1] = p1[1] - q1[1];
            v2[2] = p1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else if (dq2 < 0.0f) {
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            v2[0] = q1[0] - p1[0];
            v2[1] = q1[1] - p1[1];
            v2[2] = q1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            v2[0] = r1[0] - q1[0];
            v2[1] = r1[1] - q1[1];
            v2[2] = r1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else
            return coplanar_tri_tri3d(q1, r1, p1, p2, r2, q2, N1, N2);
        }
      }
    } else {
      if (dp2 > 0.0f) {
        if (dq2 > 0.0f) {
          v1[0] = r2[0] - r1[0];
          v1[1] = r2[1] - r1[1];
          v1[2] = r2[2] - r1[2];
          v2[0] = p1[0] - r1[0];
          v2[1] = p1[1] - r1[1];
          v2[2] = p1[2] - r1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = p2[0] - r1[0];
          v1[1] = p2[1] - r1[1];
          v1[2] = p2[2] - r1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = r2[0] - p1[0];
          v1[1] = r2[1] - p1[1];
          v1[2] = r2[2] - p1[2];
          v2[0] = q1[0] - p1[0];
          v2[1] = q1[1] - p1[1];
          v2[2] = q1[2] - p1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = q2[0] - p1[0];
          v1[1] = q2[1] - p1[1];
          v1[2] = q2[2] - p1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        } else if (dr2 > 0.0f) {
          v1[0] = q2[0] - r1[0];
          v1[1] = q2[1] - r1[1];
          v1[2] = q2[2] - r1[2];
          v2[0] = p1[0] - r1[0];
          v2[1] = p1[1] - r1[1];
          v2[2] = p1[2] - r1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = r2[0] - r1[0];
          v1[1] = r2[1] - r1[1];
          v1[2] = r2[2] - r1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = q2[0] - p1[0];
          v1[1] = q2[1] - p1[1];
          v1[2] = q2[2] - p1[2];
          v2[0] = q1[0] - p1[0];
          v2[1] = q1[1] - p1[1];
          v2[2] = q1[2] - p1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = p2[0] - p1[0];
          v1[1] = p2[1] - p1[1];
          v1[2] = p2[2] - p1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        } else {
          v1[0] = p2[0] - q1[0];
          v1[1] = p2[1] - q1[1];
          v1[2] = p2[2] - q1[2];
          v2[0] = p1[0] - q1[0];
          v2[1] = p1[1] - q1[1];
          v2[2] = p1[2] - q1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = q2[0] - q1[0];
          v1[1] = q2[1] - q1[1];
          v1[2] = q2[2] - q1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = p2[0] - p1[0];
          v1[1] = p2[1] - p1[1];
          v1[2] = p2[2] - p1[2];
          v2[0] = r1[0] - p1[0];
          v2[1] = r1[1] - p1[1];
          v2[2] = r1[2] - p1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = r2[0] - p1[0];
          v1[1] = r2[1] - p1[1];
          v1[2] = r2[2] - p1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        }
      } else if (dp2 < 0.0f) {
        if (dq2 < 0.0f) {
          v1[0] = r2[0] - q1[0];
          v1[1] = r2[1] - q1[1];
          v1[2] = r2[2] - q1[2];
          v2[0] = p1[0] - q1[0];
          v2[1] = p1[1] - q1[1];
          v2[2] = p1[2] - q1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = p2[0] - q1[0];
          v1[1] = p2[1] - q1[1];
          v1[2] = p2[2] - q1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = r2[0] - p1[0];
          v1[1] = r2[1] - p1[1];
          v1[2] = r2[2] - p1[2];
          v2[0] = r1[0] - p1[0];
          v2[1] = r1[1] - p1[1];
          v2[2] = r1[2] - p1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = q2[0] - p1[0];
          v1[1] = q2[1] - p1[1];
          v1[2] = q2[2] - p1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        } else if (dr2 < 0.0f) {
          v1[0] = q2[0] - q1[0];
          v1[1] = q2[1] - q1[1];
          v1[2] = q2[2] - q1[2];
          v2[0] = p1[0] - q1[0];
          v2[1] = p1[1] - q1[1];
          v2[2] = p1[2] - q1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = r2[0] - q1[0];
          v1[1] = r2[1] - q1[1];
          v1[2] = r2[2] - q1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = q2[0] - p1[0];
          v1[1] = q2[1] - p1[1];
          v1[2] = q2[2] - p1[2];
          v2[0] = r1[0] - p1[0];
          v2[1] = r1[1] - p1[1];
          v2[2] = r1[2] - p1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = p2[0] - p1[0];
          v1[1] = p2[1] - p1[1];
          v1[2] = p2[2] - p1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        } else {
          v1[0] = p2[0] - r1[0];
          v1[1] = p2[1] - r1[1];
          v1[2] = p2[2] - r1[2];
          v2[0] = p1[0] - r1[0];
          v2[1] = p1[1] - r1[1];
          v2[2] = p1[2] - r1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = q2[0] - r1[0];
          v1[1] = q2[1] - r1[1];
          v1[2] = q2[2] - r1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = p2[0] - p1[0];
          v1[1] = p2[1] - p1[1];
          v1[2] = p2[2] - p1[2];
          v2[0] = q1[0] - p1[0];
          v2[1] = q1[1] - p1[1];
          v2[2] = q1[2] - p1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = r2[0] - p1[0];
          v1[1] = r2[1] - p1[1];
          v1[2] = r2[2] - p1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        }
      } else {
        if (dq2 < 0.0f) {
          if (dr2 >= 0.0f) {
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            v2[0] = p1[0] - r1[0];
            v2[1] = p1[1] - r1[1];
            v2[2] = p1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            v2[0] = q1[0] - p1[0];
            v2[1] = q1[1] - p1[1];
            v2[2] = q1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else {
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            v2[0] = p1[0] - q1[0];
            v2[1] = p1[1] - q1[1];
            v2[2] = p1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            v2[0] = r1[0] - p1[0];
            v2[1] = r1[1] - p1[1];
            v2[2] = r1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          }
        } else if (dq2 > 0.0f) {
          if (dr2 > 0.0f) {
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            v2[0] = p1[0] - r1[0];
            v2[1] = p1[1] - r1[1];
            v2[2] = p1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            v2[0] = q1[0] - p1[0];
            v2[1] = q1[1] - p1[1];
            v2[2] = q1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else {
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            v2[0] = p1[0] - q1[0];
            v2[1] = p1[1] - q1[1];
            v2[2] = p1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            v2[0] = r1[0] - p1[0];
            v2[1] = r1[1] - p1[1];
            v2[2] = r1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          }
        } else {
          if (dr2 > 0.0f) {
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            v2[0] = p1[0] - q1[0];
            v2[1] = p1[1] - q1[1];
            v2[2] = p1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            v2[0] = r1[0] - p1[0];
            v2[1] = r1[1] - p1[1];
            v2[2] = r1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else if (dr2 < 0.0f) {
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            v2[0] = p1[0] - r1[0];
            v2[1] = p1[1] - r1[1];
            v2[2] = p1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            v2[0] = q1[0] - p1[0];
            v2[1] = q1[1] - p1[1];
            v2[2] = q1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else
            return coplanar_tri_tri3d(p1, q1, r1, p2, q2, r2, N1, N2);
        }
      }
    }
  } else if (dp1 < 0.0f) {
    if (dq1 < 0.0f) {
      if (dp2 > 0.0f) {
        if (dq2 > 0.0f) {
          v1[0] = r2[0] - q1[0];
          v1[1] = r2[1] - q1[1];
          v1[2] = r2[2] - q1[2];
          v2[0] = r1[0] - q1[0];
          v2[1] = r1[1] - q1[1];
          v2[2] = r1[2] - q1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = p2[0] - q1[0];
          v1[1] = p2[1] - q1[1];
          v1[2] = p2[2] - q1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = r2[0] - r1[0];
          v1[1] = r2[1] - r1[1];
          v1[2] = r2[2] - r1[2];
          v2[0] = p1[0] - r1[0];
          v2[1] = p1[1] - r1[1];
          v2[2] = p1[2] - r1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = q2[0] - r1[0];
          v1[1] = q2[1] - r1[1];
          v1[2] = q2[2] - r1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        } else if (dr2 > 0.0f) {
          v1[0] = q2[0] - q1[0];
          v1[1] = q2[1] - q1[1];
          v1[2] = q2[2] - q1[2];
          v2[0] = r1[0] - q1[0];
          v2[1] = r1[1] - q1[1];
          v2[2] = r1[2] - q1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = r2[0] - q1[0];
          v1[1] = r2[1] - q1[1];
          v1[2] = r2[2] - q1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = q2[0] - r1[0];
          v1[1] = q2[1] - r1[1];
          v1[2] = q2[2] - r1[2];
          v2[0] = p1[0] - r1[0];
          v2[1] = p1[1] - r1[1];
          v2[2] = p1[2] - r1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = p2[0] - r1[0];
          v1[1] = p2[1] - r1[1];
          v1[2] = p2[2] - r1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        } else {
          v1[0] = p2[0] - p1[0];
          v1[1] = p2[1] - p1[1];
          v1[2] = p2[2] - p1[2];
          v2[0] = r1[0] - p1[0];
          v2[1] = r1[1] - p1[1];
          v2[2] = r1[2] - p1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = q2[0] - p1[0];
          v1[1] = q2[1] - p1[1];
          v1[2] = q2[2] - p1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = p2[0] - r1[0];
          v1[1] = p2[1] - r1[1];
          v1[2] = p2[2] - r1[2];
          v2[0] = q1[0] - r1[0];
          v2[1] = q1[1] - r1[1];
          v2[2] = q1[2] - r1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = r2[0] - r1[0];
          v1[1] = r2[1] - r1[1];
          v1[2] = r2[2] - r1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        }
      } else if (dp2 < 0.0f) {
        if (dq2 < 0.0f) {
          v1[0] = r2[0] - p1[0];
          v1[1] = r2[1] - p1[1];
          v1[2] = r2[2] - p1[2];
          v2[0] = r1[0] - p1[0];
          v2[1] = r1[1] - p1[1];
          v2[2] = r1[2] - p1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = p2[0] - p1[0];
          v1[1] = p2[1] - p1[1];
          v1[2] = p2[2] - p1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = r2[0] - r1[0];
          v1[1] = r2[1] - r1[1];
          v1[2] = r2[2] - r1[2];
          v2[0] = q1[0] - r1[0];
          v2[1] = q1[1] - r1[1];
          v2[2] = q1[2] - r1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = q2[0] - r1[0];
          v1[1] = q2[1] - r1[1];
          v1[2] = q2[2] - r1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        } else if (dr2 < 0.0f) {
          v1[0] = q2[0] - p1[0];
          v1[1] = q2[1] - p1[1];
          v1[2] = q2[2] - p1[2];
          v2[0] = r1[0] - p1[0];
          v2[1] = r1[1] - p1[1];
          v2[2] = r1[2] - p1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = r2[0] - p1[0];
          v1[1] = r2[1] - p1[1];
          v1[2] = r2[2] - p1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = q2[0] - r1[0];
          v1[1] = q2[1] - r1[1];
          v1[2] = q2[2] - r1[2];
          v2[0] = q1[0] - r1[0];
          v2[1] = q1[1] - r1[1];
          v2[2] = q1[2] - r1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = p2[0] - r1[0];
          v1[1] = p2[1] - r1[1];
          v1[2] = p2[2] - r1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        } else {
          v1[0] = p2[0] - q1[0];
          v1[1] = p2[1] - q1[1];
          v1[2] = p2[2] - q1[2];
          v2[0] = r1[0] - q1[0];
          v2[1] = r1[1] - q1[1];
          v2[2] = r1[2] - q1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = q2[0] - q1[0];
          v1[1] = q2[1] - q1[1];
          v1[2] = q2[2] - q1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = p2[0] - r1[0];
          v1[1] = p2[1] - r1[1];
          v1[2] = p2[2] - r1[2];
          v2[0] = p1[0] - r1[0];
          v2[1] = p1[1] - r1[1];
          v2[2] = p1[2] - r1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = r2[0] - r1[0];
          v1[1] = r2[1] - r1[1];
          v1[2] = r2[2] - r1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        }
      } else {
        if (dq2 < 0.0f) {
          if (dr2 >= 0.0f) {
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            v2[0] = r1[0] - q1[0];
            v2[1] = r1[1] - q1[1];
            v2[2] = r1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            v2[0] = p1[0] - r1[0];
            v2[1] = p1[1] - r1[1];
            v2[2] = p1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else {
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            v2[0] = r1[0] - p1[0];
            v2[1] = r1[1] - p1[1];
            v2[2] = r1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            v2[0] = q1[0] - r1[0];
            v2[1] = q1[1] - r1[1];
            v2[2] = q1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          }
        } else if (dq2 > 0.0f) {
          if (dr2 > 0.0f) {
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            v2[0] = r1[0] - q1[0];
            v2[1] = r1[1] - q1[1];
            v2[2] = r1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            v2[0] = p1[0] - r1[0];
            v2[1] = p1[1] - r1[1];
            v2[2] = p1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else {
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            v2[0] = r1[0] - p1[0];
            v2[1] = r1[1] - p1[1];
            v2[2] = r1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            v2[0] = q1[0] - r1[0];
            v2[1] = q1[1] - r1[1];
            v2[2] = q1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          }
        } else {
          if (dr2 > 0.0f) {
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            v2[0] = r1[0] - p1[0];
            v2[1] = r1[1] - p1[1];
            v2[2] = r1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            v2[0] = q1[0] - r1[0];
            v2[1] = q1[1] - r1[1];
            v2[2] = q1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else if (dr2 < 0.0f) {
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            v2[0] = r1[0] - q1[0];
            v2[1] = r1[1] - q1[1];
            v2[2] = r1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            v2[0] = p1[0] - r1[0];
            v2[1] = p1[1] - r1[1];
            v2[2] = p1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else
            return coplanar_tri_tri3d(r1, p1, q1, p2, q2, r2, N1, N2);
        }
      }
    } else if (dr1 < 0.0f) {
      if (dp2 > 0.0f) {
        if (dq2 > 0.0f) {
          v1[0] = r2[0] - p1[0];
          v1[1] = r2[1] - p1[1];
          v1[2] = r2[2] - p1[2];
          v2[0] = q1[0] - p1[0];
          v2[1] = q1[1] - p1[1];
          v2[2] = q1[2] - p1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = p2[0] - p1[0];
          v1[1] = p2[1] - p1[1];
          v1[2] = p2[2] - p1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = r2[0] - q1[0];
          v1[1] = r2[1] - q1[1];
          v1[2] = r2[2] - q1[2];
          v2[0] = r1[0] - q1[0];
          v2[1] = r1[1] - q1[1];
          v2[2] = r1[2] - q1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = q2[0] - q1[0];
          v1[1] = q2[1] - q1[1];
          v1[2] = q2[2] - q1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        } else if (dr2 > 0.0f) {
          v1[0] = q2[0] - p1[0];
          v1[1] = q2[1] - p1[1];
          v1[2] = q2[2] - p1[2];
          v2[0] = q1[0] - p1[0];
          v2[1] = q1[1] - p1[1];
          v2[2] = q1[2] - p1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = r2[0] - p1[0];
          v1[1] = r2[1] - p1[1];
          v1[2] = r2[2] - p1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = q2[0] - q1[0];
          v1[1] = q2[1] - q1[1];
          v1[2] = q2[2] - q1[2];
          v2[0] = r1[0] - q1[0];
          v2[1] = r1[1] - q1[1];
          v2[2] = r1[2] - q1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = p2[0] - q1[0];
          v1[1] = p2[1] - q1[1];
          v1[2] = p2[2] - q1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        } else {
          v1[0] = p2[0] - r1[0];
          v1[1] = p2[1] - r1[1];
          v1[2] = p2[2] - r1[2];
          v2[0] = q1[0] - r1[0];
          v2[1] = q1[1] - r1[1];
          v2[2] = q1[2] - r1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = q2[0] - r1[0];
          v1[1] = q2[1] - r1[1];
          v1[2] = q2[2] - r1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = p2[0] - q1[0];
          v1[1] = p2[1] - q1[1];
          v1[2] = p2[2] - q1[2];
          v2[0] = p1[0] - q1[0];
          v2[1] = p1[1] - q1[1];
          v2[2] = p1[2] - q1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = r2[0] - q1[0];
          v1[1] = r2[1] - q1[1];
          v1[2] = r2[2] - q1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        }
      } else if (dp2 < 0.0f) {
        if (dq2 < 0.0f) {
          v1[0] = r2[0] - r1[0];
          v1[1] = r2[1] - r1[1];
          v1[2] = r2[2] - r1[2];
          v2[0] = q1[0] - r1[0];
          v2[1] = q1[1] - r1[1];
          v2[2] = q1[2] - r1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = p2[0] - r1[0];
          v1[1] = p2[1] - r1[1];
          v1[2] = p2[2] - r1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = r2[0] - q1[0];
          v1[1] = r2[1] - q1[1];
          v1[2] = r2[2] - q1[2];
          v2[0] = p1[0] - q1[0];
          v2[1] = p1[1] - q1[1];
          v2[2] = p1[2] - q1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = q2[0] - q1[0];
          v1[1] = q2[1] - q1[1];
          v1[2] = q2[2] - q1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        } else if (dr2 < 0.0f) {
          v1[0] = q2[0] - r1[0];
          v1[1] = q2[1] - r1[1];
          v1[2] = q2[2] - r1[2];
          v2[0] = q1[0] - r1[0];
          v2[1] = q1[1] - r1[1];
          v2[2] = q1[2] - r1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = r2[0] - r1[0];
          v1[1] = r2[1] - r1[1];
          v1[2] = r2[2] - r1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = q2[0] - q1[0];
          v1[1] = q2[1] - q1[1];
          v1[2] = q2[2] - q1[2];
          v2[0] = p1[0] - q1[0];
          v2[1] = p1[1] - q1[1];
          v2[2] = p1[2] - q1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = p2[0] - q1[0];
          v1[1] = p2[1] - q1[1];
          v1[2] = p2[2] - q1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        } else {
          v1[0] = p2[0] - p1[0];
          v1[1] = p2[1] - p1[1];
          v1[2] = p2[2] - p1[2];
          v2[0] = q1[0] - p1[0];
          v2[1] = q1[1] - p1[1];
          v2[2] = q1[2] - p1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = q2[0] - p1[0];
          v1[1] = q2[1] - p1[1];
          v1[2] = q2[2] - p1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = p2[0] - q1[0];
          v1[1] = p2[1] - q1[1];
          v1[2] = p2[2] - q1[2];
          v2[0] = r1[0] - q1[0];
          v2[1] = r1[1] - q1[1];
          v2[2] = r1[2] - q1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = r2[0] - q1[0];
          v1[1] = r2[1] - q1[1];
          v1[2] = r2[2] - q1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        }
      } else {
        if (dq2 < 0.0f) {
          if (dr2 >= 0.0f) {
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            v2[0] = q1[0] - p1[0];
            v2[1] = q1[1] - p1[1];
            v2[2] = q1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            v2[0] = r1[0] - q1[0];
            v2[1] = r1[1] - q1[1];
            v2[2] = r1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else {
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            v2[0] = q1[0] - r1[0];
            v2[1] = q1[1] - r1[1];
            v2[2] = q1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            v2[0] = p1[0] - q1[0];
            v2[1] = p1[1] - q1[1];
            v2[2] = p1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          }
        } else if (dq2 > 0.0f) {
          if (dr2 > 0.0f) {
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            v2[0] = q1[0] - p1[0];
            v2[1] = q1[1] - p1[1];
            v2[2] = q1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            v2[0] = r1[0] - q1[0];
            v2[1] = r1[1] - q1[1];
            v2[2] = r1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else {
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            v2[0] = q1[0] - r1[0];
            v2[1] = q1[1] - r1[1];
            v2[2] = q1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            v2[0] = p1[0] - q1[0];
            v2[1] = p1[1] - q1[1];
            v2[2] = p1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          }
        } else {
          if (dr2 > 0.0f) {
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            v2[0] = q1[0] - r1[0];
            v2[1] = q1[1] - r1[1];
            v2[2] = q1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            v2[0] = p1[0] - q1[0];
            v2[1] = p1[1] - q1[1];
            v2[2] = p1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else if (dr2 < 0.0f) {
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            v2[0] = q1[0] - p1[0];
            v2[1] = q1[1] - p1[1];
            v2[2] = q1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            v2[0] = r1[0] - q1[0];
            v2[1] = r1[1] - q1[1];
            v2[2] = r1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else
            return coplanar_tri_tri3d(q1, r1, p1, p2, q2, r2, N1, N2);
        }
      }
    } else {
      if (dp2 > 0.0f) {
        if (dr2 > 0.0f) {
          v1[0] = q2[0] - r1[0];
          v1[1] = q2[1] - r1[1];
          v1[2] = q2[2] - r1[2];
          v2[0] = p1[0] - r1[0];
          v2[1] = p1[1] - r1[1];
          v2[2] = p1[2] - r1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = p2[0] - r1[0];
          v1[1] = p2[1] - r1[1];
          v1[2] = p2[2] - r1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = q2[0] - p1[0];
          v1[1] = q2[1] - p1[1];
          v1[2] = q2[2] - p1[2];
          v2[0] = q1[0] - p1[0];
          v2[1] = q1[1] - p1[1];
          v2[2] = q1[2] - p1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = r2[0] - p1[0];
          v1[1] = r2[1] - p1[1];
          v1[2] = r2[2] - p1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        } else if (dq2 > 0.0f) {
          v1[0] = r2[0] - r1[0];
          v1[1] = r2[1] - r1[1];
          v1[2] = r2[2] - r1[2];
          v2[0] = p1[0] - r1[0];
          v2[1] = p1[1] - r1[1];
          v2[2] = p1[2] - r1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = q2[0] - r1[0];
          v1[1] = q2[1] - r1[1];
          v1[2] = q2[2] - r1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = r2[0] - p1[0];
          v1[1] = r2[1] - p1[1];
          v1[2] = r2[2] - p1[2];
          v2[0] = q1[0] - p1[0];
          v2[1] = q1[1] - p1[1];
          v2[2] = q1[2] - p1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = p2[0] - p1[0];
          v1[1] = p2[1] - p1[1];
          v1[2] = p2[2] - p1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        } else {
          v1[0] = p2[0] - q1[0];
          v1[1] = p2[1] - q1[1];
          v1[2] = p2[2] - q1[2];
          v2[0] = p1[0] - q1[0];
          v2[1] = p1[1] - q1[1];
          v2[2] = p1[2] - q1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = r2[0] - q1[0];
          v1[1] = r2[1] - q1[1];
          v1[2] = r2[2] - q1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = p2[0] - p1[0];
          v1[1] = p2[1] - p1[1];
          v1[2] = p2[2] - p1[2];
          v2[0] = r1[0] - p1[0];
          v2[1] = r1[1] - p1[1];
          v2[2] = r1[2] - p1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = q2[0] - p1[0];
          v1[1] = q2[1] - p1[1];
          v1[2] = q2[2] - p1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        }
      } else if (dp2 < 0.0f) {
        if (dr2 < 0.0f) {
          v1[0] = q2[0] - q1[0];
          v1[1] = q2[1] - q1[1];
          v1[2] = q2[2] - q1[2];
          v2[0] = p1[0] - q1[0];
          v2[1] = p1[1] - q1[1];
          v2[2] = p1[2] - q1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = p2[0] - q1[0];
          v1[1] = p2[1] - q1[1];
          v1[2] = p2[2] - q1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = q2[0] - p1[0];
          v1[1] = q2[1] - p1[1];
          v1[2] = q2[2] - p1[2];
          v2[0] = r1[0] - p1[0];
          v2[1] = r1[1] - p1[1];
          v2[2] = r1[2] - p1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = r2[0] - p1[0];
          v1[1] = r2[1] - p1[1];
          v1[2] = r2[2] - p1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        } else if (dq2 < 0.0f) {
          v1[0] = r2[0] - q1[0];
          v1[1] = r2[1] - q1[1];
          v1[2] = r2[2] - q1[2];
          v2[0] = p1[0] - q1[0];
          v2[1] = p1[1] - q1[1];
          v2[2] = p1[2] - q1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = q2[0] - q1[0];
          v1[1] = q2[1] - q1[1];
          v1[2] = q2[2] - q1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = r2[0] - p1[0];
          v1[1] = r2[1] - p1[1];
          v1[2] = r2[2] - p1[2];
          v2[0] = r1[0] - p1[0];
          v2[1] = r1[1] - p1[1];
          v2[2] = r1[2] - p1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = p2[0] - p1[0];
          v1[1] = p2[1] - p1[1];
          v1[2] = p2[2] - p1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        } else {
          v1[0] = p2[0] - r1[0];
          v1[1] = p2[1] - r1[1];
          v1[2] = p2[2] - r1[2];
          v2[0] = p1[0] - r1[0];
          v2[1] = p1[1] - r1[1];
          v2[2] = p1[2] - r1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = r2[0] - r1[0];
          v1[1] = r2[1] - r1[1];
          v1[2] = r2[2] - r1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          v1[0] = p2[0] - p1[0];
          v1[1] = p2[1] - p1[1];
          v1[2] = p2[2] - p1[2];
          v2[0] = q1[0] - p1[0];
          v2[1] = q1[1] - p1[1];
          v2[2] = q1[2] - p1[2];
          N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
          N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
          N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
          v1[0] = q2[0] - p1[0];
          v1[1] = q2[1] - p1[1];
          v1[2] = q2[2] - p1[2];
          if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
            return 0;
          else
            return 1;
        }
      } else {
        if (dr2 < 0.0f) {
          if (dq2 >= 0.0f) {
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            v2[0] = p1[0] - r1[0];
            v2[1] = p1[1] - r1[1];
            v2[2] = p1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            v2[0] = q1[0] - p1[0];
            v2[1] = q1[1] - p1[1];
            v2[2] = q1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else {
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            v2[0] = p1[0] - q1[0];
            v2[1] = p1[1] - q1[1];
            v2[2] = p1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            v2[0] = r1[0] - p1[0];
            v2[1] = r1[1] - p1[1];
            v2[2] = r1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          }
        } else if (dr2 > 0.0f) {
          if (dq2 > 0.0f) {
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            v2[0] = p1[0] - r1[0];
            v2[1] = p1[1] - r1[1];
            v2[2] = p1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            v2[0] = q1[0] - p1[0];
            v2[1] = q1[1] - p1[1];
            v2[2] = q1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else {
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            v2[0] = p1[0] - q1[0];
            v2[1] = p1[1] - q1[1];
            v2[2] = p1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            v2[0] = r1[0] - p1[0];
            v2[1] = r1[1] - p1[1];
            v2[2] = r1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          }
        } else {
          if (dq2 > 0.0f) {
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            v2[0] = p1[0] - q1[0];
            v2[1] = p1[1] - q1[1];
            v2[2] = p1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            v2[0] = r1[0] - p1[0];
            v2[1] = r1[1] - p1[1];
            v2[2] = r1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else if (dq2 < 0.0f) {
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            v2[0] = p1[0] - r1[0];
            v2[1] = p1[1] - r1[1];
            v2[2] = p1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            v2[0] = q1[0] - p1[0];
            v2[1] = q1[1] - p1[1];
            v2[2] = q1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else
            return coplanar_tri_tri3d(p1, q1, r1, p2, r2, q2, N1, N2);
        }
      }
    }
  } else {
    if (dq1 < 0.0f) {
      if (dr1 >= 0.0f) {
        if (dp2 > 0.0f) {
          if (dr2 > 0.0f) {
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            v2[0] = q1[0] - p1[0];
            v2[1] = q1[1] - p1[1];
            v2[2] = q1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            v2[0] = r1[0] - q1[0];
            v2[1] = r1[1] - q1[1];
            v2[2] = r1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else if (dq2 > 0.0f) {
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            v2[0] = q1[0] - p1[0];
            v2[1] = q1[1] - p1[1];
            v2[2] = q1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            v2[0] = r1[0] - q1[0];
            v2[1] = r1[1] - q1[1];
            v2[2] = r1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else {
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            v2[0] = q1[0] - r1[0];
            v2[1] = q1[1] - r1[1];
            v2[2] = q1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            v2[0] = p1[0] - q1[0];
            v2[1] = p1[1] - q1[1];
            v2[2] = p1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          }
        } else if (dp2 < 0.0f) {
          if (dr2 < 0.0f) {
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            v2[0] = q1[0] - r1[0];
            v2[1] = q1[1] - r1[1];
            v2[2] = q1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            v2[0] = p1[0] - q1[0];
            v2[1] = p1[1] - q1[1];
            v2[2] = p1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else if (dq2 < 0.0f) {
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            v2[0] = q1[0] - r1[0];
            v2[1] = q1[1] - r1[1];
            v2[2] = q1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            v2[0] = p1[0] - q1[0];
            v2[1] = p1[1] - q1[1];
            v2[2] = p1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else {
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            v2[0] = q1[0] - p1[0];
            v2[1] = q1[1] - p1[1];
            v2[2] = q1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            v2[0] = r1[0] - q1[0];
            v2[1] = r1[1] - q1[1];
            v2[2] = r1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          }
        } else {
          if (dr2 < 0.0f) {
            if (dq2 >= 0.0f) {
              v1[0] = r2[0] - p1[0];
              v1[1] = r2[1] - p1[1];
              v1[2] = r2[2] - p1[2];
              v2[0] = q1[0] - p1[0];
              v2[1] = q1[1] - p1[1];
              v2[2] = q1[2] - p1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = q2[0] - p1[0];
              v1[1] = q2[1] - p1[1];
              v1[2] = q2[2] - p1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = r2[0] - q1[0];
              v1[1] = r2[1] - q1[1];
              v1[2] = r2[2] - q1[2];
              v2[0] = r1[0] - q1[0];
              v2[1] = r1[1] - q1[1];
              v2[2] = r1[2] - q1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = p2[0] - q1[0];
              v1[1] = p2[1] - q1[1];
              v1[2] = p2[2] - q1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            } else {
              v1[0] = p2[0] - r1[0];
              v1[1] = p2[1] - r1[1];
              v1[2] = p2[2] - r1[2];
              v2[0] = q1[0] - r1[0];
              v2[1] = q1[1] - r1[1];
              v2[2] = q1[2] - r1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = r2[0] - r1[0];
              v1[1] = r2[1] - r1[1];
              v1[2] = r2[2] - r1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = p2[0] - q1[0];
              v1[1] = p2[1] - q1[1];
              v1[2] = p2[2] - q1[2];
              v2[0] = p1[0] - q1[0];
              v2[1] = p1[1] - q1[1];
              v2[2] = p1[2] - q1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = q2[0] - q1[0];
              v1[1] = q2[1] - q1[1];
              v1[2] = q2[2] - q1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            }
          } else if (dr2 > 0.0f) {
            if (dq2 > 0.0f) {
              v1[0] = p2[0] - p1[0];
              v1[1] = p2[1] - p1[1];
              v1[2] = p2[2] - p1[2];
              v2[0] = q1[0] - p1[0];
              v2[1] = q1[1] - p1[1];
              v2[2] = q1[2] - p1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = r2[0] - p1[0];
              v1[1] = r2[1] - p1[1];
              v1[2] = r2[2] - p1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = p2[0] - q1[0];
              v1[1] = p2[1] - q1[1];
              v1[2] = p2[2] - q1[2];
              v2[0] = r1[0] - q1[0];
              v2[1] = r1[1] - q1[1];
              v2[2] = r1[2] - q1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = q2[0] - q1[0];
              v1[1] = q2[1] - q1[1];
              v1[2] = q2[2] - q1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            } else {
              v1[0] = r2[0] - r1[0];
              v1[1] = r2[1] - r1[1];
              v1[2] = r2[2] - r1[2];
              v2[0] = q1[0] - r1[0];
              v2[1] = q1[1] - r1[1];
              v2[2] = q1[2] - r1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = q2[0] - r1[0];
              v1[1] = q2[1] - r1[1];
              v1[2] = q2[2] - r1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = r2[0] - q1[0];
              v1[1] = r2[1] - q1[1];
              v1[2] = r2[2] - q1[2];
              v2[0] = p1[0] - q1[0];
              v2[1] = p1[1] - q1[1];
              v2[2] = p1[2] - q1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = p2[0] - q1[0];
              v1[1] = p2[1] - q1[1];
              v1[2] = p2[2] - q1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            }
          } else {
            if (dq2 > 0.0f) {
              v1[0] = q2[0] - r1[0];
              v1[1] = q2[1] - r1[1];
              v1[2] = q2[2] - r1[2];
              v2[0] = q1[0] - r1[0];
              v2[1] = q1[1] - r1[1];
              v2[2] = q1[2] - r1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = p2[0] - r1[0];
              v1[1] = p2[1] - r1[1];
              v1[2] = p2[2] - r1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = q2[0] - q1[0];
              v1[1] = q2[1] - q1[1];
              v1[2] = q2[2] - q1[2];
              v2[0] = p1[0] - q1[0];
              v2[1] = p1[1] - q1[1];
              v2[2] = p1[2] - q1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = r2[0] - q1[0];
              v1[1] = r2[1] - q1[1];
              v1[2] = r2[2] - q1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            } else if (dq2 < 0.0f) {
              v1[0] = q2[0] - p1[0];
              v1[1] = q2[1] - p1[1];
              v1[2] = q2[2] - p1[2];
              v2[0] = q1[0] - p1[0];
              v2[1] = q1[1] - p1[1];
              v2[2] = q1[2] - p1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = p2[0] - p1[0];
              v1[1] = p2[1] - p1[1];
              v1[2] = p2[2] - p1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = q2[0] - q1[0];
              v1[1] = q2[1] - q1[1];
              v1[2] = q2[2] - q1[2];
              v2[0] = r1[0] - q1[0];
              v2[1] = r1[1] - q1[1];
              v2[2] = r1[2] - q1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = r2[0] - q1[0];
              v1[1] = r2[1] - q1[1];
              v1[2] = r2[2] - q1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            } else
              return coplanar_tri_tri3d(q1, r1, p1, p2, r2, q2, N1, N2);
          }
        }
      } else {
        if (dp2 > 0.0f) {
          if (dq2 > 0.0f) {
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            v2[0] = p1[0] - r1[0];
            v2[1] = p1[1] - r1[1];
            v2[2] = p1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            v2[0] = q1[0] - p1[0];
            v2[1] = q1[1] - p1[1];
            v2[2] = q1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else if (dr2 > 0.0f) {
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            v2[0] = p1[0] - r1[0];
            v2[1] = p1[1] - r1[1];
            v2[2] = p1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            v2[0] = q1[0] - p1[0];
            v2[1] = q1[1] - p1[1];
            v2[2] = q1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else {
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            v2[0] = p1[0] - q1[0];
            v2[1] = p1[1] - q1[1];
            v2[2] = p1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            v2[0] = r1[0] - p1[0];
            v2[1] = r1[1] - p1[1];
            v2[2] = r1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          }
        } else if (dp2 < 0.0f) {
          if (dq2 < 0.0f) {
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            v2[0] = p1[0] - q1[0];
            v2[1] = p1[1] - q1[1];
            v2[2] = p1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            v2[0] = r1[0] - p1[0];
            v2[1] = r1[1] - p1[1];
            v2[2] = r1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else if (dr2 < 0.0f) {
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            v2[0] = p1[0] - q1[0];
            v2[1] = p1[1] - q1[1];
            v2[2] = p1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            v2[0] = r1[0] - p1[0];
            v2[1] = r1[1] - p1[1];
            v2[2] = r1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else {
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            v2[0] = p1[0] - r1[0];
            v2[1] = p1[1] - r1[1];
            v2[2] = p1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            v2[0] = q1[0] - p1[0];
            v2[1] = q1[1] - p1[1];
            v2[2] = q1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          }
        } else {
          if (dq2 < 0.0f) {
            if (dr2 >= 0.0f) {
              v1[0] = q2[0] - r1[0];
              v1[1] = q2[1] - r1[1];
              v1[2] = q2[2] - r1[2];
              v2[0] = p1[0] - r1[0];
              v2[1] = p1[1] - r1[1];
              v2[2] = p1[2] - r1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = r2[0] - r1[0];
              v1[1] = r2[1] - r1[1];
              v1[2] = r2[2] - r1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = q2[0] - p1[0];
              v1[1] = q2[1] - p1[1];
              v1[2] = q2[2] - p1[2];
              v2[0] = q1[0] - p1[0];
              v2[1] = q1[1] - p1[1];
              v2[2] = q1[2] - p1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = p2[0] - p1[0];
              v1[1] = p2[1] - p1[1];
              v1[2] = p2[2] - p1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            } else {
              v1[0] = p2[0] - q1[0];
              v1[1] = p2[1] - q1[1];
              v1[2] = p2[2] - q1[2];
              v2[0] = p1[0] - q1[0];
              v2[1] = p1[1] - q1[1];
              v2[2] = p1[2] - q1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = q2[0] - q1[0];
              v1[1] = q2[1] - q1[1];
              v1[2] = q2[2] - q1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = p2[0] - p1[0];
              v1[1] = p2[1] - p1[1];
              v1[2] = p2[2] - p1[2];
              v2[0] = r1[0] - p1[0];
              v2[1] = r1[1] - p1[1];
              v2[2] = r1[2] - p1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = r2[0] - p1[0];
              v1[1] = r2[1] - p1[1];
              v1[2] = r2[2] - p1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            }
          } else if (dq2 > 0.0f) {
            if (dr2 > 0.0f) {
              v1[0] = p2[0] - r1[0];
              v1[1] = p2[1] - r1[1];
              v1[2] = p2[2] - r1[2];
              v2[0] = p1[0] - r1[0];
              v2[1] = p1[1] - r1[1];
              v2[2] = p1[2] - r1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = q2[0] - r1[0];
              v1[1] = q2[1] - r1[1];
              v1[2] = q2[2] - r1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = p2[0] - p1[0];
              v1[1] = p2[1] - p1[1];
              v1[2] = p2[2] - p1[2];
              v2[0] = q1[0] - p1[0];
              v2[1] = q1[1] - p1[1];
              v2[2] = q1[2] - p1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = r2[0] - p1[0];
              v1[1] = r2[1] - p1[1];
              v1[2] = r2[2] - p1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            } else {
              v1[0] = q2[0] - q1[0];
              v1[1] = q2[1] - q1[1];
              v1[2] = q2[2] - q1[2];
              v2[0] = p1[0] - q1[0];
              v2[1] = p1[1] - q1[1];
              v2[2] = p1[2] - q1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = r2[0] - q1[0];
              v1[1] = r2[1] - q1[1];
              v1[2] = r2[2] - q1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = q2[0] - p1[0];
              v1[1] = q2[1] - p1[1];
              v1[2] = q2[2] - p1[2];
              v2[0] = r1[0] - p1[0];
              v2[1] = r1[1] - p1[1];
              v2[2] = r1[2] - p1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = p2[0] - p1[0];
              v1[1] = p2[1] - p1[1];
              v1[2] = p2[2] - p1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            }
          } else {
            if (dr2 > 0.0f) {
              v1[0] = r2[0] - q1[0];
              v1[1] = r2[1] - q1[1];
              v1[2] = r2[2] - q1[2];
              v2[0] = p1[0] - q1[0];
              v2[1] = p1[1] - q1[1];
              v2[2] = p1[2] - q1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = p2[0] - q1[0];
              v1[1] = p2[1] - q1[1];
              v1[2] = p2[2] - q1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = r2[0] - p1[0];
              v1[1] = r2[1] - p1[1];
              v1[2] = r2[2] - p1[2];
              v2[0] = r1[0] - p1[0];
              v2[1] = r1[1] - p1[1];
              v2[2] = r1[2] - p1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = q2[0] - p1[0];
              v1[1] = q2[1] - p1[1];
              v1[2] = q2[2] - p1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            } else if (dr2 < 0.0f) {
              v1[0] = r2[0] - r1[0];
              v1[1] = r2[1] - r1[1];
              v1[2] = r2[2] - r1[2];
              v2[0] = p1[0] - r1[0];
              v2[1] = p1[1] - r1[1];
              v2[2] = p1[2] - r1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = p2[0] - r1[0];
              v1[1] = p2[1] - r1[1];
              v1[2] = p2[2] - r1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = r2[0] - p1[0];
              v1[1] = r2[1] - p1[1];
              v1[2] = r2[2] - p1[2];
              v2[0] = q1[0] - p1[0];
              v2[1] = q1[1] - p1[1];
              v2[2] = q1[2] - p1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = q2[0] - p1[0];
              v1[1] = q2[1] - p1[1];
              v1[2] = q2[2] - p1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            } else
              return coplanar_tri_tri3d(p1, q1, r1, p2, q2, r2, N1, N2);
          }
        }
      }
    } else if (dq1 > 0.0f) {
      if (dr1 > 0.0f) {
        if (dp2 > 0.0f) {
          if (dr2 > 0.0f) {
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            v2[0] = p1[0] - r1[0];
            v2[1] = p1[1] - r1[1];
            v2[2] = p1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            v2[0] = q1[0] - p1[0];
            v2[1] = q1[1] - p1[1];
            v2[2] = q1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else if (dq2 > 0.0f) {
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            v2[0] = p1[0] - r1[0];
            v2[1] = p1[1] - r1[1];
            v2[2] = p1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            v2[0] = q1[0] - p1[0];
            v2[1] = q1[1] - p1[1];
            v2[2] = q1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else {
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            v2[0] = p1[0] - q1[0];
            v2[1] = p1[1] - q1[1];
            v2[2] = p1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            v2[0] = r1[0] - p1[0];
            v2[1] = r1[1] - p1[1];
            v2[2] = r1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          }
        } else if (dp2 < 0.0f) {
          if (dr2 < 0.0f) {
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            v2[0] = p1[0] - q1[0];
            v2[1] = p1[1] - q1[1];
            v2[2] = p1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            v2[0] = r1[0] - p1[0];
            v2[1] = r1[1] - p1[1];
            v2[2] = r1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else if (dq2 < 0.0f) {
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            v2[0] = p1[0] - q1[0];
            v2[1] = p1[1] - q1[1];
            v2[2] = p1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            v2[0] = r1[0] - p1[0];
            v2[1] = r1[1] - p1[1];
            v2[2] = r1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else {
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            v2[0] = p1[0] - r1[0];
            v2[1] = p1[1] - r1[1];
            v2[2] = p1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            v2[0] = q1[0] - p1[0];
            v2[1] = q1[1] - p1[1];
            v2[2] = q1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          }
        } else {
          if (dr2 < 0.0f) {
            if (dq2 >= 0.0f) {
              v1[0] = r2[0] - r1[0];
              v1[1] = r2[1] - r1[1];
              v1[2] = r2[2] - r1[2];
              v2[0] = p1[0] - r1[0];
              v2[1] = p1[1] - r1[1];
              v2[2] = p1[2] - r1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = q2[0] - r1[0];
              v1[1] = q2[1] - r1[1];
              v1[2] = q2[2] - r1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = r2[0] - p1[0];
              v1[1] = r2[1] - p1[1];
              v1[2] = r2[2] - p1[2];
              v2[0] = q1[0] - p1[0];
              v2[1] = q1[1] - p1[1];
              v2[2] = q1[2] - p1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = p2[0] - p1[0];
              v1[1] = p2[1] - p1[1];
              v1[2] = p2[2] - p1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            } else {
              v1[0] = p2[0] - q1[0];
              v1[1] = p2[1] - q1[1];
              v1[2] = p2[2] - q1[2];
              v2[0] = p1[0] - q1[0];
              v2[1] = p1[1] - q1[1];
              v2[2] = p1[2] - q1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = r2[0] - q1[0];
              v1[1] = r2[1] - q1[1];
              v1[2] = r2[2] - q1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = p2[0] - p1[0];
              v1[1] = p2[1] - p1[1];
              v1[2] = p2[2] - p1[2];
              v2[0] = r1[0] - p1[0];
              v2[1] = r1[1] - p1[1];
              v2[2] = r1[2] - p1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = q2[0] - p1[0];
              v1[1] = q2[1] - p1[1];
              v1[2] = q2[2] - p1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            }
          } else if (dr2 > 0.0f) {
            if (dq2 > 0.0f) {
              v1[0] = p2[0] - r1[0];
              v1[1] = p2[1] - r1[1];
              v1[2] = p2[2] - r1[2];
              v2[0] = p1[0] - r1[0];
              v2[1] = p1[1] - r1[1];
              v2[2] = p1[2] - r1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = r2[0] - r1[0];
              v1[1] = r2[1] - r1[1];
              v1[2] = r2[2] - r1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = p2[0] - p1[0];
              v1[1] = p2[1] - p1[1];
              v1[2] = p2[2] - p1[2];
              v2[0] = q1[0] - p1[0];
              v2[1] = q1[1] - p1[1];
              v2[2] = q1[2] - p1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = q2[0] - p1[0];
              v1[1] = q2[1] - p1[1];
              v1[2] = q2[2] - p1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            } else {
              v1[0] = r2[0] - q1[0];
              v1[1] = r2[1] - q1[1];
              v1[2] = r2[2] - q1[2];
              v2[0] = p1[0] - q1[0];
              v2[1] = p1[1] - q1[1];
              v2[2] = p1[2] - q1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = q2[0] - q1[0];
              v1[1] = q2[1] - q1[1];
              v1[2] = q2[2] - q1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = r2[0] - p1[0];
              v1[1] = r2[1] - p1[1];
              v1[2] = r2[2] - p1[2];
              v2[0] = r1[0] - p1[0];
              v2[1] = r1[1] - p1[1];
              v2[2] = r1[2] - p1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = p2[0] - p1[0];
              v1[1] = p2[1] - p1[1];
              v1[2] = p2[2] - p1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            }
          } else {
            if (dq2 > 0.0f) {
              v1[0] = q2[0] - q1[0];
              v1[1] = q2[1] - q1[1];
              v1[2] = q2[2] - q1[2];
              v2[0] = p1[0] - q1[0];
              v2[1] = p1[1] - q1[1];
              v2[2] = p1[2] - q1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = p2[0] - q1[0];
              v1[1] = p2[1] - q1[1];
              v1[2] = p2[2] - q1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = q2[0] - p1[0];
              v1[1] = q2[1] - p1[1];
              v1[2] = q2[2] - p1[2];
              v2[0] = r1[0] - p1[0];
              v2[1] = r1[1] - p1[1];
              v2[2] = r1[2] - p1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = r2[0] - p1[0];
              v1[1] = r2[1] - p1[1];
              v1[2] = r2[2] - p1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            } else if (dq2 < 0.0f) {
              v1[0] = q2[0] - r1[0];
              v1[1] = q2[1] - r1[1];
              v1[2] = q2[2] - r1[2];
              v2[0] = p1[0] - r1[0];
              v2[1] = p1[1] - r1[1];
              v2[2] = p1[2] - r1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = p2[0] - r1[0];
              v1[1] = p2[1] - r1[1];
              v1[2] = p2[2] - r1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = q2[0] - p1[0];
              v1[1] = q2[1] - p1[1];
              v1[2] = q2[2] - p1[2];
              v2[0] = q1[0] - p1[0];
              v2[1] = q1[1] - p1[1];
              v2[2] = q1[2] - p1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = r2[0] - p1[0];
              v1[1] = r2[1] - p1[1];
              v1[2] = r2[2] - p1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            } else
              return coplanar_tri_tri3d(p1, q1, r1, p2, r2, q2, N1, N2);
          }
        }
      } else {
        if (dp2 > 0.0f) {
          if (dq2 > 0.0f) {
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            v2[0] = q1[0] - p1[0];
            v2[1] = q1[1] - p1[1];
            v2[2] = q1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            v2[0] = r1[0] - q1[0];
            v2[1] = r1[1] - q1[1];
            v2[2] = r1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else if (dr2 > 0.0f) {
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            v2[0] = q1[0] - p1[0];
            v2[1] = q1[1] - p1[1];
            v2[2] = q1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            v2[0] = r1[0] - q1[0];
            v2[1] = r1[1] - q1[1];
            v2[2] = r1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else {
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            v2[0] = q1[0] - r1[0];
            v2[1] = q1[1] - r1[1];
            v2[2] = q1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            v2[0] = p1[0] - q1[0];
            v2[1] = p1[1] - q1[1];
            v2[2] = p1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          }
        } else if (dp2 < 0.0f) {
          if (dq2 < 0.0f) {
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            v2[0] = q1[0] - r1[0];
            v2[1] = q1[1] - r1[1];
            v2[2] = q1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            v2[0] = p1[0] - q1[0];
            v2[1] = p1[1] - q1[1];
            v2[2] = p1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else if (dr2 < 0.0f) {
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            v2[0] = q1[0] - r1[0];
            v2[1] = q1[1] - r1[1];
            v2[2] = q1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            v2[0] = p1[0] - q1[0];
            v2[1] = p1[1] - q1[1];
            v2[2] = p1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else {
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            v2[0] = q1[0] - p1[0];
            v2[1] = q1[1] - p1[1];
            v2[2] = q1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            v2[0] = r1[0] - q1[0];
            v2[1] = r1[1] - q1[1];
            v2[2] = r1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          }
        } else {
          if (dq2 < 0.0f) {
            if (dr2 >= 0.0f) {
              v1[0] = q2[0] - p1[0];
              v1[1] = q2[1] - p1[1];
              v1[2] = q2[2] - p1[2];
              v2[0] = q1[0] - p1[0];
              v2[1] = q1[1] - p1[1];
              v2[2] = q1[2] - p1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = r2[0] - p1[0];
              v1[1] = r2[1] - p1[1];
              v1[2] = r2[2] - p1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = q2[0] - q1[0];
              v1[1] = q2[1] - q1[1];
              v1[2] = q2[2] - q1[2];
              v2[0] = r1[0] - q1[0];
              v2[1] = r1[1] - q1[1];
              v2[2] = r1[2] - q1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = p2[0] - q1[0];
              v1[1] = p2[1] - q1[1];
              v1[2] = p2[2] - q1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            } else {
              v1[0] = p2[0] - r1[0];
              v1[1] = p2[1] - r1[1];
              v1[2] = p2[2] - r1[2];
              v2[0] = q1[0] - r1[0];
              v2[1] = q1[1] - r1[1];
              v2[2] = q1[2] - r1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = q2[0] - r1[0];
              v1[1] = q2[1] - r1[1];
              v1[2] = q2[2] - r1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = p2[0] - q1[0];
              v1[1] = p2[1] - q1[1];
              v1[2] = p2[2] - q1[2];
              v2[0] = p1[0] - q1[0];
              v2[1] = p1[1] - q1[1];
              v2[2] = p1[2] - q1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = r2[0] - q1[0];
              v1[1] = r2[1] - q1[1];
              v1[2] = r2[2] - q1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            }
          } else if (dq2 > 0.0f) {
            if (dr2 > 0.0f) {
              v1[0] = p2[0] - p1[0];
              v1[1] = p2[1] - p1[1];
              v1[2] = p2[2] - p1[2];
              v2[0] = q1[0] - p1[0];
              v2[1] = q1[1] - p1[1];
              v2[2] = q1[2] - p1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = q2[0] - p1[0];
              v1[1] = q2[1] - p1[1];
              v1[2] = q2[2] - p1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = p2[0] - q1[0];
              v1[1] = p2[1] - q1[1];
              v1[2] = p2[2] - q1[2];
              v2[0] = r1[0] - q1[0];
              v2[1] = r1[1] - q1[1];
              v2[2] = r1[2] - q1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = r2[0] - q1[0];
              v1[1] = r2[1] - q1[1];
              v1[2] = r2[2] - q1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            } else {
              v1[0] = q2[0] - r1[0];
              v1[1] = q2[1] - r1[1];
              v1[2] = q2[2] - r1[2];
              v2[0] = q1[0] - r1[0];
              v2[1] = q1[1] - r1[1];
              v2[2] = q1[2] - r1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = r2[0] - r1[0];
              v1[1] = r2[1] - r1[1];
              v1[2] = r2[2] - r1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = q2[0] - q1[0];
              v1[1] = q2[1] - q1[1];
              v1[2] = q2[2] - q1[2];
              v2[0] = p1[0] - q1[0];
              v2[1] = p1[1] - q1[1];
              v2[2] = p1[2] - q1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = p2[0] - q1[0];
              v1[1] = p2[1] - q1[1];
              v1[2] = p2[2] - q1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            }
          } else {
            if (dr2 > 0.0f) {
              v1[0] = r2[0] - r1[0];
              v1[1] = r2[1] - r1[1];
              v1[2] = r2[2] - r1[2];
              v2[0] = q1[0] - r1[0];
              v2[1] = q1[1] - r1[1];
              v2[2] = q1[2] - r1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = p2[0] - r1[0];
              v1[1] = p2[1] - r1[1];
              v1[2] = p2[2] - r1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = r2[0] - q1[0];
              v1[1] = r2[1] - q1[1];
              v1[2] = r2[2] - q1[2];
              v2[0] = p1[0] - q1[0];
              v2[1] = p1[1] - q1[1];
              v2[2] = p1[2] - q1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = q2[0] - q1[0];
              v1[1] = q2[1] - q1[1];
              v1[2] = q2[2] - q1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            } else if (dr2 < 0.0f) {
              v1[0] = r2[0] - p1[0];
              v1[1] = r2[1] - p1[1];
              v1[2] = r2[2] - p1[2];
              v2[0] = q1[0] - p1[0];
              v2[1] = q1[1] - p1[1];
              v2[2] = q1[2] - p1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = p2[0] - p1[0];
              v1[1] = p2[1] - p1[1];
              v1[2] = p2[2] - p1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = r2[0] - q1[0];
              v1[1] = r2[1] - q1[1];
              v1[2] = r2[2] - q1[2];
              v2[0] = r1[0] - q1[0];
              v2[1] = r1[1] - q1[1];
              v2[2] = r1[2] - q1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = q2[0] - q1[0];
              v1[1] = q2[1] - q1[1];
              v1[2] = q2[2] - q1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            } else
              return coplanar_tri_tri3d(q1, r1, p1, p2, q2, r2, N1, N2);
          }
        }
      }
    } else {
      if (dr1 > 0.0f) {
        if (dp2 > 0.0f) {
          if (dq2 > 0.0f) {
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            v2[0] = r1[0] - q1[0];
            v2[1] = r1[1] - q1[1];
            v2[2] = r1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            v2[0] = p1[0] - r1[0];
            v2[1] = p1[1] - r1[1];
            v2[2] = p1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else if (dr2 > 0.0f) {
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            v2[0] = r1[0] - q1[0];
            v2[1] = r1[1] - q1[1];
            v2[2] = r1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            v2[0] = p1[0] - r1[0];
            v2[1] = p1[1] - r1[1];
            v2[2] = p1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else {
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            v2[0] = r1[0] - p1[0];
            v2[1] = r1[1] - p1[1];
            v2[2] = r1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            v2[0] = q1[0] - r1[0];
            v2[1] = q1[1] - r1[1];
            v2[2] = q1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          }
        } else if (dp2 < 0.0f) {
          if (dq2 < 0.0f) {
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            v2[0] = r1[0] - p1[0];
            v2[1] = r1[1] - p1[1];
            v2[2] = r1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            v2[0] = q1[0] - r1[0];
            v2[1] = q1[1] - r1[1];
            v2[2] = q1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else if (dr2 < 0.0f) {
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            v2[0] = r1[0] - p1[0];
            v2[1] = r1[1] - p1[1];
            v2[2] = r1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            v2[0] = q1[0] - r1[0];
            v2[1] = q1[1] - r1[1];
            v2[2] = q1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else {
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            v2[0] = r1[0] - q1[0];
            v2[1] = r1[1] - q1[1];
            v2[2] = r1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            v2[0] = p1[0] - r1[0];
            v2[1] = p1[1] - r1[1];
            v2[2] = p1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          }
        } else {
          if (dq2 < 0.0f) {
            if (dr2 >= 0.0f) {
              v1[0] = q2[0] - q1[0];
              v1[1] = q2[1] - q1[1];
              v1[2] = q2[2] - q1[2];
              v2[0] = r1[0] - q1[0];
              v2[1] = r1[1] - q1[1];
              v2[2] = r1[2] - q1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = r2[0] - q1[0];
              v1[1] = r2[1] - q1[1];
              v1[2] = r2[2] - q1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = q2[0] - r1[0];
              v1[1] = q2[1] - r1[1];
              v1[2] = q2[2] - r1[2];
              v2[0] = p1[0] - r1[0];
              v2[1] = p1[1] - r1[1];
              v2[2] = p1[2] - r1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = p2[0] - r1[0];
              v1[1] = p2[1] - r1[1];
              v1[2] = p2[2] - r1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            } else {
              v1[0] = p2[0] - p1[0];
              v1[1] = p2[1] - p1[1];
              v1[2] = p2[2] - p1[2];
              v2[0] = r1[0] - p1[0];
              v2[1] = r1[1] - p1[1];
              v2[2] = r1[2] - p1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = q2[0] - p1[0];
              v1[1] = q2[1] - p1[1];
              v1[2] = q2[2] - p1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = p2[0] - r1[0];
              v1[1] = p2[1] - r1[1];
              v1[2] = p2[2] - r1[2];
              v2[0] = q1[0] - r1[0];
              v2[1] = q1[1] - r1[1];
              v2[2] = q1[2] - r1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = r2[0] - r1[0];
              v1[1] = r2[1] - r1[1];
              v1[2] = r2[2] - r1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            }
          } else if (dq2 > 0.0f) {
            if (dr2 > 0.0f) {
              v1[0] = p2[0] - q1[0];
              v1[1] = p2[1] - q1[1];
              v1[2] = p2[2] - q1[2];
              v2[0] = r1[0] - q1[0];
              v2[1] = r1[1] - q1[1];
              v2[2] = r1[2] - q1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = q2[0] - q1[0];
              v1[1] = q2[1] - q1[1];
              v1[2] = q2[2] - q1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = p2[0] - r1[0];
              v1[1] = p2[1] - r1[1];
              v1[2] = p2[2] - r1[2];
              v2[0] = p1[0] - r1[0];
              v2[1] = p1[1] - r1[1];
              v2[2] = p1[2] - r1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = r2[0] - r1[0];
              v1[1] = r2[1] - r1[1];
              v1[2] = r2[2] - r1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            } else {
              v1[0] = q2[0] - p1[0];
              v1[1] = q2[1] - p1[1];
              v1[2] = q2[2] - p1[2];
              v2[0] = r1[0] - p1[0];
              v2[1] = r1[1] - p1[1];
              v2[2] = r1[2] - p1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = r2[0] - p1[0];
              v1[1] = r2[1] - p1[1];
              v1[2] = r2[2] - p1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = q2[0] - r1[0];
              v1[1] = q2[1] - r1[1];
              v1[2] = q2[2] - r1[2];
              v2[0] = q1[0] - r1[0];
              v2[1] = q1[1] - r1[1];
              v2[2] = q1[2] - r1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = p2[0] - r1[0];
              v1[1] = p2[1] - r1[1];
              v1[2] = p2[2] - r1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            }
          } else {
            if (dr2 > 0.0f) {
              v1[0] = r2[0] - p1[0];
              v1[1] = r2[1] - p1[1];
              v1[2] = r2[2] - p1[2];
              v2[0] = r1[0] - p1[0];
              v2[1] = r1[1] - p1[1];
              v2[2] = r1[2] - p1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = p2[0] - p1[0];
              v1[1] = p2[1] - p1[1];
              v1[2] = p2[2] - p1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = r2[0] - r1[0];
              v1[1] = r2[1] - r1[1];
              v1[2] = r2[2] - r1[2];
              v2[0] = q1[0] - r1[0];
              v2[1] = q1[1] - r1[1];
              v2[2] = q1[2] - r1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = q2[0] - r1[0];
              v1[1] = q2[1] - r1[1];
              v1[2] = q2[2] - r1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            } else if (dr2 < 0.0f) {
              v1[0] = r2[0] - q1[0];
              v1[1] = r2[1] - q1[1];
              v1[2] = r2[2] - q1[2];
              v2[0] = r1[0] - q1[0];
              v2[1] = r1[1] - q1[1];
              v2[2] = r1[2] - q1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = p2[0] - q1[0];
              v1[1] = p2[1] - q1[1];
              v1[2] = p2[2] - q1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = r2[0] - r1[0];
              v1[1] = r2[1] - r1[1];
              v1[2] = r2[2] - r1[2];
              v2[0] = p1[0] - r1[0];
              v2[1] = p1[1] - r1[1];
              v2[2] = p1[2] - r1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = q2[0] - r1[0];
              v1[1] = q2[1] - r1[1];
              v1[2] = q2[2] - r1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            } else
              return coplanar_tri_tri3d(r1, p1, q1, p2, q2, r2, N1, N2);
          }
        }
      } else if (dr1 < 0.0f) {
        if (dp2 > 0.0f) {
          if (dr2 > 0.0f) {
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            v2[0] = r1[0] - q1[0];
            v2[1] = r1[1] - q1[1];
            v2[2] = r1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            v2[0] = p1[0] - r1[0];
            v2[1] = p1[1] - r1[1];
            v2[2] = p1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else if (dq2 > 0.0f) {
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            v2[0] = r1[0] - q1[0];
            v2[1] = r1[1] - q1[1];
            v2[2] = r1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - q1[0];
            v1[1] = q2[1] - q1[1];
            v1[2] = q2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            v2[0] = p1[0] - r1[0];
            v2[1] = p1[1] - r1[1];
            v2[2] = p1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else {
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            v2[0] = r1[0] - p1[0];
            v2[1] = r1[1] - p1[1];
            v2[2] = r1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            v2[0] = q1[0] - r1[0];
            v2[1] = q1[1] - r1[1];
            v2[2] = q1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          }
        } else if (dp2 < 0.0f) {
          if (dr2 < 0.0f) {
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            v2[0] = r1[0] - p1[0];
            v2[1] = r1[1] - p1[1];
            v2[2] = r1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - p1[0];
            v1[1] = p2[1] - p1[1];
            v1[2] = p2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            v2[0] = q1[0] - r1[0];
            v2[1] = q1[1] - r1[1];
            v2[2] = q1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else if (dq2 < 0.0f) {
            v1[0] = r2[0] - p1[0];
            v1[1] = r2[1] - p1[1];
            v1[2] = r2[2] - p1[2];
            v2[0] = r1[0] - p1[0];
            v2[1] = r1[1] - p1[1];
            v2[2] = r1[2] - p1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - p1[0];
            v1[1] = q2[1] - p1[1];
            v1[2] = q2[2] - p1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = r2[0] - r1[0];
            v1[1] = r2[1] - r1[1];
            v1[2] = r2[2] - r1[2];
            v2[0] = q1[0] - r1[0];
            v2[1] = q1[1] - r1[1];
            v2[2] = q1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          } else {
            v1[0] = p2[0] - q1[0];
            v1[1] = p2[1] - q1[1];
            v1[2] = p2[2] - q1[2];
            v2[0] = r1[0] - q1[0];
            v2[1] = r1[1] - q1[1];
            v2[2] = r1[2] - q1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = r2[0] - q1[0];
            v1[1] = r2[1] - q1[1];
            v1[2] = r2[2] - q1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            v1[0] = p2[0] - r1[0];
            v1[1] = p2[1] - r1[1];
            v1[2] = p2[2] - r1[2];
            v2[0] = p1[0] - r1[0];
            v2[1] = p1[1] - r1[1];
            v2[2] = p1[2] - r1[2];
            N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
            N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
            N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
            v1[0] = q2[0] - r1[0];
            v1[1] = q2[1] - r1[1];
            v1[2] = q2[2] - r1[2];
            if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
              return 0;
            else
              return 1;
          }
        } else {
          if (dr2 < 0.0f) {
            if (dq2 >= 0.0f) {
              v1[0] = r2[0] - q1[0];
              v1[1] = r2[1] - q1[1];
              v1[2] = r2[2] - q1[2];
              v2[0] = r1[0] - q1[0];
              v2[1] = r1[1] - q1[1];
              v2[2] = r1[2] - q1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = q2[0] - q1[0];
              v1[1] = q2[1] - q1[1];
              v1[2] = q2[2] - q1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = r2[0] - r1[0];
              v1[1] = r2[1] - r1[1];
              v1[2] = r2[2] - r1[2];
              v2[0] = p1[0] - r1[0];
              v2[1] = p1[1] - r1[1];
              v2[2] = p1[2] - r1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = p2[0] - r1[0];
              v1[1] = p2[1] - r1[1];
              v1[2] = p2[2] - r1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            } else {
              v1[0] = p2[0] - p1[0];
              v1[1] = p2[1] - p1[1];
              v1[2] = p2[2] - p1[2];
              v2[0] = r1[0] - p1[0];
              v2[1] = r1[1] - p1[1];
              v2[2] = r1[2] - p1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = r2[0] - p1[0];
              v1[1] = r2[1] - p1[1];
              v1[2] = r2[2] - p1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = p2[0] - r1[0];
              v1[1] = p2[1] - r1[1];
              v1[2] = p2[2] - r1[2];
              v2[0] = q1[0] - r1[0];
              v2[1] = q1[1] - r1[1];
              v2[2] = q1[2] - r1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = q2[0] - r1[0];
              v1[1] = q2[1] - r1[1];
              v1[2] = q2[2] - r1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            }
          } else if (dr2 > 0.0f) {
            if (dq2 > 0.0f) {
              v1[0] = p2[0] - q1[0];
              v1[1] = p2[1] - q1[1];
              v1[2] = p2[2] - q1[2];
              v2[0] = r1[0] - q1[0];
              v2[1] = r1[1] - q1[1];
              v2[2] = r1[2] - q1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = r2[0] - q1[0];
              v1[1] = r2[1] - q1[1];
              v1[2] = r2[2] - q1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = p2[0] - r1[0];
              v1[1] = p2[1] - r1[1];
              v1[2] = p2[2] - r1[2];
              v2[0] = p1[0] - r1[0];
              v2[1] = p1[1] - r1[1];
              v2[2] = p1[2] - r1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = q2[0] - r1[0];
              v1[1] = q2[1] - r1[1];
              v1[2] = q2[2] - r1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            } else {
              v1[0] = r2[0] - p1[0];
              v1[1] = r2[1] - p1[1];
              v1[2] = r2[2] - p1[2];
              v2[0] = r1[0] - p1[0];
              v2[1] = r1[1] - p1[1];
              v2[2] = r1[2] - p1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = q2[0] - p1[0];
              v1[1] = q2[1] - p1[1];
              v1[2] = q2[2] - p1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = r2[0] - r1[0];
              v1[1] = r2[1] - r1[1];
              v1[2] = r2[2] - r1[2];
              v2[0] = q1[0] - r1[0];
              v2[1] = q1[1] - r1[1];
              v2[2] = q1[2] - r1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = p2[0] - r1[0];
              v1[1] = p2[1] - r1[1];
              v1[2] = p2[2] - r1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            }
          } else {
            if (dq2 > 0.0f) {
              v1[0] = q2[0] - p1[0];
              v1[1] = q2[1] - p1[1];
              v1[2] = q2[2] - p1[2];
              v2[0] = r1[0] - p1[0];
              v2[1] = r1[1] - p1[1];
              v2[2] = r1[2] - p1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = p2[0] - p1[0];
              v1[1] = p2[1] - p1[1];
              v1[2] = p2[2] - p1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = q2[0] - r1[0];
              v1[1] = q2[1] - r1[1];
              v1[2] = q2[2] - r1[2];
              v2[0] = q1[0] - r1[0];
              v2[1] = q1[1] - r1[1];
              v2[2] = q1[2] - r1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = r2[0] - r1[0];
              v1[1] = r2[1] - r1[1];
              v1[2] = r2[2] - r1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            } else if (dq2 < 0.0f) {
              v1[0] = q2[0] - q1[0];
              v1[1] = q2[1] - q1[1];
              v1[2] = q2[2] - q1[2];
              v2[0] = r1[0] - q1[0];
              v2[1] = r1[1] - q1[1];
              v2[2] = r1[2] - q1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = p2[0] - q1[0];
              v1[1] = p2[1] - q1[1];
              v1[2] = p2[2] - q1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              v1[0] = q2[0] - r1[0];
              v1[1] = q2[1] - r1[1];
              v1[2] = q2[2] - r1[2];
              v2[0] = p1[0] - r1[0];
              v2[1] = p1[1] - r1[1];
              v2[2] = p1[2] - r1[2];
              N1[0] = v1[1] * v2[2] - v1[2] * v2[1];
              N1[1] = v1[2] * v2[0] - v1[0] * v2[2];
              N1[2] = v1[0] * v2[1] - v1[1] * v2[0];
              v1[0] = r2[0] - r1[0];
              v1[1] = r2[1] - r1[1];
              v1[2] = r2[2] - r1[2];
              if ((v1[0] * N1[0] + v1[1] * N1[1] + v1[2] * N1[2]) > 0.0f)
                return 0;
              else
                return 1;
            } else
              return coplanar_tri_tri3d(r1, p1, q1, p2, r2, q2, N1, N2);
          }
        }
      } else
        return coplanar_tri_tri3d(p1, q1, r1, p2, q2, r2, N1, N2);
    }
  }
}


x86 assembly (clang, -O0):
<tri_tri_overlap_test_3d>:
push   %rbp
mov    %rsp,%rbp
sub    $0x90,%rsp
mov    %rdi,-0x10(%rbp)
mov    %rsi,-0x18(%rbp)
mov    %rdx,-0x20(%rbp)
mov    %rcx,-0x28(%rbp)
mov    %r8,-0x30(%rbp)
mov    %r9,-0x38(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x38(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x38(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x38(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x38(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x38(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x38(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x80(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x7c(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x78(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x38(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x38(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x38(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x80(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x7c(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x78(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x3c(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x38(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x38(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x38(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x80(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x7c(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x78(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x40(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x38(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x38(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x38(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x80(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x7c(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x78(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x44(%rbp)
movss  -0x3c(%rbp),%xmm0
mulss  -0x40(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    13dd <tri_tri_overlap_test_3d+0x2cd>
movss  -0x3c(%rbp),%xmm0
mulss  -0x44(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    13dd <tri_tri_overlap_test_3d+0x2cd>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x48(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x4c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x50(%rbp)
movss  -0x48(%rbp),%xmm0
mulss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1687 <tri_tri_overlap_test_3d+0x577>
movss  -0x48(%rbp),%xmm0
mulss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1687 <tri_tri_overlap_test_3d+0x577>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x3c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    8e42 <tri_tri_overlap_test_3d+0x7d32>
movss  -0x40(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    3e81 <tri_tri_overlap_test_3d+0x2d71>
movss  -0x48(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    2096 <tri_tri_overlap_test_3d+0xf86>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1a09 <tri_tri_overlap_test_3d+0x8f9>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1864 <tri_tri_overlap_test_3d+0x754>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    19fd <tri_tri_overlap_test_3d+0x8ed>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1d58 <tri_tri_overlap_test_3d+0xc48>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1bb3 <tri_tri_overlap_test_3d+0xaa3>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1d4c <tri_tri_overlap_test_3d+0xc3c>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1ef1 <tri_tri_overlap_test_3d+0xde1>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    208a <tri_tri_overlap_test_3d+0xf7a>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x48(%rbp),%xmm0
jbe    2a77 <tri_tri_overlap_test_3d+0x1967>
xorps  %xmm0,%xmm0
ucomiss -0x50(%rbp),%xmm0
jbe    23ee <tri_tri_overlap_test_3d+0x12de>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    2249 <tri_tri_overlap_test_3d+0x1139>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    23e2 <tri_tri_overlap_test_3d+0x12d2>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x4c(%rbp),%xmm0
jbe    2739 <tri_tri_overlap_test_3d+0x1629>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    2594 <tri_tri_overlap_test_3d+0x1484>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    272d <tri_tri_overlap_test_3d+0x161d>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    28d2 <tri_tri_overlap_test_3d+0x17c2>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    2a6b <tri_tri_overlap_test_3d+0x195b>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x50(%rbp),%xmm0
jbe    3111 <tri_tri_overlap_test_3d+0x2001>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jb     2dd3 <tri_tri_overlap_test_3d+0x1cc3>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    2c2e <tri_tri_overlap_test_3d+0x1b1e>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    2dc7 <tri_tri_overlap_test_3d+0x1cb7>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    2f6c <tri_tri_overlap_test_3d+0x1e5c>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    3105 <tri_tri_overlap_test_3d+0x1ff5>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    37af <tri_tri_overlap_test_3d+0x269f>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    3471 <tri_tri_overlap_test_3d+0x2361>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    32cc <tri_tri_overlap_test_3d+0x21bc>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    3465 <tri_tri_overlap_test_3d+0x2355>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    360a <tri_tri_overlap_test_3d+0x24fa>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    37a3 <tri_tri_overlap_test_3d+0x2693>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    3afe <tri_tri_overlap_test_3d+0x29ee>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    3959 <tri_tri_overlap_test_3d+0x2849>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    3af2 <tri_tri_overlap_test_3d+0x29e2>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x4c(%rbp),%xmm0
jbe    3e49 <tri_tri_overlap_test_3d+0x2d39>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    3ca4 <tri_tri_overlap_test_3d+0x2b94>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    3e3d <tri_tri_overlap_test_3d+0x2d2d>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x20(%rbp),%rdi
mov    -0x10(%rbp),%rsi
mov    -0x18(%rbp),%rdx
mov    -0x28(%rbp),%rcx
mov    -0x38(%rbp),%r8
mov    -0x30(%rbp),%r9
lea    -0x74(%rbp),%r10
lea    -0x80(%rbp),%rax
mov    %r10,(%rsp)
mov    %rax,0x8(%rsp)
mov    $0x0,%al
call   1030 <coplanar_tri_tri3d@plt>
mov    %eax,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x44(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    666a <tri_tri_overlap_test_3d+0x555a>
movss  -0x48(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    487f <tri_tri_overlap_test_3d+0x376f>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    41f2 <tri_tri_overlap_test_3d+0x30e2>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    404d <tri_tri_overlap_test_3d+0x2f3d>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    41e6 <tri_tri_overlap_test_3d+0x30d6>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    4541 <tri_tri_overlap_test_3d+0x3431>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    439c <tri_tri_overlap_test_3d+0x328c>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    4535 <tri_tri_overlap_test_3d+0x3425>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    46da <tri_tri_overlap_test_3d+0x35ca>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    4873 <tri_tri_overlap_test_3d+0x3763>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x48(%rbp),%xmm0
jbe    5260 <tri_tri_overlap_test_3d+0x4150>
xorps  %xmm0,%xmm0
ucomiss -0x50(%rbp),%xmm0
jbe    4bd7 <tri_tri_overlap_test_3d+0x3ac7>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    4a32 <tri_tri_overlap_test_3d+0x3922>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    4bcb <tri_tri_overlap_test_3d+0x3abb>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x4c(%rbp),%xmm0
jbe    4f22 <tri_tri_overlap_test_3d+0x3e12>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    4d7d <tri_tri_overlap_test_3d+0x3c6d>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    4f16 <tri_tri_overlap_test_3d+0x3e06>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    50bb <tri_tri_overlap_test_3d+0x3fab>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    5254 <tri_tri_overlap_test_3d+0x4144>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x50(%rbp),%xmm0
jbe    58fa <tri_tri_overlap_test_3d+0x47ea>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jb     55bc <tri_tri_overlap_test_3d+0x44ac>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    5417 <tri_tri_overlap_test_3d+0x4307>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    55b0 <tri_tri_overlap_test_3d+0x44a0>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    5755 <tri_tri_overlap_test_3d+0x4645>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    58ee <tri_tri_overlap_test_3d+0x47de>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    5f98 <tri_tri_overlap_test_3d+0x4e88>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    5c5a <tri_tri_overlap_test_3d+0x4b4a>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    5ab5 <tri_tri_overlap_test_3d+0x49a5>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    5c4e <tri_tri_overlap_test_3d+0x4b3e>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    5df3 <tri_tri_overlap_test_3d+0x4ce3>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    5f8c <tri_tri_overlap_test_3d+0x4e7c>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    62e7 <tri_tri_overlap_test_3d+0x51d7>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    6142 <tri_tri_overlap_test_3d+0x5032>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    62db <tri_tri_overlap_test_3d+0x51cb>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x4c(%rbp),%xmm0
jbe    6632 <tri_tri_overlap_test_3d+0x5522>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    648d <tri_tri_overlap_test_3d+0x537d>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    6626 <tri_tri_overlap_test_3d+0x5516>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x18(%rbp),%rdi
mov    -0x20(%rbp),%rsi
mov    -0x10(%rbp),%rdx
mov    -0x28(%rbp),%rcx
mov    -0x38(%rbp),%r8
mov    -0x30(%rbp),%r9
lea    -0x74(%rbp),%r10
lea    -0x80(%rbp),%rax
mov    %r10,(%rsp)
mov    %rax,0x8(%rsp)
mov    $0x0,%al
call   1030 <coplanar_tri_tri3d@plt>
mov    %eax,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x48(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    7057 <tri_tri_overlap_test_3d+0x5f47>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    69ca <tri_tri_overlap_test_3d+0x58ba>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    6825 <tri_tri_overlap_test_3d+0x5715>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    69be <tri_tri_overlap_test_3d+0x58ae>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    6d19 <tri_tri_overlap_test_3d+0x5c09>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    6b74 <tri_tri_overlap_test_3d+0x5a64>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    6d0d <tri_tri_overlap_test_3d+0x5bfd>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    6eb2 <tri_tri_overlap_test_3d+0x5da2>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    704b <tri_tri_overlap_test_3d+0x5f3b>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x48(%rbp),%xmm0
jbe    7a38 <tri_tri_overlap_test_3d+0x6928>
xorps  %xmm0,%xmm0
ucomiss -0x4c(%rbp),%xmm0
jbe    73af <tri_tri_overlap_test_3d+0x629f>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    720a <tri_tri_overlap_test_3d+0x60fa>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    73a3 <tri_tri_overlap_test_3d+0x6293>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x50(%rbp),%xmm0
jbe    76fa <tri_tri_overlap_test_3d+0x65ea>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    7555 <tri_tri_overlap_test_3d+0x6445>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    76ee <tri_tri_overlap_test_3d+0x65de>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    7893 <tri_tri_overlap_test_3d+0x6783>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    7a2c <tri_tri_overlap_test_3d+0x691c>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x4c(%rbp),%xmm0
jbe    80d2 <tri_tri_overlap_test_3d+0x6fc2>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jb     7d94 <tri_tri_overlap_test_3d+0x6c84>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    7bef <tri_tri_overlap_test_3d+0x6adf>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    7d88 <tri_tri_overlap_test_3d+0x6c78>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    7f2d <tri_tri_overlap_test_3d+0x6e1d>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    80c6 <tri_tri_overlap_test_3d+0x6fb6>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    8770 <tri_tri_overlap_test_3d+0x7660>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    8432 <tri_tri_overlap_test_3d+0x7322>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    828d <tri_tri_overlap_test_3d+0x717d>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    8426 <tri_tri_overlap_test_3d+0x7316>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    85cb <tri_tri_overlap_test_3d+0x74bb>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    8764 <tri_tri_overlap_test_3d+0x7654>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    8abf <tri_tri_overlap_test_3d+0x79af>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    891a <tri_tri_overlap_test_3d+0x780a>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    8ab3 <tri_tri_overlap_test_3d+0x79a3>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x50(%rbp),%xmm0
jbe    8e0a <tri_tri_overlap_test_3d+0x7cfa>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    8c65 <tri_tri_overlap_test_3d+0x7b55>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    8dfe <tri_tri_overlap_test_3d+0x7cee>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x10(%rbp),%rdi
mov    -0x18(%rbp),%rsi
mov    -0x20(%rbp),%rdx
mov    -0x28(%rbp),%rcx
mov    -0x30(%rbp),%r8
mov    -0x38(%rbp),%r9
lea    -0x74(%rbp),%r10
lea    -0x80(%rbp),%rax
mov    %r10,(%rsp)
mov    %rax,0x8(%rsp)
mov    $0x0,%al
call   1030 <coplanar_tri_tri3d@plt>
mov    %eax,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x3c(%rbp),%xmm0
jbe    105f1 <tri_tri_overlap_test_3d+0xf4e1>
xorps  %xmm0,%xmm0
ucomiss -0x40(%rbp),%xmm0
jbe    b634 <tri_tri_overlap_test_3d+0xa524>
movss  -0x48(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    9849 <tri_tri_overlap_test_3d+0x8739>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    91bc <tri_tri_overlap_test_3d+0x80ac>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    9017 <tri_tri_overlap_test_3d+0x7f07>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    91b0 <tri_tri_overlap_test_3d+0x80a0>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    950b <tri_tri_overlap_test_3d+0x83fb>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    9366 <tri_tri_overlap_test_3d+0x8256>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    94ff <tri_tri_overlap_test_3d+0x83ef>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    96a4 <tri_tri_overlap_test_3d+0x8594>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    983d <tri_tri_overlap_test_3d+0x872d>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x48(%rbp),%xmm0
jbe    a22a <tri_tri_overlap_test_3d+0x911a>
xorps  %xmm0,%xmm0
ucomiss -0x4c(%rbp),%xmm0
jbe    9ba1 <tri_tri_overlap_test_3d+0x8a91>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    99fc <tri_tri_overlap_test_3d+0x88ec>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    9b95 <tri_tri_overlap_test_3d+0x8a85>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x50(%rbp),%xmm0
jbe    9eec <tri_tri_overlap_test_3d+0x8ddc>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    9d47 <tri_tri_overlap_test_3d+0x8c37>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    9ee0 <tri_tri_overlap_test_3d+0x8dd0>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    a085 <tri_tri_overlap_test_3d+0x8f75>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    a21e <tri_tri_overlap_test_3d+0x910e>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x4c(%rbp),%xmm0
jbe    a8c4 <tri_tri_overlap_test_3d+0x97b4>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jb     a586 <tri_tri_overlap_test_3d+0x9476>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    a3e1 <tri_tri_overlap_test_3d+0x92d1>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    a57a <tri_tri_overlap_test_3d+0x946a>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    a71f <tri_tri_overlap_test_3d+0x960f>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    a8b8 <tri_tri_overlap_test_3d+0x97a8>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    af62 <tri_tri_overlap_test_3d+0x9e52>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    ac24 <tri_tri_overlap_test_3d+0x9b14>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    aa7f <tri_tri_overlap_test_3d+0x996f>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    ac18 <tri_tri_overlap_test_3d+0x9b08>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    adbd <tri_tri_overlap_test_3d+0x9cad>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    af56 <tri_tri_overlap_test_3d+0x9e46>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    b2b1 <tri_tri_overlap_test_3d+0xa1a1>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    b10c <tri_tri_overlap_test_3d+0x9ffc>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    b2a5 <tri_tri_overlap_test_3d+0xa195>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x50(%rbp),%xmm0
jbe    b5fc <tri_tri_overlap_test_3d+0xa4ec>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    b457 <tri_tri_overlap_test_3d+0xa347>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    b5f0 <tri_tri_overlap_test_3d+0xa4e0>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x20(%rbp),%rdi
mov    -0x10(%rbp),%rsi
mov    -0x18(%rbp),%rdx
mov    -0x28(%rbp),%rcx
mov    -0x30(%rbp),%r8
mov    -0x38(%rbp),%r9
lea    -0x74(%rbp),%r10
lea    -0x80(%rbp),%rax
mov    %r10,(%rsp)
mov    %rax,0x8(%rsp)
mov    $0x0,%al
call   1030 <coplanar_tri_tri3d@plt>
mov    %eax,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x44(%rbp),%xmm0
jbe    de19 <tri_tri_overlap_test_3d+0xcd09>
movss  -0x48(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    c02e <tri_tri_overlap_test_3d+0xaf1e>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    b9a1 <tri_tri_overlap_test_3d+0xa891>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    b7fc <tri_tri_overlap_test_3d+0xa6ec>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    b995 <tri_tri_overlap_test_3d+0xa885>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    bcf0 <tri_tri_overlap_test_3d+0xabe0>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    bb4b <tri_tri_overlap_test_3d+0xaa3b>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    bce4 <tri_tri_overlap_test_3d+0xabd4>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    be89 <tri_tri_overlap_test_3d+0xad79>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    c022 <tri_tri_overlap_test_3d+0xaf12>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x48(%rbp),%xmm0
jbe    ca0f <tri_tri_overlap_test_3d+0xb8ff>
xorps  %xmm0,%xmm0
ucomiss -0x4c(%rbp),%xmm0
jbe    c386 <tri_tri_overlap_test_3d+0xb276>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    c1e1 <tri_tri_overlap_test_3d+0xb0d1>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    c37a <tri_tri_overlap_test_3d+0xb26a>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x50(%rbp),%xmm0
jbe    c6d1 <tri_tri_overlap_test_3d+0xb5c1>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    c52c <tri_tri_overlap_test_3d+0xb41c>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    c6c5 <tri_tri_overlap_test_3d+0xb5b5>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    c86a <tri_tri_overlap_test_3d+0xb75a>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    ca03 <tri_tri_overlap_test_3d+0xb8f3>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x4c(%rbp),%xmm0
jbe    d0a9 <tri_tri_overlap_test_3d+0xbf99>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jb     cd6b <tri_tri_overlap_test_3d+0xbc5b>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    cbc6 <tri_tri_overlap_test_3d+0xbab6>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    cd5f <tri_tri_overlap_test_3d+0xbc4f>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    cf04 <tri_tri_overlap_test_3d+0xbdf4>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    d09d <tri_tri_overlap_test_3d+0xbf8d>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    d747 <tri_tri_overlap_test_3d+0xc637>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    d409 <tri_tri_overlap_test_3d+0xc2f9>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    d264 <tri_tri_overlap_test_3d+0xc154>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    d3fd <tri_tri_overlap_test_3d+0xc2ed>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    d5a2 <tri_tri_overlap_test_3d+0xc492>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    d73b <tri_tri_overlap_test_3d+0xc62b>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    da96 <tri_tri_overlap_test_3d+0xc986>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    d8f1 <tri_tri_overlap_test_3d+0xc7e1>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    da8a <tri_tri_overlap_test_3d+0xc97a>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x50(%rbp),%xmm0
jbe    dde1 <tri_tri_overlap_test_3d+0xccd1>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    dc3c <tri_tri_overlap_test_3d+0xcb2c>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    ddd5 <tri_tri_overlap_test_3d+0xccc5>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x18(%rbp),%rdi
mov    -0x20(%rbp),%rsi
mov    -0x10(%rbp),%rdx
mov    -0x28(%rbp),%rcx
mov    -0x30(%rbp),%r8
mov    -0x38(%rbp),%r9
lea    -0x74(%rbp),%r10
lea    -0x80(%rbp),%rax
mov    %r10,(%rsp)
mov    %rax,0x8(%rsp)
mov    $0x0,%al
call   1030 <coplanar_tri_tri3d@plt>
mov    %eax,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x48(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    e806 <tri_tri_overlap_test_3d+0xd6f6>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    e179 <tri_tri_overlap_test_3d+0xd069>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    dfd4 <tri_tri_overlap_test_3d+0xcec4>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    e16d <tri_tri_overlap_test_3d+0xd05d>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    e4c8 <tri_tri_overlap_test_3d+0xd3b8>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    e323 <tri_tri_overlap_test_3d+0xd213>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    e4bc <tri_tri_overlap_test_3d+0xd3ac>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    e661 <tri_tri_overlap_test_3d+0xd551>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    e7fa <tri_tri_overlap_test_3d+0xd6ea>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x48(%rbp),%xmm0
jbe    f1e7 <tri_tri_overlap_test_3d+0xe0d7>
xorps  %xmm0,%xmm0
ucomiss -0x50(%rbp),%xmm0
jbe    eb5e <tri_tri_overlap_test_3d+0xda4e>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    e9b9 <tri_tri_overlap_test_3d+0xd8a9>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    eb52 <tri_tri_overlap_test_3d+0xda42>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x4c(%rbp),%xmm0
jbe    eea9 <tri_tri_overlap_test_3d+0xdd99>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    ed04 <tri_tri_overlap_test_3d+0xdbf4>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    ee9d <tri_tri_overlap_test_3d+0xdd8d>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    f042 <tri_tri_overlap_test_3d+0xdf32>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    f1db <tri_tri_overlap_test_3d+0xe0cb>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x50(%rbp),%xmm0
jbe    f881 <tri_tri_overlap_test_3d+0xe771>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jb     f543 <tri_tri_overlap_test_3d+0xe433>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    f39e <tri_tri_overlap_test_3d+0xe28e>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    f537 <tri_tri_overlap_test_3d+0xe427>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    f6dc <tri_tri_overlap_test_3d+0xe5cc>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    f875 <tri_tri_overlap_test_3d+0xe765>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    ff1f <tri_tri_overlap_test_3d+0xee0f>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    fbe1 <tri_tri_overlap_test_3d+0xead1>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    fa3c <tri_tri_overlap_test_3d+0xe92c>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    fbd5 <tri_tri_overlap_test_3d+0xeac5>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    fd7a <tri_tri_overlap_test_3d+0xec6a>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    ff13 <tri_tri_overlap_test_3d+0xee03>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1026e <tri_tri_overlap_test_3d+0xf15e>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    100c9 <tri_tri_overlap_test_3d+0xefb9>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    10262 <tri_tri_overlap_test_3d+0xf152>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x4c(%rbp),%xmm0
jbe    105b9 <tri_tri_overlap_test_3d+0xf4a9>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    10414 <tri_tri_overlap_test_3d+0xf304>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    105ad <tri_tri_overlap_test_3d+0xf49d>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x10(%rbp),%rdi
mov    -0x18(%rbp),%rsi
mov    -0x20(%rbp),%rdx
mov    -0x28(%rbp),%rcx
mov    -0x38(%rbp),%r8
mov    -0x30(%rbp),%r9
lea    -0x74(%rbp),%r10
lea    -0x80(%rbp),%rax
mov    %r10,(%rsp)
mov    %rax,0x8(%rsp)
mov    $0x0,%al
call   1030 <coplanar_tri_tri3d@plt>
mov    %eax,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x40(%rbp),%xmm0
jbe    155bf <tri_tri_overlap_test_3d+0x144af>
movss  -0x44(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jb     12de7 <tri_tri_overlap_test_3d+0x11cd7>
movss  -0x48(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    10ffc <tri_tri_overlap_test_3d+0xfeec>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1096f <tri_tri_overlap_test_3d+0xf85f>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    107ca <tri_tri_overlap_test_3d+0xf6ba>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    10963 <tri_tri_overlap_test_3d+0xf853>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    10cbe <tri_tri_overlap_test_3d+0xfbae>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    10b19 <tri_tri_overlap_test_3d+0xfa09>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    10cb2 <tri_tri_overlap_test_3d+0xfba2>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    10e57 <tri_tri_overlap_test_3d+0xfd47>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    10ff0 <tri_tri_overlap_test_3d+0xfee0>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x48(%rbp),%xmm0
jbe    119dd <tri_tri_overlap_test_3d+0x108cd>
xorps  %xmm0,%xmm0
ucomiss -0x50(%rbp),%xmm0
jbe    11354 <tri_tri_overlap_test_3d+0x10244>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    111af <tri_tri_overlap_test_3d+0x1009f>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    11348 <tri_tri_overlap_test_3d+0x10238>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x4c(%rbp),%xmm0
jbe    1169f <tri_tri_overlap_test_3d+0x1058f>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    114fa <tri_tri_overlap_test_3d+0x103ea>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    11693 <tri_tri_overlap_test_3d+0x10583>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    11838 <tri_tri_overlap_test_3d+0x10728>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    119d1 <tri_tri_overlap_test_3d+0x108c1>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x50(%rbp),%xmm0
jbe    12077 <tri_tri_overlap_test_3d+0x10f67>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jb     11d39 <tri_tri_overlap_test_3d+0x10c29>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    11b94 <tri_tri_overlap_test_3d+0x10a84>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    11d2d <tri_tri_overlap_test_3d+0x10c1d>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    11ed2 <tri_tri_overlap_test_3d+0x10dc2>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1206b <tri_tri_overlap_test_3d+0x10f5b>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    12715 <tri_tri_overlap_test_3d+0x11605>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    123d7 <tri_tri_overlap_test_3d+0x112c7>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    12232 <tri_tri_overlap_test_3d+0x11122>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    123cb <tri_tri_overlap_test_3d+0x112bb>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    12570 <tri_tri_overlap_test_3d+0x11460>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    12709 <tri_tri_overlap_test_3d+0x115f9>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    12a64 <tri_tri_overlap_test_3d+0x11954>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    128bf <tri_tri_overlap_test_3d+0x117af>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    12a58 <tri_tri_overlap_test_3d+0x11948>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x4c(%rbp),%xmm0
jbe    12daf <tri_tri_overlap_test_3d+0x11c9f>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    12c0a <tri_tri_overlap_test_3d+0x11afa>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    12da3 <tri_tri_overlap_test_3d+0x11c93>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x18(%rbp),%rdi
mov    -0x20(%rbp),%rsi
mov    -0x10(%rbp),%rdx
mov    -0x28(%rbp),%rcx
mov    -0x38(%rbp),%r8
mov    -0x30(%rbp),%r9
lea    -0x74(%rbp),%r10
lea    -0x80(%rbp),%rax
mov    %r10,(%rsp)
mov    %rax,0x8(%rsp)
mov    $0x0,%al
call   1030 <coplanar_tri_tri3d@plt>
mov    %eax,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x48(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    137d4 <tri_tri_overlap_test_3d+0x126c4>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    13147 <tri_tri_overlap_test_3d+0x12037>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    12fa2 <tri_tri_overlap_test_3d+0x11e92>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1313b <tri_tri_overlap_test_3d+0x1202b>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    13496 <tri_tri_overlap_test_3d+0x12386>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    132f1 <tri_tri_overlap_test_3d+0x121e1>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1348a <tri_tri_overlap_test_3d+0x1237a>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1362f <tri_tri_overlap_test_3d+0x1251f>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    137c8 <tri_tri_overlap_test_3d+0x126b8>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x48(%rbp),%xmm0
jbe    141b5 <tri_tri_overlap_test_3d+0x130a5>
xorps  %xmm0,%xmm0
ucomiss -0x4c(%rbp),%xmm0
jbe    13b2c <tri_tri_overlap_test_3d+0x12a1c>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    13987 <tri_tri_overlap_test_3d+0x12877>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    13b20 <tri_tri_overlap_test_3d+0x12a10>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x50(%rbp),%xmm0
jbe    13e77 <tri_tri_overlap_test_3d+0x12d67>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    13cd2 <tri_tri_overlap_test_3d+0x12bc2>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    13e6b <tri_tri_overlap_test_3d+0x12d5b>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    14010 <tri_tri_overlap_test_3d+0x12f00>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    141a9 <tri_tri_overlap_test_3d+0x13099>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x4c(%rbp),%xmm0
jbe    1484f <tri_tri_overlap_test_3d+0x1373f>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jb     14511 <tri_tri_overlap_test_3d+0x13401>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1436c <tri_tri_overlap_test_3d+0x1325c>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    14505 <tri_tri_overlap_test_3d+0x133f5>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    146aa <tri_tri_overlap_test_3d+0x1359a>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    14843 <tri_tri_overlap_test_3d+0x13733>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    14eed <tri_tri_overlap_test_3d+0x13ddd>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    14baf <tri_tri_overlap_test_3d+0x13a9f>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    14a0a <tri_tri_overlap_test_3d+0x138fa>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    14ba3 <tri_tri_overlap_test_3d+0x13a93>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    14d48 <tri_tri_overlap_test_3d+0x13c38>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    14ee1 <tri_tri_overlap_test_3d+0x13dd1>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1523c <tri_tri_overlap_test_3d+0x1412c>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    15097 <tri_tri_overlap_test_3d+0x13f87>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    15230 <tri_tri_overlap_test_3d+0x14120>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x50(%rbp),%xmm0
jbe    15587 <tri_tri_overlap_test_3d+0x14477>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    153e2 <tri_tri_overlap_test_3d+0x142d2>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1557b <tri_tri_overlap_test_3d+0x1446b>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x10(%rbp),%rdi
mov    -0x18(%rbp),%rsi
mov    -0x20(%rbp),%rdx
mov    -0x28(%rbp),%rcx
mov    -0x30(%rbp),%r8
mov    -0x38(%rbp),%r9
lea    -0x74(%rbp),%r10
lea    -0x80(%rbp),%rax
mov    %r10,(%rsp)
mov    %rax,0x8(%rsp)
mov    $0x0,%al
call   1030 <coplanar_tri_tri3d@plt>
mov    %eax,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x40(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1a591 <tri_tri_overlap_test_3d+0x19481>
movss  -0x44(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    17db9 <tri_tri_overlap_test_3d+0x16ca9>
movss  -0x48(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    15fce <tri_tri_overlap_test_3d+0x14ebe>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    15941 <tri_tri_overlap_test_3d+0x14831>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1579c <tri_tri_overlap_test_3d+0x1468c>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    15935 <tri_tri_overlap_test_3d+0x14825>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    15c90 <tri_tri_overlap_test_3d+0x14b80>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    15aeb <tri_tri_overlap_test_3d+0x149db>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    15c84 <tri_tri_overlap_test_3d+0x14b74>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    15e29 <tri_tri_overlap_test_3d+0x14d19>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    15fc2 <tri_tri_overlap_test_3d+0x14eb2>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x48(%rbp),%xmm0
jbe    169af <tri_tri_overlap_test_3d+0x1589f>
xorps  %xmm0,%xmm0
ucomiss -0x50(%rbp),%xmm0
jbe    16326 <tri_tri_overlap_test_3d+0x15216>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    16181 <tri_tri_overlap_test_3d+0x15071>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1631a <tri_tri_overlap_test_3d+0x1520a>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x4c(%rbp),%xmm0
jbe    16671 <tri_tri_overlap_test_3d+0x15561>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    164cc <tri_tri_overlap_test_3d+0x153bc>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    16665 <tri_tri_overlap_test_3d+0x15555>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1680a <tri_tri_overlap_test_3d+0x156fa>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    169a3 <tri_tri_overlap_test_3d+0x15893>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x50(%rbp),%xmm0
jbe    17049 <tri_tri_overlap_test_3d+0x15f39>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jb     16d0b <tri_tri_overlap_test_3d+0x15bfb>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    16b66 <tri_tri_overlap_test_3d+0x15a56>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    16cff <tri_tri_overlap_test_3d+0x15bef>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    16ea4 <tri_tri_overlap_test_3d+0x15d94>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1703d <tri_tri_overlap_test_3d+0x15f2d>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    176e7 <tri_tri_overlap_test_3d+0x165d7>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    173a9 <tri_tri_overlap_test_3d+0x16299>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    17204 <tri_tri_overlap_test_3d+0x160f4>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1739d <tri_tri_overlap_test_3d+0x1628d>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    17542 <tri_tri_overlap_test_3d+0x16432>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    176db <tri_tri_overlap_test_3d+0x165cb>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    17a36 <tri_tri_overlap_test_3d+0x16926>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    17891 <tri_tri_overlap_test_3d+0x16781>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    17a2a <tri_tri_overlap_test_3d+0x1691a>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x4c(%rbp),%xmm0
jbe    17d81 <tri_tri_overlap_test_3d+0x16c71>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    17bdc <tri_tri_overlap_test_3d+0x16acc>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    17d75 <tri_tri_overlap_test_3d+0x16c65>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x10(%rbp),%rdi
mov    -0x18(%rbp),%rsi
mov    -0x20(%rbp),%rdx
mov    -0x28(%rbp),%rcx
mov    -0x38(%rbp),%r8
mov    -0x30(%rbp),%r9
lea    -0x74(%rbp),%r10
lea    -0x80(%rbp),%rax
mov    %r10,(%rsp)
mov    %rax,0x8(%rsp)
mov    $0x0,%al
call   1030 <coplanar_tri_tri3d@plt>
mov    %eax,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x48(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    187a6 <tri_tri_overlap_test_3d+0x17696>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    18119 <tri_tri_overlap_test_3d+0x17009>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    17f74 <tri_tri_overlap_test_3d+0x16e64>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1810d <tri_tri_overlap_test_3d+0x16ffd>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    18468 <tri_tri_overlap_test_3d+0x17358>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    182c3 <tri_tri_overlap_test_3d+0x171b3>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1845c <tri_tri_overlap_test_3d+0x1734c>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    18601 <tri_tri_overlap_test_3d+0x174f1>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1879a <tri_tri_overlap_test_3d+0x1768a>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x48(%rbp),%xmm0
jbe    19187 <tri_tri_overlap_test_3d+0x18077>
xorps  %xmm0,%xmm0
ucomiss -0x4c(%rbp),%xmm0
jbe    18afe <tri_tri_overlap_test_3d+0x179ee>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    18959 <tri_tri_overlap_test_3d+0x17849>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    18af2 <tri_tri_overlap_test_3d+0x179e2>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x50(%rbp),%xmm0
jbe    18e49 <tri_tri_overlap_test_3d+0x17d39>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    18ca4 <tri_tri_overlap_test_3d+0x17b94>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    18e3d <tri_tri_overlap_test_3d+0x17d2d>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    18fe2 <tri_tri_overlap_test_3d+0x17ed2>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1917b <tri_tri_overlap_test_3d+0x1806b>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x4c(%rbp),%xmm0
jbe    19821 <tri_tri_overlap_test_3d+0x18711>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jb     194e3 <tri_tri_overlap_test_3d+0x183d3>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1933e <tri_tri_overlap_test_3d+0x1822e>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    194d7 <tri_tri_overlap_test_3d+0x183c7>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1967c <tri_tri_overlap_test_3d+0x1856c>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    19815 <tri_tri_overlap_test_3d+0x18705>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    19ebf <tri_tri_overlap_test_3d+0x18daf>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    19b81 <tri_tri_overlap_test_3d+0x18a71>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    199dc <tri_tri_overlap_test_3d+0x188cc>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    19b75 <tri_tri_overlap_test_3d+0x18a65>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    19d1a <tri_tri_overlap_test_3d+0x18c0a>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    19eb3 <tri_tri_overlap_test_3d+0x18da3>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1a20e <tri_tri_overlap_test_3d+0x190fe>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1a069 <tri_tri_overlap_test_3d+0x18f59>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1a202 <tri_tri_overlap_test_3d+0x190f2>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x50(%rbp),%xmm0
jbe    1a559 <tri_tri_overlap_test_3d+0x19449>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1a3b4 <tri_tri_overlap_test_3d+0x192a4>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1a54d <tri_tri_overlap_test_3d+0x1943d>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x18(%rbp),%rdi
mov    -0x20(%rbp),%rsi
mov    -0x10(%rbp),%rdx
mov    -0x28(%rbp),%rcx
mov    -0x30(%rbp),%r8
mov    -0x38(%rbp),%r9
lea    -0x74(%rbp),%r10
lea    -0x80(%rbp),%rax
mov    %r10,(%rsp)
mov    %rax,0x8(%rsp)
mov    $0x0,%al
call   1030 <coplanar_tri_tri3d@plt>
mov    %eax,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x44(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1cd7a <tri_tri_overlap_test_3d+0x1bc6a>
movss  -0x48(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1af8f <tri_tri_overlap_test_3d+0x19e7f>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1a902 <tri_tri_overlap_test_3d+0x197f2>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1a75d <tri_tri_overlap_test_3d+0x1964d>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1a8f6 <tri_tri_overlap_test_3d+0x197e6>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1ac51 <tri_tri_overlap_test_3d+0x19b41>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1aaac <tri_tri_overlap_test_3d+0x1999c>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1ac45 <tri_tri_overlap_test_3d+0x19b35>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1adea <tri_tri_overlap_test_3d+0x19cda>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1af83 <tri_tri_overlap_test_3d+0x19e73>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x48(%rbp),%xmm0
jbe    1b970 <tri_tri_overlap_test_3d+0x1a860>
xorps  %xmm0,%xmm0
ucomiss -0x4c(%rbp),%xmm0
jbe    1b2e7 <tri_tri_overlap_test_3d+0x1a1d7>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1b142 <tri_tri_overlap_test_3d+0x1a032>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1b2db <tri_tri_overlap_test_3d+0x1a1cb>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x50(%rbp),%xmm0
jbe    1b632 <tri_tri_overlap_test_3d+0x1a522>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1b48d <tri_tri_overlap_test_3d+0x1a37d>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1b626 <tri_tri_overlap_test_3d+0x1a516>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1b7cb <tri_tri_overlap_test_3d+0x1a6bb>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1b964 <tri_tri_overlap_test_3d+0x1a854>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x4c(%rbp),%xmm0
jbe    1c00a <tri_tri_overlap_test_3d+0x1aefa>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jb     1bccc <tri_tri_overlap_test_3d+0x1abbc>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1bb27 <tri_tri_overlap_test_3d+0x1aa17>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1bcc0 <tri_tri_overlap_test_3d+0x1abb0>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1be65 <tri_tri_overlap_test_3d+0x1ad55>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1bffe <tri_tri_overlap_test_3d+0x1aeee>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1c6a8 <tri_tri_overlap_test_3d+0x1b598>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1c36a <tri_tri_overlap_test_3d+0x1b25a>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1c1c5 <tri_tri_overlap_test_3d+0x1b0b5>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1c35e <tri_tri_overlap_test_3d+0x1b24e>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1c503 <tri_tri_overlap_test_3d+0x1b3f3>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1c69c <tri_tri_overlap_test_3d+0x1b58c>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1c9f7 <tri_tri_overlap_test_3d+0x1b8e7>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1c852 <tri_tri_overlap_test_3d+0x1b742>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1c9eb <tri_tri_overlap_test_3d+0x1b8db>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x50(%rbp),%xmm0
jbe    1cd42 <tri_tri_overlap_test_3d+0x1bc32>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1cb9d <tri_tri_overlap_test_3d+0x1ba8d>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1cd36 <tri_tri_overlap_test_3d+0x1bc26>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x20(%rbp),%rdi
mov    -0x10(%rbp),%rsi
mov    -0x18(%rbp),%rdx
mov    -0x28(%rbp),%rcx
mov    -0x30(%rbp),%r8
mov    -0x38(%rbp),%r9
lea    -0x74(%rbp),%r10
lea    -0x80(%rbp),%rax
mov    %r10,(%rsp)
mov    %rax,0x8(%rsp)
mov    $0x0,%al
call   1030 <coplanar_tri_tri3d@plt>
mov    %eax,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x44(%rbp),%xmm0
jbe    1f55f <tri_tri_overlap_test_3d+0x1e44f>
movss  -0x48(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1d774 <tri_tri_overlap_test_3d+0x1c664>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1d0e7 <tri_tri_overlap_test_3d+0x1bfd7>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1cf42 <tri_tri_overlap_test_3d+0x1be32>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1d0db <tri_tri_overlap_test_3d+0x1bfcb>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1d436 <tri_tri_overlap_test_3d+0x1c326>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1d291 <tri_tri_overlap_test_3d+0x1c181>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1d42a <tri_tri_overlap_test_3d+0x1c31a>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1d5cf <tri_tri_overlap_test_3d+0x1c4bf>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1d768 <tri_tri_overlap_test_3d+0x1c658>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x48(%rbp),%xmm0
jbe    1e155 <tri_tri_overlap_test_3d+0x1d045>
xorps  %xmm0,%xmm0
ucomiss -0x50(%rbp),%xmm0
jbe    1dacc <tri_tri_overlap_test_3d+0x1c9bc>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1d927 <tri_tri_overlap_test_3d+0x1c817>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1dac0 <tri_tri_overlap_test_3d+0x1c9b0>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x4c(%rbp),%xmm0
jbe    1de17 <tri_tri_overlap_test_3d+0x1cd07>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1dc72 <tri_tri_overlap_test_3d+0x1cb62>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1de0b <tri_tri_overlap_test_3d+0x1ccfb>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1dfb0 <tri_tri_overlap_test_3d+0x1cea0>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1e149 <tri_tri_overlap_test_3d+0x1d039>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x50(%rbp),%xmm0
jbe    1e7ef <tri_tri_overlap_test_3d+0x1d6df>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jb     1e4b1 <tri_tri_overlap_test_3d+0x1d3a1>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1e30c <tri_tri_overlap_test_3d+0x1d1fc>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1e4a5 <tri_tri_overlap_test_3d+0x1d395>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1e64a <tri_tri_overlap_test_3d+0x1d53a>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1e7e3 <tri_tri_overlap_test_3d+0x1d6d3>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x50(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1ee8d <tri_tri_overlap_test_3d+0x1dd7d>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1eb4f <tri_tri_overlap_test_3d+0x1da3f>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1e9aa <tri_tri_overlap_test_3d+0x1d89a>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1eb43 <tri_tri_overlap_test_3d+0x1da33>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1ece8 <tri_tri_overlap_test_3d+0x1dbd8>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1ee81 <tri_tri_overlap_test_3d+0x1dd71>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movss  -0x4c(%rbp),%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1f1dc <tri_tri_overlap_test_3d+0x1e0cc>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x10(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1f037 <tri_tri_overlap_test_3d+0x1df27>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x18(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x18(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x18(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1f1d0 <tri_tri_overlap_test_3d+0x1e0c0>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
xorps  %xmm0,%xmm0
ucomiss -0x4c(%rbp),%xmm0
jbe    1f527 <tri_tri_overlap_test_3d+0x1e417>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x20(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x20(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x20(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x28(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x28(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x28(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x18(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1f382 <tri_tri_overlap_test_3d+0x1e272>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x30(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x30(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x30(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
mov    -0x10(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x68(%rbp)
mov    -0x10(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x64(%rbp)
mov    -0x10(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x60(%rbp)
movss  -0x58(%rbp),%xmm0
movss  -0x60(%rbp),%xmm2
movss  -0x54(%rbp),%xmm1
mulss  -0x64(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x74(%rbp)
movss  -0x54(%rbp),%xmm0
movss  -0x68(%rbp),%xmm2
movss  -0x5c(%rbp),%xmm1
mulss  -0x60(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x70(%rbp)
movss  -0x5c(%rbp),%xmm0
movss  -0x64(%rbp),%xmm2
movss  -0x58(%rbp),%xmm1
mulss  -0x68(%rbp),%xmm1
movd   %xmm1,%eax
xor    $0x80000000,%eax
movd   %eax,%xmm1
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
movss  %xmm0,-0x6c(%rbp)
mov    -0x38(%rbp),%rax
movss  (%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  (%rax),%xmm0
movss  %xmm0,-0x5c(%rbp)
mov    -0x38(%rbp),%rax
movss  0x4(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x4(%rax),%xmm0
movss  %xmm0,-0x58(%rbp)
mov    -0x38(%rbp),%rax
movss  0x8(%rax),%xmm0
mov    -0x20(%rbp),%rax
subss  0x8(%rax),%xmm0
movss  %xmm0,-0x54(%rbp)
movss  -0x5c(%rbp),%xmm1
movss  -0x74(%rbp),%xmm2
movss  -0x58(%rbp),%xmm0
mulss  -0x70(%rbp),%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  -0x54(%rbp),%xmm0
movss  -0x6c(%rbp),%xmm2
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm1,%xmm1
ucomiss %xmm1,%xmm0
jbe    1f51b <tri_tri_overlap_test_3d+0x1e40b>
movl   $0x0,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
movl   $0x1,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x20(%rbp),%rdi
mov    -0x10(%rbp),%rsi
mov    -0x18(%rbp),%rdx
mov    -0x28(%rbp),%rcx
mov    -0x38(%rbp),%r8
mov    -0x30(%rbp),%r9
lea    -0x74(%rbp),%r10
lea    -0x80(%rbp),%rax
mov    %r10,(%rsp)
mov    %rax,0x8(%rsp)
mov    $0x0,%al
call   1030 <coplanar_tri_tri3d@plt>
mov    %eax,-0x4(%rbp)
jmp    1f592 <tri_tri_overlap_test_3d+0x1e482>
mov    -0x10(%rbp),%rdi
mov    -0x18(%rbp),%rsi
mov    -0x20(%rbp),%rdx
mov    -0x28(%rbp),%rcx
mov    -0x30(%rbp),%r8
mov    -0x38(%rbp),%r9
lea    -0x74(%rbp),%r10
lea    -0x80(%rbp),%rax
mov    %r10,(%rsp)
mov    %rax,0x8(%rsp)
mov    $0x0,%al
call   1030 <coplanar_tri_tri3d@plt>
mov    %eax,-0x4(%rbp)
mov    -0x4(%rbp),%eax
add    $0x90,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<tri_tri_overlap_test_3d>:
push   %r14
push   %rbx
sub    $0x188,%rsp
mov    %r8,%r10
mov    %rsi,%r8
mov    %rdi,%r11
movss  (%rcx),%xmm14
movss  0x4(%rcx),%xmm1
movss  (%r9),%xmm7
movss  0x4(%r9),%xmm13
movaps %xmm14,%xmm2
subss  %xmm7,%xmm2
movaps %xmm1,0x80(%rsp)
subss  %xmm13,%xmm1
movss  0x8(%rcx),%xmm0
movss  0x8(%r9),%xmm15
movaps %xmm0,0x90(%rsp)
subss  %xmm15,%xmm0
movss  (%r10),%xmm4
movss  0x4(%r10),%xmm3
movss  %xmm4,0x14(%rsp)
subss  %xmm7,%xmm4
movss  %xmm3,0xc(%rsp)
subss  %xmm13,%xmm3
movss  0x8(%r10),%xmm5
movss  %xmm5,0x10(%rsp)
subss  %xmm15,%xmm5
movaps %xmm3,%xmm6
mulss  %xmm0,%xmm6
mulss  %xmm4,%xmm0
mulss  %xmm1,%xmm4
mulss  %xmm5,%xmm1
subss  %xmm6,%xmm1
movss  %xmm1,0x17c(%rsp)
mulss  %xmm2,%xmm5
subss  %xmm5,%xmm0
movss  %xmm0,0x180(%rsp)
mulss  %xmm2,%xmm3
subss  %xmm4,%xmm3
movss  %xmm3,0x184(%rsp)
movss  (%rdi),%xmm10
movss  0x4(%rdi),%xmm4
movaps %xmm10,%xmm2
subss  %xmm7,%xmm2
movss  %xmm4,0x18(%rsp)
subss  %xmm13,%xmm4
mulss  %xmm0,%xmm4
mulss  %xmm1,%xmm2
addss  %xmm4,%xmm2
movss  0x8(%rdi),%xmm11
movaps %xmm11,%xmm8
subss  %xmm15,%xmm8
mulss  %xmm3,%xmm8
addss  %xmm2,%xmm8
movss  (%rsi),%xmm12
movss  (%rdx),%xmm2
movaps %xmm2,0x30(%rsp)
unpcklps %xmm12,%xmm2
movaps %xmm7,0x70(%rsp)
movaps %xmm7,%xmm4
shufps $0x0,%xmm7,%xmm4
subps  %xmm4,%xmm2
movss  0x4(%rsi),%xmm9
movss  0x4(%rdx),%xmm6
movaps %xmm6,%xmm4
unpcklps %xmm9,%xmm4
movaps %xmm13,0x50(%rsp)
movaps %xmm13,%xmm5
shufps $0x0,%xmm13,%xmm5
subps  %xmm5,%xmm4
movss  0x8(%rsi),%xmm13
movss  0x8(%rdx),%xmm5
movaps %xmm5,0x40(%rsp)
unpcklps %xmm13,%xmm5
movaps %xmm15,0x60(%rsp)
shufps $0x0,%xmm15,%xmm15
subps  %xmm15,%xmm5
shufps $0x0,%xmm0,%xmm0
mulps  %xmm4,%xmm0
shufps $0x0,%xmm1,%xmm1
mulps  %xmm2,%xmm1
addps  %xmm0,%xmm1
shufps $0x0,%xmm3,%xmm3
mulps  %xmm5,%xmm3
addps  %xmm1,%xmm3
movaps %xmm3,%xmm15
shufps $0x55,%xmm3,%xmm15
movaps %xmm8,%xmm1
mulss  %xmm15,%xmm1
xor    %eax,%eax
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
jbe    12ca <tri_tri_overlap_test_3d+0x1ba>
movaps %xmm8,%xmm1
mulss  %xmm3,%xmm1
ucomiss %xmm0,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps %xmm12,0xf0(%rsp)
movaps %xmm14,0xa0(%rsp)
movaps %xmm12,%xmm14
subss  %xmm10,%xmm14
movaps %xmm9,0x100(%rsp)
movss  0x18(%rsp),%xmm1
subss  %xmm1,%xmm9
movaps %xmm13,0x110(%rsp)
movaps %xmm13,%xmm2
subss  %xmm11,%xmm2
xorps  %xmm13,%xmm13
movaps 0x30(%rsp),%xmm0
movaps %xmm0,%xmm7
movss  %xmm10,0x1c(%rsp)
subss  %xmm10,%xmm7
movaps %xmm6,%xmm5
subss  %xmm1,%xmm5
movaps 0x40(%rsp),%xmm12
movaps %xmm12,%xmm1
movss  %xmm11,0x20(%rsp)
subss  %xmm11,%xmm1
movaps %xmm1,%xmm11
movaps %xmm5,%xmm1
mulss  %xmm2,%xmm1
movaps %xmm9,%xmm4
mulss  %xmm11,%xmm4
subss  %xmm1,%xmm4
movaps %xmm11,%xmm1
mulss  %xmm14,%xmm1
movaps %xmm2,0x120(%rsp)
mulss  %xmm7,%xmm2
subss  %xmm1,%xmm2
movaps %xmm7,0x150(%rsp)
movaps %xmm7,%xmm1
movaps %xmm9,0x130(%rsp)
mulss  %xmm9,%xmm1
movaps %xmm14,0x140(%rsp)
movaps %xmm5,0x160(%rsp)
mulss  %xmm5,%xmm14
subss  %xmm1,%xmm14
movss  0x14(%rsp),%xmm7
subss  %xmm0,%xmm7
movss  0xc(%rsp),%xmm1
subss  %xmm6,%xmm1
movss  0x10(%rsp),%xmm10
subss  %xmm12,%xmm10
movss  %xmm1,0x24(%rsp)
mulss  %xmm2,%xmm1
movss  %xmm7,0x28(%rsp)
mulss  %xmm4,%xmm7
addss  %xmm1,%xmm7
movss  %xmm10,0x2c(%rsp)
mulss  %xmm14,%xmm10
addss  %xmm7,%xmm10
movaps 0xa0(%rsp),%xmm1
unpcklps 0x70(%rsp),%xmm1
movaps %xmm0,%xmm7
shufps $0x0,%xmm0,%xmm7
subps  %xmm7,%xmm1
movaps 0x80(%rsp),%xmm0
unpcklps 0x50(%rsp),%xmm0
movaps %xmm6,0xe0(%rsp)
shufps $0x0,%xmm6,%xmm6
subps  %xmm6,%xmm0
movaps 0x90(%rsp),%xmm5
unpcklps 0x60(%rsp),%xmm5
shufps $0x0,%xmm12,%xmm12
subps  %xmm12,%xmm5
movss  %xmm4,(%rsp)
movss  %xmm2,0x4(%rsp)
shufps $0x0,%xmm2,%xmm2
movaps %xmm0,0xb0(%rsp)
mulps  %xmm0,%xmm2
shufps $0x0,%xmm4,%xmm4
movaps %xmm1,0xc0(%rsp)
mulps  %xmm1,%xmm4
addps  %xmm2,%xmm4
movss  %xmm14,0x8(%rsp)
shufps $0x0,%xmm14,%xmm14
movaps %xmm5,0xd0(%rsp)
mulps  %xmm5,%xmm14
addps  %xmm4,%xmm14
movaps %xmm14,%xmm2
mulss  %xmm10,%xmm2
ucomiss %xmm13,%xmm2
movaps %xmm14,%xmm1
shufps $0x55,%xmm14,%xmm1
jbe    14b2 <tri_tri_overlap_test_3d+0x3a2>
movaps %xmm14,%xmm0
mulss  %xmm1,%xmm0
xorps  %xmm2,%xmm2
ucomiss %xmm2,%xmm0
jbe    14b2 <tri_tri_overlap_test_3d+0x3a2>
add    $0x188,%rsp
pop    %rbx
pop    %r14
ret
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm8
jbe    164f <tri_tri_overlap_test_3d+0x53f>
ucomiss %xmm0,%xmm15
movaps 0xe0(%rsp),%xmm5
xorps  %xmm0,%xmm0
jbe    17f7 <tri_tri_overlap_test_3d+0x6e7>
ucomiss %xmm0,%xmm14
jbe    1b26 <tri_tri_overlap_test_3d+0xa16>
ucomiss %xmm0,%xmm1
jbe    20c5 <tri_tri_overlap_test_3d+0xfb5>
movaps 0xf0(%rsp),%xmm6
movaps %xmm5,%xmm0
movss  0x14(%rsp),%xmm7
subss  %xmm6,%xmm7
movaps 0x100(%rsp),%xmm9
movss  0xc(%rsp),%xmm5
subss  %xmm9,%xmm5
movaps 0x110(%rsp),%xmm8
movss  0x10(%rsp),%xmm4
subss  %xmm8,%xmm4
subss  %xmm9,%xmm0
movaps 0x40(%rsp),%xmm1
subss  %xmm8,%xmm1
movaps %xmm0,%xmm2
mulss  %xmm4,%xmm2
movaps %xmm5,%xmm3
mulss  %xmm1,%xmm3
subss  %xmm2,%xmm3
movaps 0x30(%rsp),%xmm2
subss  %xmm6,%xmm2
mulss  %xmm7,%xmm1
mulss  %xmm2,%xmm4
subss  %xmm1,%xmm4
mulss  %xmm5,%xmm2
mulss  %xmm7,%xmm0
subss  %xmm2,%xmm0
movaps 0xa0(%rsp),%xmm1
subss  %xmm6,%xmm1
mulss  %xmm3,%xmm1
movaps 0x80(%rsp),%xmm2
subss  %xmm9,%xmm2
mulss  %xmm4,%xmm2
addss  %xmm1,%xmm2
movaps 0x90(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
movss  0x18(%rsp),%xmm3
movss  0x20(%rsp),%xmm4
movss  0x1c(%rsp),%xmm5
ja     14a7 <tri_tri_overlap_test_3d+0x397>
subss  0x30(%rsp),%xmm5
subss  0xe0(%rsp),%xmm3
subss  0x40(%rsp),%xmm4
movaps %xmm3,%xmm1
movss  0x2c(%rsp),%xmm6
mulss  %xmm6,%xmm1
movss  0x24(%rsp),%xmm7
movaps %xmm7,%xmm2
mulss  %xmm4,%xmm2
subss  %xmm1,%xmm2
movss  %xmm2,(%rsp)
movss  0x28(%rsp),%xmm1
mulss  %xmm1,%xmm4
mulss  %xmm5,%xmm6
subss  %xmm4,%xmm6
movss  %xmm6,0x4(%rsp)
mulss  %xmm7,%xmm5
mulss  %xmm1,%xmm3
subss  %xmm5,%xmm3
movaps 0xb0(%rsp),%xmm1
shufps $0x55,%xmm1,%xmm1
mulss  %xmm6,%xmm1
movaps 0xc0(%rsp),%xmm4
shufps $0x55,%xmm4,%xmm4
mulss  %xmm2,%xmm4
addss  %xmm1,%xmm4
movaps 0xd0(%rsp),%xmm1
shufps $0x55,%xmm1,%xmm1
jmp    604d <tri_tri_overlap_test_3d+0x4f3d>
ucomiss %xmm8,%xmm0
movaps 0xe0(%rsp),%xmm4
xorps  %xmm0,%xmm0
jbe    19a4 <tri_tri_overlap_test_3d+0x894>
ucomiss %xmm15,%xmm0
jbe    1c69 <tri_tri_overlap_test_3d+0xb59>
ucomiss %xmm0,%xmm14
jbe    2241 <tri_tri_overlap_test_3d+0x1131>
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm10
jbe    2b98 <tri_tri_overlap_test_3d+0x1a88>
movaps %xmm4,%xmm1
movaps 0xf0(%rsp),%xmm7
movaps 0x70(%rsp),%xmm0
subss  %xmm7,%xmm0
movaps 0x100(%rsp),%xmm10
movaps 0x50(%rsp),%xmm6
subss  %xmm10,%xmm6
movaps 0x110(%rsp),%xmm9
movaps 0x60(%rsp),%xmm5
subss  %xmm9,%xmm5
subss  %xmm10,%xmm1
movaps 0x40(%rsp),%xmm2
subss  %xmm9,%xmm2
movaps %xmm1,%xmm3
mulss  %xmm5,%xmm3
movaps %xmm6,%xmm4
mulss  %xmm2,%xmm4
subss  %xmm3,%xmm4
movaps 0x30(%rsp),%xmm3
subss  %xmm7,%xmm3
mulss  %xmm0,%xmm2
mulss  %xmm3,%xmm5
subss  %xmm2,%xmm5
mulss  %xmm6,%xmm3
mulss  %xmm0,%xmm1
subss  %xmm3,%xmm1
movaps 0xa0(%rsp),%xmm2
subss  %xmm7,%xmm2
mulss  %xmm4,%xmm2
movaps 0x80(%rsp),%xmm3
subss  %xmm10,%xmm3
mulss  %xmm5,%xmm3
addss  %xmm2,%xmm3
movaps 0x90(%rsp),%xmm0
subss  %xmm9,%xmm0
mulss  %xmm1,%xmm0
addss  %xmm3,%xmm0
ucomiss %xmm8,%xmm0
movss  0x18(%rsp),%xmm2
movss  0x20(%rsp),%xmm3
movss  0x1c(%rsp),%xmm4
ja     14a7 <tri_tri_overlap_test_3d+0x397>
subss  0x30(%rsp),%xmm4
subss  0xe0(%rsp),%xmm2
subss  0x40(%rsp),%xmm3
movaps 0xd0(%rsp),%xmm5
shufps $0x55,%xmm5,%xmm5
movaps %xmm2,%xmm0
mulss  %xmm5,%xmm0
movaps 0xb0(%rsp),%xmm6
shufps $0x55,%xmm6,%xmm6
movaps %xmm6,%xmm1
mulss  %xmm3,%xmm1
subss  %xmm0,%xmm1
movss  %xmm1,(%rsp)
movaps 0xc0(%rsp),%xmm0
shufps $0x55,%xmm0,%xmm0
mulss  %xmm0,%xmm3
mulss  %xmm4,%xmm5
subss  %xmm3,%xmm5
movss  %xmm5,0x4(%rsp)
mulss  %xmm4,%xmm6
mulss  %xmm2,%xmm0
subss  %xmm6,%xmm0
movss  %xmm0,0x8(%rsp)
movss  0x24(%rsp),%xmm3
mulss  %xmm5,%xmm3
movss  0x28(%rsp),%xmm2
mulss  %xmm1,%xmm2
addss  %xmm3,%xmm2
movss  0x2c(%rsp),%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
jmp    ad24 <tri_tri_overlap_test_3d+0x9c14>
ucomiss %xmm0,%xmm3
jbe    1dff <tri_tri_overlap_test_3d+0xcef>
ucomiss %xmm0,%xmm14
jbe    232c <tri_tri_overlap_test_3d+0x121c>
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm1
movaps 0x110(%rsp),%xmm14
movaps 0x100(%rsp),%xmm11
movaps 0xf0(%rsp),%xmm12
jbe    2c7a <tri_tri_overlap_test_3d+0x1b6a>
movss  0xc(%rsp),%xmm1
movss  0x18(%rsp),%xmm10
subss  %xmm10,%xmm1
movss  0x10(%rsp),%xmm2
movss  0x20(%rsp),%xmm9
subss  %xmm9,%xmm2
movaps 0x130(%rsp),%xmm7
movaps %xmm7,%xmm3
mulss  %xmm2,%xmm3
movaps %xmm1,%xmm4
movaps 0x120(%rsp),%xmm6
mulss  %xmm6,%xmm4
subss  %xmm3,%xmm4
movss  0x14(%rsp),%xmm3
movss  0x1c(%rsp),%xmm0
subss  %xmm0,%xmm3
mulss  %xmm3,%xmm6
movaps 0x140(%rsp),%xmm5
mulss  %xmm5,%xmm2
subss  %xmm6,%xmm2
mulss  %xmm5,%xmm1
mulss  %xmm7,%xmm3
subss  %xmm1,%xmm3
movaps 0xa0(%rsp),%xmm1
subss  %xmm0,%xmm1
mulss  %xmm4,%xmm1
movaps 0x80(%rsp),%xmm4
subss  %xmm10,%xmm4
mulss  %xmm2,%xmm4
addss  %xmm1,%xmm4
movaps 0x90(%rsp),%xmm0
subss  %xmm9,%xmm0
mulss  %xmm3,%xmm0
addss  %xmm4,%xmm0
ucomiss %xmm8,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x14(%rsp),%xmm2
subss  %xmm12,%xmm2
movss  0xc(%rsp),%xmm4
subss  %xmm11,%xmm4
movss  0x10(%rsp),%xmm3
subss  %xmm14,%xmm3
movaps 0x30(%rsp),%xmm7
subss  %xmm12,%xmm7
movaps 0xe0(%rsp),%xmm5
subss  %xmm11,%xmm5
movaps 0x40(%rsp),%xmm6
subss  %xmm14,%xmm6
movaps %xmm5,%xmm0
mulss  %xmm3,%xmm0
movaps %xmm4,%xmm1
mulss  %xmm6,%xmm1
subss  %xmm0,%xmm1
movss  %xmm1,(%rsp)
mulss  %xmm2,%xmm6
mulss  %xmm7,%xmm3
subss  %xmm6,%xmm3
movss  %xmm3,0x4(%rsp)
mulss  %xmm4,%xmm7
mulss  %xmm2,%xmm5
subss  %xmm7,%xmm5
movss  %xmm5,0x8(%rsp)
movaps 0x70(%rsp),%xmm0
subss  %xmm12,%xmm0
movaps 0x50(%rsp),%xmm4
subss  %xmm11,%xmm4
movaps 0x60(%rsp),%xmm2
subss  %xmm14,%xmm2
mulss  %xmm3,%xmm4
mulss  %xmm1,%xmm0
addss  %xmm4,%xmm0
mulss  %xmm5,%xmm2
addss  %xmm0,%xmm2
xorps  %xmm0,%xmm0
jmp    bc56 <tri_tri_overlap_test_3d+0xab46>
ucomiss %xmm15,%xmm0
jbe    1f59 <tri_tri_overlap_test_3d+0xe49>
ucomiss %xmm0,%xmm3
jae    24a3 <tri_tri_overlap_test_3d+0x1393>
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm14
jbe    2ddd <tri_tri_overlap_test_3d+0x1ccd>
ucomiss %xmm0,%xmm10
jbe    3ff5 <tri_tri_overlap_test_3d+0x2ee5>
movss  0x1c(%rsp),%xmm11
movaps %xmm11,%xmm0
subss  0x30(%rsp),%xmm0
movss  0x18(%rsp),%xmm8
movaps %xmm8,%xmm1
subss  %xmm4,%xmm1
movss  0x20(%rsp),%xmm10
movaps %xmm10,%xmm2
subss  0x40(%rsp),%xmm2
movaps 0xd0(%rsp),%xmm12
movaps %xmm12,%xmm3
shufps $0x55,%xmm12,%xmm3
movaps 0xb0(%rsp),%xmm14
movaps %xmm14,%xmm4
shufps $0x55,%xmm14,%xmm4
movaps %xmm4,%xmm6
mulss  %xmm2,%xmm6
movaps 0xc0(%rsp),%xmm5
movaps %xmm5,%xmm7
shufps $0x55,%xmm5,%xmm7
mulss  %xmm7,%xmm2
mulss  %xmm1,%xmm7
mulss  %xmm3,%xmm1
subss  %xmm1,%xmm6
mulss  %xmm0,%xmm3
subss  %xmm2,%xmm3
mulss  %xmm0,%xmm4
subss  %xmm4,%xmm7
mulss  %xmm14,%xmm3
mulss  %xmm5,%xmm6
addss  %xmm3,%xmm6
mulss  %xmm12,%xmm7
addss  %xmm6,%xmm7
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm7
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0x70(%rsp),%xmm6
subss  %xmm11,%xmm6
movaps 0x50(%rsp),%xmm1
subss  %xmm8,%xmm1
movaps 0x60(%rsp),%xmm2
subss  %xmm10,%xmm2
movaps 0x130(%rsp),%xmm5
movaps %xmm5,%xmm3
mulss  %xmm2,%xmm3
movaps %xmm1,%xmm4
movaps 0x120(%rsp),%xmm7
mulss  %xmm7,%xmm4
subss  %xmm3,%xmm4
movss  %xmm4,(%rsp)
mulss  %xmm6,%xmm7
movaps 0x140(%rsp),%xmm3
mulss  %xmm3,%xmm2
subss  %xmm7,%xmm2
movss  %xmm2,0x4(%rsp)
mulss  %xmm3,%xmm1
mulss  %xmm5,%xmm6
subss  %xmm1,%xmm6
movss  %xmm6,0x8(%rsp)
movss  0x14(%rsp),%xmm5
subss  %xmm11,%xmm5
movss  0xc(%rsp),%xmm1
subss  %xmm8,%xmm1
movss  0x10(%rsp),%xmm3
subss  %xmm10,%xmm3
mulss  %xmm2,%xmm1
mulss  %xmm4,%xmm5
addss  %xmm1,%xmm5
mulss  %xmm6,%xmm3
addss  %xmm5,%xmm3
jmp    6ee1 <tri_tri_overlap_test_3d+0x5dd1>
ucomiss %xmm14,%xmm0
jbe    264f <tri_tri_overlap_test_3d+0x153f>
xorps  %xmm8,%xmm8
ucomiss %xmm1,%xmm8
jbe    2f6a <tri_tri_overlap_test_3d+0x1e5a>
movss  0x1c(%rsp),%xmm5
movss  0x14(%rsp),%xmm6
subss  %xmm5,%xmm6
movss  0x18(%rsp),%xmm3
movss  0xc(%rsp),%xmm2
subss  %xmm3,%xmm2
movss  0x20(%rsp),%xmm9
movss  0x10(%rsp),%xmm7
subss  %xmm9,%xmm7
movaps 0x160(%rsp),%xmm4
movaps %xmm4,%xmm1
mulss  %xmm7,%xmm1
movaps %xmm2,%xmm0
mulss  %xmm11,%xmm0
subss  %xmm1,%xmm0
mulss  %xmm6,%xmm11
movaps 0x150(%rsp),%xmm1
mulss  %xmm1,%xmm7
subss  %xmm11,%xmm7
mulss  %xmm1,%xmm2
mulss  %xmm4,%xmm6
subss  %xmm2,%xmm6
movaps 0xa0(%rsp),%xmm1
subss  %xmm5,%xmm1
mulss  %xmm0,%xmm1
movaps 0x80(%rsp),%xmm0
subss  %xmm3,%xmm0
mulss  %xmm7,%xmm0
addss  %xmm1,%xmm0
movaps 0x90(%rsp),%xmm1
subss  %xmm9,%xmm1
mulss  %xmm6,%xmm1
addss  %xmm0,%xmm1
ucomiss %xmm8,%xmm1
movaps 0x110(%rsp),%xmm2
movaps 0x100(%rsp),%xmm3
movaps 0xf0(%rsp),%xmm4
ja     14a7 <tri_tri_overlap_test_3d+0x397>
subss  0x30(%rsp),%xmm4
subss  0xe0(%rsp),%xmm3
subss  0x40(%rsp),%xmm2
movaps %xmm3,%xmm0
movss  0x2c(%rsp),%xmm5
mulss  %xmm5,%xmm0
movss  0x24(%rsp),%xmm6
movaps %xmm6,%xmm1
mulss  %xmm2,%xmm1
subss  %xmm0,%xmm1
movss  %xmm1,(%rsp)
movss  0x28(%rsp),%xmm0
mulss  %xmm0,%xmm2
mulss  %xmm4,%xmm5
subss  %xmm2,%xmm5
movss  %xmm5,0x4(%rsp)
mulss  %xmm6,%xmm4
mulss  %xmm0,%xmm3
subss  %xmm4,%xmm3
jmp    5833 <tri_tri_overlap_test_3d+0x4723>
ucomiss %xmm3,%xmm0
jbe    27b9 <tri_tri_overlap_test_3d+0x16a9>
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm14
jbe    30c9 <tri_tri_overlap_test_3d+0x1fb9>
ucomiss %xmm0,%xmm10
movaps 0x110(%rsp),%xmm10
movaps 0x100(%rsp),%xmm11
movaps 0xf0(%rsp),%xmm12
jbe    4166 <tri_tri_overlap_test_3d+0x3056>
movaps 0x50(%rsp),%xmm0
movss  0x18(%rsp),%xmm9
subss  %xmm9,%xmm0
movaps 0x60(%rsp),%xmm1
movss  0x20(%rsp),%xmm8
subss  %xmm8,%xmm1
movaps 0x130(%rsp),%xmm6
movaps %xmm6,%xmm2
mulss  %xmm1,%xmm2
movaps %xmm0,%xmm3
movaps 0x120(%rsp),%xmm4
mulss  %xmm4,%xmm3
subss  %xmm2,%xmm3
movaps 0x70(%rsp),%xmm2
movss  0x1c(%rsp),%xmm7
subss  %xmm7,%xmm2
mulss  %xmm2,%xmm4
movaps 0x140(%rsp),%xmm5
mulss  %xmm5,%xmm1
subss  %xmm4,%xmm1
mulss  %xmm5,%xmm0
mulss  %xmm6,%xmm2
subss  %xmm0,%xmm2
movaps 0xa0(%rsp),%xmm0
subss  %xmm7,%xmm0
mulss  %xmm3,%xmm0
movaps 0x80(%rsp),%xmm3
subss  %xmm9,%xmm3
mulss  %xmm1,%xmm3
addss  %xmm0,%xmm3
movaps 0x90(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm2,%xmm1
addss  %xmm3,%xmm1
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0x70(%rsp),%xmm3
subss  %xmm12,%xmm3
movaps 0x50(%rsp),%xmm5
subss  %xmm11,%xmm5
movaps 0x60(%rsp),%xmm4
subss  %xmm10,%xmm4
movaps 0x30(%rsp),%xmm0
subss  %xmm12,%xmm0
movaps 0xe0(%rsp),%xmm6
subss  %xmm11,%xmm6
movaps 0x40(%rsp),%xmm7
subss  %xmm10,%xmm7
movaps %xmm6,%xmm1
mulss  %xmm4,%xmm1
movaps %xmm5,%xmm2
mulss  %xmm7,%xmm2
subss  %xmm1,%xmm2
movss  %xmm2,(%rsp)
mulss  %xmm3,%xmm7
mulss  %xmm0,%xmm4
subss  %xmm7,%xmm4
movss  %xmm4,0x4(%rsp)
mulss  %xmm5,%xmm0
mulss  %xmm3,%xmm6
subss  %xmm0,%xmm6
movss  %xmm6,0x8(%rsp)
movss  0x14(%rsp),%xmm1
subss  %xmm12,%xmm1
movss  0xc(%rsp),%xmm5
subss  %xmm11,%xmm5
movss  0x10(%rsp),%xmm3
subss  %xmm10,%xmm3
jmp    5579 <tri_tri_overlap_test_3d+0x4469>
ucomiss %xmm0,%xmm14
jbe    2926 <tri_tri_overlap_test_3d+0x1816>
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm10
jbe    3248 <tri_tri_overlap_test_3d+0x2138>
movss  0x1c(%rsp),%xmm12
movaps %xmm12,%xmm1
subss  0x30(%rsp),%xmm1
movss  0x18(%rsp),%xmm10
movaps %xmm10,%xmm2
subss  %xmm5,%xmm2
movss  0x20(%rsp),%xmm11
movaps %xmm11,%xmm3
subss  0x40(%rsp),%xmm3
movaps 0xd0(%rsp),%xmm14
movaps %xmm14,%xmm4
shufps $0x55,%xmm14,%xmm4
movaps 0xb0(%rsp),%xmm15
movaps %xmm15,%xmm6
shufps $0x55,%xmm15,%xmm6
movaps %xmm6,%xmm7
mulss  %xmm3,%xmm7
movaps 0xc0(%rsp),%xmm5
movaps %xmm5,%xmm0
shufps $0x55,%xmm5,%xmm0
mulss  %xmm0,%xmm3
mulss  %xmm2,%xmm0
mulss  %xmm4,%xmm2
subss  %xmm2,%xmm7
mulss  %xmm1,%xmm4
subss  %xmm3,%xmm4
mulss  %xmm1,%xmm6
subss  %xmm6,%xmm0
mulss  %xmm15,%xmm4
mulss  %xmm5,%xmm7
addss  %xmm4,%xmm7
mulss  %xmm14,%xmm0
addss  %xmm7,%xmm0
ucomiss %xmm8,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0x70(%rsp),%xmm2
subss  %xmm12,%xmm2
movaps 0x50(%rsp),%xmm3
subss  %xmm10,%xmm3
movaps 0x60(%rsp),%xmm4
subss  %xmm11,%xmm4
movaps 0x130(%rsp),%xmm5
movaps %xmm5,%xmm0
mulss  %xmm4,%xmm0
movaps %xmm3,%xmm1
movaps 0x120(%rsp),%xmm6
mulss  %xmm6,%xmm1
subss  %xmm0,%xmm1
movss  %xmm1,(%rsp)
mulss  %xmm2,%xmm6
movaps 0x140(%rsp),%xmm0
mulss  %xmm0,%xmm4
subss  %xmm6,%xmm4
movss  %xmm4,0x4(%rsp)
mulss  %xmm0,%xmm3
mulss  %xmm5,%xmm2
subss  %xmm3,%xmm2
movss  %xmm2,0x8(%rsp)
movss  0x14(%rsp),%xmm0
subss  %xmm12,%xmm0
movss  0xc(%rsp),%xmm5
subss  %xmm10,%xmm5
movss  0x10(%rsp),%xmm3
subss  %xmm11,%xmm3
jmp    6a9b <tri_tri_overlap_test_3d+0x598b>
xorps  %xmm0,%xmm0
cmpltps %xmm3,%xmm0
pextrw $0x2,%xmm0,%esi
xorps  %xmm0,%xmm0
test   $0x1,%sil
je     2aa0 <tri_tri_overlap_test_3d+0x1990>
ucomiss %xmm0,%xmm3
jbe    33be <tri_tri_overlap_test_3d+0x22ae>
ucomiss %xmm0,%xmm14
jbe    42ce <tri_tri_overlap_test_3d+0x31be>
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
jbe    5b63 <tri_tri_overlap_test_3d+0x4a53>
movss  0x1c(%rsp),%xmm10
movaps %xmm10,%xmm1
subss  0x30(%rsp),%xmm1
movss  0x18(%rsp),%xmm11
movaps %xmm11,%xmm2
subss  0xe0(%rsp),%xmm2
movss  0x20(%rsp),%xmm8
movaps %xmm8,%xmm3
subss  0x40(%rsp),%xmm3
movaps %xmm2,%xmm4
movss  0x2c(%rsp),%xmm5
mulss  %xmm5,%xmm4
movss  0x24(%rsp),%xmm7
movaps %xmm7,%xmm6
mulss  %xmm3,%xmm6
subss  %xmm4,%xmm6
movss  0x28(%rsp),%xmm4
mulss  %xmm4,%xmm3
mulss  %xmm1,%xmm5
subss  %xmm3,%xmm5
mulss  %xmm7,%xmm1
mulss  %xmm4,%xmm2
subss  %xmm1,%xmm2
movaps 0xb0(%rsp),%xmm1
mulss  %xmm5,%xmm1
movaps 0xc0(%rsp),%xmm3
mulss  %xmm6,%xmm3
addss  %xmm1,%xmm3
movaps 0xd0(%rsp),%xmm1
mulss  %xmm2,%xmm1
addss  %xmm3,%xmm1
ucomiss %xmm0,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x14(%rsp),%xmm0
subss  %xmm10,%xmm0
movss  0xc(%rsp),%xmm1
subss  %xmm11,%xmm1
movss  0x10(%rsp),%xmm2
subss  %xmm8,%xmm2
movaps 0x130(%rsp),%xmm5
movaps %xmm5,%xmm3
mulss  %xmm2,%xmm3
movaps %xmm1,%xmm4
movaps 0x120(%rsp),%xmm6
mulss  %xmm6,%xmm4
subss  %xmm3,%xmm4
movss  %xmm4,(%rsp)
mulss  %xmm0,%xmm6
movaps 0x140(%rsp),%xmm3
mulss  %xmm3,%xmm2
subss  %xmm6,%xmm2
movss  %xmm2,0x4(%rsp)
mulss  %xmm3,%xmm1
mulss  %xmm5,%xmm0
subss  %xmm1,%xmm0
movss  %xmm0,0x8(%rsp)
movaps 0x70(%rsp),%xmm1
subss  %xmm10,%xmm1
movaps 0x50(%rsp),%xmm3
subss  %xmm11,%xmm3
jmp    c52b <tri_tri_overlap_test_3d+0xb41b>
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm10
movss  0x18(%rsp),%xmm9
movss  0x20(%rsp),%xmm14
movss  0x1c(%rsp),%xmm13
movaps 0xa0(%rsp),%xmm0
jbe    3545 <tri_tri_overlap_test_3d+0x2435>
movaps 0xf0(%rsp),%xmm7
movaps 0x70(%rsp),%xmm6
subss  %xmm7,%xmm6
movaps 0x100(%rsp),%xmm11
movaps 0x50(%rsp),%xmm5
subss  %xmm11,%xmm5
movaps 0x110(%rsp),%xmm10
movaps 0x60(%rsp),%xmm0
subss  %xmm10,%xmm0
movaps 0xe0(%rsp),%xmm1
subss  %xmm11,%xmm1
movaps 0x40(%rsp),%xmm2
subss  %xmm10,%xmm2
movaps %xmm1,%xmm3
mulss  %xmm0,%xmm3
movaps %xmm5,%xmm4
mulss  %xmm2,%xmm4
subss  %xmm3,%xmm4
movaps 0x30(%rsp),%xmm3
subss  %xmm7,%xmm3
mulss  %xmm6,%xmm2
mulss  %xmm3,%xmm0
subss  %xmm2,%xmm0
mulss  %xmm5,%xmm3
mulss  %xmm6,%xmm1
subss  %xmm3,%xmm1
movss  0x14(%rsp),%xmm2
subss  %xmm7,%xmm2
mulss  %xmm4,%xmm2
movss  0xc(%rsp),%xmm3
subss  %xmm11,%xmm3
mulss  %xmm0,%xmm3
addss  %xmm2,%xmm3
movss  0x10(%rsp),%xmm2
subss  %xmm10,%xmm2
mulss  %xmm1,%xmm2
addss  %xmm3,%xmm2
ucomiss %xmm8,%xmm2
ja     14a7 <tri_tri_overlap_test_3d+0x397>
subss  0x30(%rsp),%xmm13
subss  0xe0(%rsp),%xmm9
subss  0x40(%rsp),%xmm14
movaps 0xd0(%rsp),%xmm4
movaps %xmm4,%xmm0
shufps $0x55,%xmm4,%xmm0
movaps %xmm9,%xmm1
mulss  %xmm0,%xmm1
movaps 0xb0(%rsp),%xmm6
movaps %xmm6,%xmm2
shufps $0x55,%xmm6,%xmm2
movaps %xmm2,%xmm3
mulss  %xmm14,%xmm3
subss  %xmm1,%xmm3
movss  %xmm3,(%rsp)
movaps 0xc0(%rsp),%xmm5
movaps %xmm5,%xmm1
shufps $0x55,%xmm5,%xmm1
mulss  %xmm1,%xmm14
mulss  %xmm13,%xmm0
subss  %xmm14,%xmm0
movss  %xmm0,0x4(%rsp)
mulss  %xmm13,%xmm2
mulss  %xmm9,%xmm1
subss  %xmm2,%xmm1
mulss  %xmm6,%xmm0
mulss  %xmm5,%xmm3
addss  %xmm0,%xmm3
jmp    ad1c <tri_tri_overlap_test_3d+0x9c0c>
xorps  %xmm0,%xmm0
ucomiss %xmm14,%xmm0
jbe    367a <tri_tri_overlap_test_3d+0x256a>
ucomiss %xmm10,%xmm0
ja     7843 <tri_tri_overlap_test_3d+0x6733>
xorps  %xmm8,%xmm8
ucomiss %xmm1,%xmm8
jbe    5cb8 <tri_tri_overlap_test_3d+0x4ba8>
movss  0x1c(%rsp),%xmm5
movss  0x14(%rsp),%xmm0
subss  %xmm5,%xmm0
movss  0x18(%rsp),%xmm3
movss  0xc(%rsp),%xmm7
subss  %xmm3,%xmm7
movss  0x20(%rsp),%xmm9
movss  0x10(%rsp),%xmm6
subss  %xmm9,%xmm6
movaps 0x160(%rsp),%xmm4
movaps %xmm4,%xmm1
mulss  %xmm6,%xmm1
movaps %xmm7,%xmm2
mulss  %xmm11,%xmm2
subss  %xmm1,%xmm2
mulss  %xmm0,%xmm11
movaps 0x150(%rsp),%xmm1
mulss  %xmm1,%xmm6
subss  %xmm11,%xmm6
mulss  %xmm1,%xmm7
mulss  %xmm4,%xmm0
subss  %xmm7,%xmm0
movaps 0x70(%rsp),%xmm1
subss  %xmm5,%xmm1
mulss  %xmm2,%xmm1
movaps 0x50(%rsp),%xmm2
subss  %xmm3,%xmm2
mulss  %xmm6,%xmm2
addss  %xmm1,%xmm2
movaps 0x60(%rsp),%xmm1
subss  %xmm9,%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
ucomiss %xmm8,%xmm1
movaps 0x110(%rsp),%xmm2
movaps 0x100(%rsp),%xmm3
movaps 0xf0(%rsp),%xmm4
ja     14a7 <tri_tri_overlap_test_3d+0x397>
jmp    85ef <tri_tri_overlap_test_3d+0x74df>
xorps  %xmm0,%xmm0
ucomiss %xmm14,%xmm0
movaps 0x110(%rsp),%xmm14
movaps 0x100(%rsp),%xmm11
movaps 0xf0(%rsp),%xmm12
jbe    3761 <tri_tri_overlap_test_3d+0x2651>
ucomiss %xmm1,%xmm0
jbe    43d7 <tri_tri_overlap_test_3d+0x32c7>
movaps %xmm12,%xmm0
subss  0x30(%rsp),%xmm0
movaps %xmm11,%xmm1
subss  %xmm5,%xmm1
movaps %xmm14,%xmm2
subss  0x40(%rsp),%xmm2
movaps %xmm1,%xmm3
movss  0x2c(%rsp),%xmm5
mulss  %xmm5,%xmm3
movss  0x24(%rsp),%xmm6
movaps %xmm6,%xmm4
mulss  %xmm2,%xmm4
subss  %xmm3,%xmm4
movss  0x28(%rsp),%xmm3
mulss  %xmm3,%xmm2
mulss  %xmm0,%xmm5
subss  %xmm2,%xmm5
mulss  %xmm6,%xmm0
mulss  %xmm3,%xmm1
subss  %xmm0,%xmm1
movaps 0xb0(%rsp),%xmm0
mulss  %xmm5,%xmm0
movaps 0xc0(%rsp),%xmm2
mulss  %xmm4,%xmm2
addss  %xmm0,%xmm2
movaps 0xd0(%rsp),%xmm0
mulss  %xmm1,%xmm0
addss  %xmm2,%xmm0
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm0
movss  0x18(%rsp),%xmm3
movss  0x20(%rsp),%xmm4
movss  0x1c(%rsp),%xmm5
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x14(%rsp),%xmm6
subss  %xmm12,%xmm6
movss  0xc(%rsp),%xmm0
subss  %xmm11,%xmm0
movss  0x10(%rsp),%xmm7
subss  %xmm14,%xmm7
subss  %xmm12,%xmm5
subss  %xmm11,%xmm3
subss  %xmm14,%xmm4
movaps %xmm3,%xmm1
mulss  %xmm7,%xmm1
movaps %xmm0,%xmm2
mulss  %xmm4,%xmm2
subss  %xmm1,%xmm2
movss  %xmm2,(%rsp)
mulss  %xmm6,%xmm4
mulss  %xmm5,%xmm7
subss  %xmm4,%xmm7
movss  %xmm7,0x4(%rsp)
mulss  %xmm0,%xmm5
mulss  %xmm6,%xmm3
subss  %xmm5,%xmm3
movss  %xmm3,0x8(%rsp)
movaps 0x70(%rsp),%xmm1
subss  %xmm12,%xmm1
movaps 0x50(%rsp),%xmm0
subss  %xmm11,%xmm0
movaps 0x60(%rsp),%xmm4
subss  %xmm14,%xmm4
mulss  %xmm7,%xmm0
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
mulss  %xmm3,%xmm4
addss  %xmm1,%xmm4
jmp    2641 <tri_tri_overlap_test_3d+0x1531>
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm14
jbe    38ac <tri_tri_overlap_test_3d+0x279c>
ucomiss %xmm0,%xmm1
movaps 0x110(%rsp),%xmm15
movaps 0x100(%rsp),%xmm11
movaps 0xf0(%rsp),%xmm12
jbe    453a <tri_tri_overlap_test_3d+0x342a>
movss  0xc(%rsp),%xmm0
movss  0x18(%rsp),%xmm9
subss  %xmm9,%xmm0
movss  0x10(%rsp),%xmm1
movss  0x20(%rsp),%xmm8
subss  %xmm8,%xmm1
movaps 0x130(%rsp),%xmm6
movaps %xmm6,%xmm2
mulss  %xmm1,%xmm2
movaps %xmm0,%xmm3
movaps 0x120(%rsp),%xmm4
mulss  %xmm4,%xmm3
subss  %xmm2,%xmm3
movss  0x14(%rsp),%xmm2
movss  0x1c(%rsp),%xmm7
subss  %xmm7,%xmm2
mulss  %xmm2,%xmm4
movaps 0x140(%rsp),%xmm5
mulss  %xmm5,%xmm1
subss  %xmm4,%xmm1
mulss  %xmm5,%xmm0
mulss  %xmm6,%xmm2
subss  %xmm0,%xmm2
movaps 0xa0(%rsp),%xmm0
subss  %xmm7,%xmm0
mulss  %xmm3,%xmm0
movaps 0x80(%rsp),%xmm3
subss  %xmm9,%xmm3
mulss  %xmm1,%xmm3
addss  %xmm0,%xmm3
movaps 0x90(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm2,%xmm1
addss  %xmm3,%xmm1
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x14(%rsp),%xmm4
subss  %xmm12,%xmm4
movss  0xc(%rsp),%xmm5
subss  %xmm11,%xmm5
movss  0x10(%rsp),%xmm1
subss  %xmm15,%xmm1
movaps 0x30(%rsp),%xmm0
subss  %xmm12,%xmm0
movaps 0xe0(%rsp),%xmm6
subss  %xmm11,%xmm6
movaps 0x40(%rsp),%xmm7
subss  %xmm15,%xmm7
movaps %xmm6,%xmm2
mulss  %xmm1,%xmm2
movaps %xmm5,%xmm3
mulss  %xmm7,%xmm3
subss  %xmm2,%xmm3
movss  %xmm3,(%rsp)
mulss  %xmm4,%xmm7
mulss  %xmm0,%xmm1
subss  %xmm7,%xmm1
movss  %xmm1,0x4(%rsp)
mulss  %xmm5,%xmm0
mulss  %xmm4,%xmm6
subss  %xmm0,%xmm6
movss  %xmm6,0x8(%rsp)
movaps 0x70(%rsp),%xmm5
subss  %xmm12,%xmm5
movaps 0x50(%rsp),%xmm2
subss  %xmm11,%xmm2
movaps 0x60(%rsp),%xmm4
subss  %xmm15,%xmm4
mulss  %xmm1,%xmm2
mulss  %xmm3,%xmm5
addss  %xmm2,%xmm5
mulss  %xmm6,%xmm4
addss  %xmm5,%xmm4
xor    %eax,%eax
ucomiss %xmm8,%xmm4
setbe  %al
jmp    14a7 <tri_tri_overlap_test_3d+0x397>
xorps  %xmm0,%xmm0
ucomiss %xmm1,%xmm0
jbe    3a1b <tri_tri_overlap_test_3d+0x290b>
ucomiss %xmm0,%xmm10
jae    46b3 <tri_tri_overlap_test_3d+0x35a3>
movss  0x1c(%rsp),%xmm4
movaps 0xa0(%rsp),%xmm5
subss  %xmm4,%xmm5
movss  0x18(%rsp),%xmm2
movaps 0x80(%rsp),%xmm7
subss  %xmm2,%xmm7
movss  0x20(%rsp),%xmm8
movaps 0x90(%rsp),%xmm6
subss  %xmm8,%xmm6
movaps 0x160(%rsp),%xmm3
movaps %xmm3,%xmm0
mulss  %xmm6,%xmm0
movaps %xmm7,%xmm1
mulss  %xmm11,%xmm1
subss  %xmm0,%xmm1
mulss  %xmm5,%xmm11
movaps 0x150(%rsp),%xmm0
mulss  %xmm0,%xmm6
subss  %xmm11,%xmm6
mulss  %xmm0,%xmm7
mulss  %xmm3,%xmm5
subss  %xmm7,%xmm5
movaps 0x70(%rsp),%xmm0
subss  %xmm4,%xmm0
mulss  %xmm1,%xmm0
movaps 0x50(%rsp),%xmm4
subss  %xmm2,%xmm4
mulss  %xmm6,%xmm4
addss  %xmm0,%xmm4
movaps 0x60(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm5,%xmm1
addss  %xmm4,%xmm1
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
movaps 0x110(%rsp),%xmm3
movaps 0x100(%rsp),%xmm4
movaps 0xf0(%rsp),%xmm5
ja     14a7 <tri_tri_overlap_test_3d+0x397>
subss  0x30(%rsp),%xmm5
subss  0xe0(%rsp),%xmm4
subss  0x40(%rsp),%xmm3
movaps %xmm4,%xmm1
movaps 0xd0(%rsp),%xmm6
mulss  %xmm6,%xmm1
movaps 0xb0(%rsp),%xmm7
movaps %xmm7,%xmm2
mulss  %xmm3,%xmm2
subss  %xmm1,%xmm2
movss  %xmm2,(%rsp)
movaps 0xc0(%rsp),%xmm1
mulss  %xmm1,%xmm3
mulss  %xmm5,%xmm6
subss  %xmm3,%xmm6
movss  %xmm6,0x4(%rsp)
mulss  %xmm7,%xmm5
mulss  %xmm1,%xmm4
subss  %xmm5,%xmm4
movss  %xmm4,0x8(%rsp)
movss  0x24(%rsp),%xmm1
mulss  %xmm6,%xmm1
movss  0x28(%rsp),%xmm3
mulss  %xmm2,%xmm3
addss  %xmm1,%xmm3
movss  0x2c(%rsp),%xmm1
jmp    c141 <tri_tri_overlap_test_3d+0xb031>
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm14
jbe    3ba8 <tri_tri_overlap_test_3d+0x2a98>
ucomiss %xmm0,%xmm1
jbe    4822 <tri_tri_overlap_test_3d+0x3712>
movss  0x1c(%rsp),%xmm8
movaps %xmm8,%xmm0
subss  0x30(%rsp),%xmm0
movss  0x18(%rsp),%xmm11
movaps %xmm11,%xmm1
subss  %xmm4,%xmm1
movss  0x20(%rsp),%xmm7
movaps %xmm7,%xmm2
subss  0x40(%rsp),%xmm2
movaps %xmm1,%xmm3
movss  0x2c(%rsp),%xmm5
mulss  %xmm5,%xmm3
movss  0x24(%rsp),%xmm6
movaps %xmm6,%xmm4
mulss  %xmm2,%xmm4
subss  %xmm3,%xmm4
movss  0x28(%rsp),%xmm3
mulss  %xmm3,%xmm2
mulss  %xmm0,%xmm5
subss  %xmm2,%xmm5
mulss  %xmm6,%xmm0
mulss  %xmm3,%xmm1
subss  %xmm0,%xmm1
movaps 0xb0(%rsp),%xmm0
mulss  %xmm5,%xmm0
movaps 0xc0(%rsp),%xmm2
mulss  %xmm4,%xmm2
addss  %xmm0,%xmm2
movaps 0xd0(%rsp),%xmm0
mulss  %xmm1,%xmm0
addss  %xmm2,%xmm0
xorps  %xmm10,%xmm10
ucomiss %xmm10,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x14(%rsp),%xmm4
subss  %xmm8,%xmm4
movss  0xc(%rsp),%xmm3
subss  %xmm11,%xmm3
movss  0x10(%rsp),%xmm1
subss  %xmm7,%xmm1
movaps 0x130(%rsp),%xmm5
movaps %xmm5,%xmm2
mulss  %xmm1,%xmm2
movaps %xmm3,%xmm0
movaps 0x120(%rsp),%xmm6
mulss  %xmm6,%xmm0
subss  %xmm2,%xmm0
movss  %xmm0,(%rsp)
mulss  %xmm4,%xmm6
movaps 0x140(%rsp),%xmm2
mulss  %xmm2,%xmm1
subss  %xmm6,%xmm1
movss  %xmm1,0x4(%rsp)
mulss  %xmm2,%xmm3
mulss  %xmm5,%xmm4
subss  %xmm3,%xmm4
movss  %xmm4,0x8(%rsp)
movaps 0x70(%rsp),%xmm5
subss  %xmm8,%xmm5
movaps 0x50(%rsp),%xmm3
subss  %xmm11,%xmm3
movaps 0x60(%rsp),%xmm2
subss  %xmm7,%xmm2
mulss  %xmm1,%xmm3
mulss  %xmm0,%xmm5
addss  %xmm3,%xmm5
mulss  %xmm4,%xmm2
addss  %xmm5,%xmm2
xor    %eax,%eax
ucomiss %xmm10,%xmm2
setbe  %al
jmp    14a7 <tri_tri_overlap_test_3d+0x397>
xorps  %xmm0,%xmm0
ucomiss %xmm14,%xmm0
jbe    3d22 <tri_tri_overlap_test_3d+0x2c12>
ucomiss %xmm10,%xmm0
ja     7f6e <tri_tri_overlap_test_3d+0x6e5e>
xorps  %xmm14,%xmm14
ucomiss %xmm1,%xmm14
jbe    5d97 <tri_tri_overlap_test_3d+0x4c87>
movss  0xc(%rsp),%xmm3
movaps 0x100(%rsp),%xmm7
subss  %xmm7,%xmm3
movss  0x10(%rsp),%xmm2
movaps 0x110(%rsp),%xmm15
subss  %xmm15,%xmm2
movss  0x1c(%rsp),%xmm9
movaps %xmm9,%xmm4
movaps 0xf0(%rsp),%xmm0
subss  %xmm0,%xmm4
movss  0x18(%rsp),%xmm13
movaps %xmm13,%xmm1
subss  %xmm7,%xmm1
movss  0x20(%rsp),%xmm8
movaps %xmm8,%xmm5
subss  %xmm15,%xmm5
movaps %xmm1,%xmm6
mulss  %xmm2,%xmm6
mulss  %xmm4,%xmm2
mulss  %xmm3,%xmm4
mulss  %xmm5,%xmm3
subss  %xmm6,%xmm3
movss  0x14(%rsp),%xmm6
subss  %xmm0,%xmm6
mulss  %xmm6,%xmm5
subss  %xmm5,%xmm2
mulss  %xmm6,%xmm1
subss  %xmm4,%xmm1
movaps 0x70(%rsp),%xmm4
subss  %xmm0,%xmm4
mulss  %xmm3,%xmm4
movaps 0x50(%rsp),%xmm3
subss  %xmm7,%xmm3
mulss  %xmm2,%xmm3
addss  %xmm4,%xmm3
movaps 0x60(%rsp),%xmm0
subss  %xmm15,%xmm0
mulss  %xmm1,%xmm0
addss  %xmm3,%xmm0
ucomiss %xmm14,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x14(%rsp),%xmm2
subss  %xmm9,%xmm2
movss  0xc(%rsp),%xmm3
subss  %xmm13,%xmm3
movss  0x10(%rsp),%xmm4
subss  %xmm8,%xmm4
movaps 0x160(%rsp),%xmm5
movaps %xmm5,%xmm0
mulss  %xmm4,%xmm0
movaps %xmm3,%xmm1
mulss  %xmm11,%xmm1
subss  %xmm0,%xmm1
movss  %xmm1,(%rsp)
mulss  %xmm2,%xmm11
movaps 0x150(%rsp),%xmm0
mulss  %xmm0,%xmm4
subss  %xmm11,%xmm4
movss  %xmm4,0x4(%rsp)
mulss  %xmm0,%xmm3
mulss  %xmm5,%xmm2
subss  %xmm3,%xmm2
movss  %xmm2,0x8(%rsp)
movaps 0xa0(%rsp),%xmm0
subss  %xmm9,%xmm0
movaps 0x80(%rsp),%xmm5
subss  %xmm13,%xmm5
jmp    6a8e <tri_tri_overlap_test_3d+0x597e>
ucomiss %xmm0,%xmm3
jbe    3e98 <tri_tri_overlap_test_3d+0x2d88>
ucomiss %xmm0,%xmm14
jbe    493a <tri_tri_overlap_test_3d+0x382a>
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm10
jbe    5eea <tri_tri_overlap_test_3d+0x4dda>
movaps %xmm4,%xmm1
movaps 0xf0(%rsp),%xmm7
movaps 0x70(%rsp),%xmm0
subss  %xmm7,%xmm0
movaps 0x100(%rsp),%xmm10
movaps 0x50(%rsp),%xmm6
subss  %xmm10,%xmm6
movaps 0x110(%rsp),%xmm9
movaps 0x60(%rsp),%xmm5
subss  %xmm9,%xmm5
subss  %xmm10,%xmm1
movaps 0x40(%rsp),%xmm2
subss  %xmm9,%xmm2
movaps %xmm1,%xmm3
mulss  %xmm5,%xmm3
movaps %xmm6,%xmm4
mulss  %xmm2,%xmm4
subss  %xmm3,%xmm4
movaps 0x30(%rsp),%xmm3
subss  %xmm7,%xmm3
mulss  %xmm0,%xmm2
mulss  %xmm3,%xmm5
subss  %xmm2,%xmm5
mulss  %xmm6,%xmm3
mulss  %xmm0,%xmm1
subss  %xmm3,%xmm1
movaps 0xa0(%rsp),%xmm2
subss  %xmm7,%xmm2
mulss  %xmm4,%xmm2
movaps 0x80(%rsp),%xmm3
subss  %xmm10,%xmm3
mulss  %xmm5,%xmm3
addss  %xmm2,%xmm3
movaps 0x90(%rsp),%xmm0
subss  %xmm9,%xmm0
mulss  %xmm1,%xmm0
addss  %xmm3,%xmm0
ucomiss %xmm8,%xmm0
movss  0x18(%rsp),%xmm2
movss  0x20(%rsp),%xmm3
movss  0x1c(%rsp),%xmm4
ja     14a7 <tri_tri_overlap_test_3d+0x397>
jmp    1758 <tri_tri_overlap_test_3d+0x648>
ucomiss %xmm8,%xmm1
jbe    4a1f <tri_tri_overlap_test_3d+0x390f>
movaps 0xf0(%rsp),%xmm6
movss  0x14(%rsp),%xmm7
subss  %xmm6,%xmm7
movaps 0x100(%rsp),%xmm9
movss  0xc(%rsp),%xmm5
subss  %xmm9,%xmm5
movaps 0x110(%rsp),%xmm8
movss  0x10(%rsp),%xmm4
subss  %xmm8,%xmm4
movaps 0xe0(%rsp),%xmm0
subss  %xmm9,%xmm0
movaps 0x40(%rsp),%xmm1
subss  %xmm8,%xmm1
movaps %xmm0,%xmm2
mulss  %xmm4,%xmm2
movaps %xmm5,%xmm3
mulss  %xmm1,%xmm3
subss  %xmm2,%xmm3
movaps 0x30(%rsp),%xmm2
subss  %xmm6,%xmm2
mulss  %xmm7,%xmm1
mulss  %xmm2,%xmm4
subss  %xmm1,%xmm4
mulss  %xmm5,%xmm2
mulss  %xmm7,%xmm0
subss  %xmm2,%xmm0
movaps 0x70(%rsp),%xmm1
subss  %xmm6,%xmm1
mulss  %xmm3,%xmm1
movaps 0x50(%rsp),%xmm2
subss  %xmm9,%xmm2
mulss  %xmm4,%xmm2
addss  %xmm1,%xmm2
movaps 0x60(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
movss  0x18(%rsp),%xmm3
movss  0x20(%rsp),%xmm4
movss  0x1c(%rsp),%xmm5
ja     14a7 <tri_tri_overlap_test_3d+0x397>
jmp    5fc7 <tri_tri_overlap_test_3d+0x4eb7>
ucomiss %xmm8,%xmm10
movss  0x18(%rsp),%xmm15
movss  0x20(%rsp),%xmm8
movss  0x1c(%rsp),%xmm10
jbe    4af2 <tri_tri_overlap_test_3d+0x39e2>
movaps 0x50(%rsp),%xmm0
subss  %xmm15,%xmm0
movaps 0x60(%rsp),%xmm1
subss  %xmm8,%xmm1
movaps 0x130(%rsp),%xmm5
movaps %xmm5,%xmm2
mulss  %xmm1,%xmm2
movaps %xmm0,%xmm3
movaps 0x120(%rsp),%xmm6
mulss  %xmm6,%xmm3
subss  %xmm2,%xmm3
movaps 0x70(%rsp),%xmm2
subss  %xmm10,%xmm2
mulss  %xmm2,%xmm6
movaps 0x140(%rsp),%xmm4
mulss  %xmm4,%xmm1
subss  %xmm6,%xmm1
mulss  %xmm4,%xmm0
mulss  %xmm5,%xmm2
subss  %xmm0,%xmm2
movss  0x14(%rsp),%xmm0
subss  %xmm10,%xmm0
mulss  %xmm3,%xmm0
movss  0xc(%rsp),%xmm3
subss  %xmm15,%xmm3
mulss  %xmm1,%xmm3
addss  %xmm0,%xmm3
movss  0x10(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm2,%xmm1
addss  %xmm3,%xmm1
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0x70(%rsp),%xmm3
subss  %xmm12,%xmm3
movaps 0x50(%rsp),%xmm5
subss  %xmm11,%xmm5
movaps 0x60(%rsp),%xmm4
subss  %xmm14,%xmm4
movaps 0x30(%rsp),%xmm0
subss  %xmm12,%xmm0
movaps 0xe0(%rsp),%xmm6
subss  %xmm11,%xmm6
movaps 0x40(%rsp),%xmm7
subss  %xmm14,%xmm7
movaps %xmm6,%xmm1
mulss  %xmm4,%xmm1
movaps %xmm5,%xmm2
mulss  %xmm7,%xmm2
subss  %xmm1,%xmm2
movss  %xmm2,(%rsp)
mulss  %xmm3,%xmm7
mulss  %xmm0,%xmm4
subss  %xmm7,%xmm4
movss  %xmm4,0x4(%rsp)
mulss  %xmm5,%xmm0
mulss  %xmm3,%xmm6
subss  %xmm0,%xmm6
movss  %xmm6,0x8(%rsp)
movaps 0xa0(%rsp),%xmm1
subss  %xmm12,%xmm1
movaps 0x80(%rsp),%xmm5
subss  %xmm11,%xmm5
movaps 0x90(%rsp),%xmm3
jmp    5574 <tri_tri_overlap_test_3d+0x4464>
ucomiss %xmm14,%xmm0
jbe    4c30 <tri_tri_overlap_test_3d+0x3b20>
xorps  %xmm14,%xmm14
ucomiss %xmm10,%xmm14
jbe    605a <tri_tri_overlap_test_3d+0x4f4a>
movaps 0x50(%rsp),%xmm3
movaps 0x100(%rsp),%xmm0
subss  %xmm0,%xmm3
movaps 0x60(%rsp),%xmm2
movaps 0x110(%rsp),%xmm15
subss  %xmm15,%xmm2
movss  0x1c(%rsp),%xmm9
movaps %xmm9,%xmm4
movaps 0xf0(%rsp),%xmm7
subss  %xmm7,%xmm4
movss  0x18(%rsp),%xmm13
movaps %xmm13,%xmm1
subss  %xmm0,%xmm1
movss  0x20(%rsp),%xmm8
movaps %xmm8,%xmm5
subss  %xmm15,%xmm5
movaps %xmm1,%xmm6
mulss  %xmm2,%xmm6
mulss  %xmm4,%xmm2
mulss  %xmm3,%xmm4
mulss  %xmm5,%xmm3
subss  %xmm6,%xmm3
movaps 0x70(%rsp),%xmm6
subss  %xmm7,%xmm6
mulss  %xmm6,%xmm5
subss  %xmm5,%xmm2
mulss  %xmm6,%xmm1
subss  %xmm4,%xmm1
movaps 0xa0(%rsp),%xmm4
subss  %xmm7,%xmm4
mulss  %xmm3,%xmm4
movaps 0x80(%rsp),%xmm3
subss  %xmm0,%xmm3
mulss  %xmm2,%xmm3
addss  %xmm4,%xmm3
movaps 0x90(%rsp),%xmm0
subss  %xmm15,%xmm0
mulss  %xmm1,%xmm0
addss  %xmm3,%xmm0
ucomiss %xmm14,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0x70(%rsp),%xmm4
subss  %xmm9,%xmm4
movaps 0x50(%rsp),%xmm0
subss  %xmm13,%xmm0
movaps 0x60(%rsp),%xmm1
subss  %xmm8,%xmm1
movaps 0x160(%rsp),%xmm5
movaps %xmm5,%xmm2
mulss  %xmm1,%xmm2
movaps %xmm0,%xmm3
mulss  %xmm11,%xmm3
subss  %xmm2,%xmm3
movss  %xmm3,(%rsp)
mulss  %xmm4,%xmm11
movaps 0x150(%rsp),%xmm2
mulss  %xmm2,%xmm1
subss  %xmm11,%xmm1
movss  %xmm1,0x4(%rsp)
mulss  %xmm2,%xmm0
movaps %xmm4,%xmm2
mulss  %xmm5,%xmm2
subss  %xmm0,%xmm2
movss  %xmm2,0x8(%rsp)
movss  0x14(%rsp),%xmm5
subss  %xmm9,%xmm5
movss  0xc(%rsp),%xmm0
subss  %xmm13,%xmm0
movss  0x10(%rsp),%xmm4
subss  %xmm8,%xmm4
mulss  %xmm1,%xmm0
movaps %xmm5,%xmm1
mulss  %xmm3,%xmm1
addss  %xmm0,%xmm1
mulss  %xmm2,%xmm4
jmp    aa7d <tri_tri_overlap_test_3d+0x996d>
ucomiss %xmm10,%xmm8
movss  0x18(%rsp),%xmm13
movss  0x20(%rsp),%xmm8
movss  0x1c(%rsp),%xmm9
movaps 0xa0(%rsp),%xmm4
jbe    4db0 <tri_tri_overlap_test_3d+0x3ca0>
movaps 0x70(%rsp),%xmm2
subss  %xmm9,%xmm2
movaps 0x50(%rsp),%xmm4
subss  %xmm13,%xmm4
movaps 0x60(%rsp),%xmm3
subss  %xmm8,%xmm3
movaps 0x160(%rsp),%xmm5
movaps %xmm5,%xmm0
mulss  %xmm3,%xmm0
movaps %xmm4,%xmm1
mulss  %xmm11,%xmm1
subss  %xmm0,%xmm1
mulss  %xmm2,%xmm11
movaps 0x150(%rsp),%xmm0
mulss  %xmm0,%xmm3
subss  %xmm11,%xmm3
mulss  %xmm0,%xmm4
mulss  %xmm5,%xmm2
subss  %xmm4,%xmm2
movss  0x14(%rsp),%xmm0
subss  %xmm9,%xmm0
mulss  %xmm1,%xmm0
movss  0xc(%rsp),%xmm4
subss  %xmm13,%xmm4
mulss  %xmm3,%xmm4
addss  %xmm0,%xmm4
movss  0x10(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm2,%xmm1
addss  %xmm4,%xmm1
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm1
movaps 0x110(%rsp),%xmm5
movaps 0x100(%rsp),%xmm6
movaps 0xf0(%rsp),%xmm7
ja     14a7 <tri_tri_overlap_test_3d+0x397>
subss  0x30(%rsp),%xmm7
subss  0xe0(%rsp),%xmm6
subss  0x40(%rsp),%xmm5
movaps 0xd0(%rsp),%xmm9
movaps %xmm9,%xmm1
shufps $0x55,%xmm9,%xmm1
movaps %xmm6,%xmm2
mulss  %xmm1,%xmm2
movaps 0xb0(%rsp),%xmm10
movaps %xmm10,%xmm3
shufps $0x55,%xmm10,%xmm3
movaps %xmm3,%xmm4
mulss  %xmm5,%xmm4
subss  %xmm2,%xmm4
movss  %xmm4,(%rsp)
movaps 0xc0(%rsp),%xmm0
movaps %xmm0,%xmm2
shufps $0x55,%xmm0,%xmm2
mulss  %xmm2,%xmm5
mulss  %xmm7,%xmm1
subss  %xmm5,%xmm1
movss  %xmm1,0x4(%rsp)
mulss  %xmm7,%xmm3
mulss  %xmm6,%xmm2
subss  %xmm3,%xmm2
jmp    480b <tri_tri_overlap_test_3d+0x36fb>
ucomiss %xmm14,%xmm0
movaps 0x110(%rsp),%xmm14
movaps 0x100(%rsp),%xmm11
movaps 0xf0(%rsp),%xmm12
jbe    4f0f <tri_tri_overlap_test_3d+0x3dff>
xorps  %xmm8,%xmm8
ucomiss %xmm10,%xmm8
ja     9c37 <tri_tri_overlap_test_3d+0x8b27>
ucomiss %xmm1,%xmm8
jbe    80e3 <tri_tri_overlap_test_3d+0x6fd3>
movaps %xmm12,%xmm1
subss  0x30(%rsp),%xmm1
movaps %xmm11,%xmm0
subss  %xmm4,%xmm0
movaps %xmm14,%xmm2
subss  0x40(%rsp),%xmm2
movaps %xmm0,%xmm3
movss  0x2c(%rsp),%xmm5
mulss  %xmm5,%xmm3
movss  0x24(%rsp),%xmm6
movaps %xmm6,%xmm4
mulss  %xmm2,%xmm4
subss  %xmm3,%xmm4
movss  0x28(%rsp),%xmm3
mulss  %xmm3,%xmm2
mulss  %xmm1,%xmm5
subss  %xmm2,%xmm5
mulss  %xmm6,%xmm1
mulss  %xmm3,%xmm0
subss  %xmm1,%xmm0
movaps 0xb0(%rsp),%xmm1
shufps $0x55,%xmm1,%xmm1
mulss  %xmm5,%xmm1
movaps 0xc0(%rsp),%xmm2
shufps $0x55,%xmm2,%xmm2
mulss  %xmm4,%xmm2
addss  %xmm1,%xmm2
movaps 0xd0(%rsp),%xmm1
shufps $0x55,%xmm1,%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm1
movss  0x18(%rsp),%xmm4
movss  0x20(%rsp),%xmm5
movss  0x1c(%rsp),%xmm6
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x14(%rsp),%xmm7
subss  %xmm12,%xmm7
movss  0xc(%rsp),%xmm0
subss  %xmm11,%xmm0
movss  0x10(%rsp),%xmm1
subss  %xmm14,%xmm1
subss  %xmm12,%xmm6
subss  %xmm11,%xmm4
subss  %xmm14,%xmm5
movaps %xmm4,%xmm2
mulss  %xmm1,%xmm2
movaps %xmm0,%xmm3
mulss  %xmm5,%xmm3
subss  %xmm2,%xmm3
movss  %xmm3,(%rsp)
mulss  %xmm7,%xmm5
mulss  %xmm6,%xmm1
subss  %xmm5,%xmm1
movss  %xmm1,0x4(%rsp)
mulss  %xmm0,%xmm6
mulss  %xmm7,%xmm4
subss  %xmm6,%xmm4
movss  %xmm4,0x8(%rsp)
movaps 0xa0(%rsp),%xmm5
subss  %xmm12,%xmm5
movaps 0x80(%rsp),%xmm0
subss  %xmm11,%xmm0
movaps 0x90(%rsp),%xmm2
jmp    5053 <tri_tri_overlap_test_3d+0x3f43>
ucomiss %xmm8,%xmm1
jbe    5071 <tri_tri_overlap_test_3d+0x3f61>
movss  0x1c(%rsp),%xmm8
movaps %xmm8,%xmm1
subss  0x30(%rsp),%xmm1
movss  0x18(%rsp),%xmm11
movaps %xmm11,%xmm0
subss  %xmm5,%xmm0
movss  0x20(%rsp),%xmm7
movaps %xmm7,%xmm2
subss  0x40(%rsp),%xmm2
movaps %xmm0,%xmm3
movss  0x2c(%rsp),%xmm5
mulss  %xmm5,%xmm3
movss  0x24(%rsp),%xmm6
movaps %xmm6,%xmm4
mulss  %xmm2,%xmm4
subss  %xmm3,%xmm4
movss  0x28(%rsp),%xmm3
mulss  %xmm3,%xmm2
mulss  %xmm1,%xmm5
subss  %xmm2,%xmm5
mulss  %xmm6,%xmm1
mulss  %xmm3,%xmm0
subss  %xmm1,%xmm0
movaps 0xb0(%rsp),%xmm1
shufps $0x55,%xmm1,%xmm1
mulss  %xmm5,%xmm1
movaps 0xc0(%rsp),%xmm2
shufps $0x55,%xmm2,%xmm2
mulss  %xmm4,%xmm2
addss  %xmm1,%xmm2
movaps 0xd0(%rsp),%xmm1
shufps $0x55,%xmm1,%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
xorps  %xmm10,%xmm10
ucomiss %xmm10,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x14(%rsp),%xmm3
subss  %xmm8,%xmm3
movss  0xc(%rsp),%xmm4
subss  %xmm11,%xmm4
movss  0x10(%rsp),%xmm0
subss  %xmm7,%xmm0
movaps 0x130(%rsp),%xmm5
movaps %xmm5,%xmm1
mulss  %xmm0,%xmm1
movaps %xmm4,%xmm2
movaps 0x120(%rsp),%xmm6
mulss  %xmm6,%xmm2
subss  %xmm1,%xmm2
movss  %xmm2,(%rsp)
mulss  %xmm3,%xmm6
movaps 0x140(%rsp),%xmm1
mulss  %xmm1,%xmm0
subss  %xmm6,%xmm0
movss  %xmm0,0x4(%rsp)
mulss  %xmm1,%xmm4
mulss  %xmm5,%xmm3
subss  %xmm4,%xmm3
movss  %xmm3,0x8(%rsp)
movaps 0xa0(%rsp),%xmm1
subss  %xmm8,%xmm1
movaps 0x80(%rsp),%xmm5
subss  %xmm11,%xmm5
movaps 0x90(%rsp),%xmm4
subss  %xmm7,%xmm4
mulss  %xmm0,%xmm5
mulss  %xmm2,%xmm1
addss  %xmm5,%xmm1
mulss  %xmm3,%xmm4
addss  %xmm1,%xmm4
xor    %eax,%eax
ucomiss %xmm10,%xmm4
setbe  %al
jmp    14a7 <tri_tri_overlap_test_3d+0x397>
ucomiss %xmm0,%xmm14
jbe    51ef <tri_tri_overlap_test_3d+0x40df>
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm10
movaps 0x110(%rsp),%xmm10
movaps 0x100(%rsp),%xmm11
movaps 0xf0(%rsp),%xmm12
jbe    61df <tri_tri_overlap_test_3d+0x50cf>
movaps 0x50(%rsp),%xmm1
movss  0x18(%rsp),%xmm13
subss  %xmm13,%xmm1
movaps 0x60(%rsp),%xmm2
movss  0x20(%rsp),%xmm9
subss  %xmm9,%xmm2
movaps 0x130(%rsp),%xmm7
movaps %xmm7,%xmm3
mulss  %xmm2,%xmm3
movaps %xmm1,%xmm4
movaps 0x120(%rsp),%xmm6
mulss  %xmm6,%xmm4
subss  %xmm3,%xmm4
movaps 0x70(%rsp),%xmm3
movss  0x1c(%rsp),%xmm0
subss  %xmm0,%xmm3
mulss  %xmm3,%xmm6
movaps 0x140(%rsp),%xmm5
mulss  %xmm5,%xmm2
subss  %xmm6,%xmm2
mulss  %xmm5,%xmm1
mulss  %xmm7,%xmm3
subss  %xmm1,%xmm3
movaps 0xa0(%rsp),%xmm1
subss  %xmm0,%xmm1
mulss  %xmm4,%xmm1
movaps 0x80(%rsp),%xmm4
subss  %xmm13,%xmm4
mulss  %xmm2,%xmm4
addss  %xmm1,%xmm4
movaps 0x90(%rsp),%xmm0
subss  %xmm9,%xmm0
mulss  %xmm3,%xmm0
addss  %xmm4,%xmm0
ucomiss %xmm8,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0x70(%rsp),%xmm1
subss  %xmm12,%xmm1
movaps 0x50(%rsp),%xmm2
subss  %xmm11,%xmm2
movaps 0x60(%rsp),%xmm0
subss  %xmm10,%xmm0
movaps 0x30(%rsp),%xmm6
subss  %xmm12,%xmm6
movaps 0xe0(%rsp),%xmm5
subss  %xmm11,%xmm5
movaps 0x40(%rsp),%xmm4
subss  %xmm10,%xmm4
movaps %xmm5,%xmm3
mulss  %xmm0,%xmm3
mulss  %xmm6,%xmm0
mulss  %xmm2,%xmm6
mulss  %xmm4,%xmm2
subss  %xmm3,%xmm2
movss  %xmm2,(%rsp)
mulss  %xmm1,%xmm4
subss  %xmm4,%xmm0
movss  %xmm0,0x4(%rsp)
mulss  %xmm1,%xmm5
subss  %xmm6,%xmm5
movss  %xmm5,0x8(%rsp)
movss  0x14(%rsp),%xmm1
subss  %xmm12,%xmm1
movss  0xc(%rsp),%xmm3
subss  %xmm11,%xmm3
movss  0x10(%rsp),%xmm4
subss  %xmm10,%xmm4
jmp    aa6d <tri_tri_overlap_test_3d+0x995d>
subss  %xmm13,%xmm0
movaps 0x80(%rsp),%xmm4
subss  %xmm9,%xmm4
movaps 0x90(%rsp),%xmm3
subss  %xmm14,%xmm3
movaps 0x160(%rsp),%xmm5
movaps %xmm5,%xmm1
mulss  %xmm3,%xmm1
movaps %xmm4,%xmm2
mulss  %xmm11,%xmm2
subss  %xmm1,%xmm2
mulss  %xmm0,%xmm11
movaps 0x150(%rsp),%xmm1
mulss  %xmm1,%xmm3
subss  %xmm11,%xmm3
mulss  %xmm1,%xmm4
mulss  %xmm5,%xmm0
subss  %xmm4,%xmm0
movaps 0x70(%rsp),%xmm1
subss  %xmm13,%xmm1
mulss  %xmm2,%xmm1
movaps 0x50(%rsp),%xmm2
subss  %xmm9,%xmm2
mulss  %xmm3,%xmm2
addss  %xmm1,%xmm2
movaps 0x60(%rsp),%xmm1
subss  %xmm14,%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
ucomiss %xmm8,%xmm1
movaps 0x110(%rsp),%xmm2
movaps 0x100(%rsp),%xmm3
movaps 0xf0(%rsp),%xmm4
ja     14a7 <tri_tri_overlap_test_3d+0x397>
subss  0x30(%rsp),%xmm4
subss  0xe0(%rsp),%xmm3
subss  0x40(%rsp),%xmm2
movaps %xmm3,%xmm0
movaps 0xd0(%rsp),%xmm5
mulss  %xmm5,%xmm0
movaps 0xb0(%rsp),%xmm6
movaps %xmm6,%xmm1
mulss  %xmm2,%xmm1
subss  %xmm0,%xmm1
movss  %xmm1,(%rsp)
movaps 0xc0(%rsp),%xmm0
mulss  %xmm0,%xmm2
mulss  %xmm4,%xmm5
subss  %xmm2,%xmm5
movss  %xmm5,0x4(%rsp)
mulss  %xmm6,%xmm4
mulss  %xmm0,%xmm3
subss  %xmm4,%xmm3
movss  0x24(%rsp),%xmm2
mulss  %xmm5,%xmm2
movss  0x28(%rsp),%xmm0
mulss  %xmm1,%xmm0
addss  %xmm2,%xmm0
movss  0x2c(%rsp),%xmm1
jmp    5863 <tri_tri_overlap_test_3d+0x4753>
ucomiss %xmm10,%xmm0
jbe    530b <tri_tri_overlap_test_3d+0x41fb>
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm1
jae    633d <tri_tri_overlap_test_3d+0x522d>
movss  0x1c(%rsp),%xmm5
movaps 0xa0(%rsp),%xmm6
subss  %xmm5,%xmm6
movss  0x18(%rsp),%xmm3
movaps 0x80(%rsp),%xmm0
subss  %xmm3,%xmm0
movss  0x20(%rsp),%xmm9
movaps 0x90(%rsp),%xmm7
subss  %xmm9,%xmm7
movaps 0x160(%rsp),%xmm4
movaps %xmm4,%xmm1
mulss  %xmm7,%xmm1
movaps %xmm0,%xmm2
mulss  %xmm11,%xmm2
subss  %xmm1,%xmm2
mulss  %xmm6,%xmm11
movaps 0x150(%rsp),%xmm1
mulss  %xmm1,%xmm7
subss  %xmm11,%xmm7
mulss  %xmm1,%xmm0
mulss  %xmm4,%xmm6
subss  %xmm0,%xmm6
movss  0x14(%rsp),%xmm0
subss  %xmm5,%xmm0
mulss  %xmm2,%xmm0
movss  0xc(%rsp),%xmm1
subss  %xmm3,%xmm1
mulss  %xmm7,%xmm1
addss  %xmm0,%xmm1
movss  0x10(%rsp),%xmm0
subss  %xmm9,%xmm0
mulss  %xmm6,%xmm0
addss  %xmm1,%xmm0
ucomiss %xmm8,%xmm0
movaps 0x110(%rsp),%xmm3
movaps 0x100(%rsp),%xmm2
movaps 0xf0(%rsp),%xmm4
jbe    b05e <tri_tri_overlap_test_3d+0x9f4e>
jmp    14a7 <tri_tri_overlap_test_3d+0x397>
ucomiss %xmm1,%xmm0
jbe    5404 <tri_tri_overlap_test_3d+0x42f4>
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm10
jae    6413 <tri_tri_overlap_test_3d+0x5303>
movaps %xmm12,%xmm1
subss  0x30(%rsp),%xmm1
movaps %xmm11,%xmm2
subss  %xmm5,%xmm2
movaps %xmm14,%xmm3
subss  0x40(%rsp),%xmm3
movaps 0xc0(%rsp),%xmm6
movaps %xmm6,%xmm4
mulss  %xmm2,%xmm4
movaps 0xd0(%rsp),%xmm0
mulss  %xmm0,%xmm2
movaps 0xb0(%rsp),%xmm7
movaps %xmm7,%xmm5
mulss  %xmm3,%xmm5
subss  %xmm2,%xmm5
mulss  %xmm6,%xmm3
movaps %xmm0,%xmm2
mulss  %xmm1,%xmm2
subss  %xmm3,%xmm2
mulss  %xmm7,%xmm1
subss  %xmm1,%xmm4
shufps $0x55,%xmm7,%xmm7
mulss  %xmm2,%xmm7
shufps $0x55,%xmm6,%xmm6
mulss  %xmm5,%xmm6
addss  %xmm7,%xmm6
shufps $0x55,%xmm0,%xmm0
mulss  %xmm4,%xmm0
addss  %xmm6,%xmm0
ucomiss %xmm8,%xmm0
movss  0x18(%rsp),%xmm2
movss  0x20(%rsp),%xmm3
movss  0x1c(%rsp),%xmm4
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm5
subss  %xmm12,%xmm5
movaps 0x80(%rsp),%xmm7
subss  %xmm11,%xmm7
movaps 0x90(%rsp),%xmm6
subss  %xmm14,%xmm6
subss  %xmm12,%xmm4
subss  %xmm11,%xmm2
subss  %xmm14,%xmm3
movaps %xmm2,%xmm0
mulss  %xmm6,%xmm0
movaps %xmm7,%xmm1
mulss  %xmm3,%xmm1
subss  %xmm0,%xmm1
movss  %xmm1,(%rsp)
mulss  %xmm5,%xmm3
mulss  %xmm4,%xmm6
subss  %xmm3,%xmm6
movss  %xmm6,0x4(%rsp)
mulss  %xmm7,%xmm4
mulss  %xmm5,%xmm2
subss  %xmm4,%xmm2
movss  %xmm2,0x8(%rsp)
movss  0x14(%rsp),%xmm0
subss  %xmm12,%xmm0
movss  0xc(%rsp),%xmm4
subss  %xmm11,%xmm4
movss  0x10(%rsp),%xmm3
subss  %xmm14,%xmm3
jmp    6eca <tri_tri_overlap_test_3d+0x5dba>
ucomiss %xmm14,%xmm0
movaps 0x110(%rsp),%xmm14
movaps 0x100(%rsp),%xmm11
movaps 0xf0(%rsp),%xmm12
xorps  %xmm0,%xmm0
jbe    559b <tri_tri_overlap_test_3d+0x448b>
ucomiss %xmm1,%xmm0
jbe    6565 <tri_tri_overlap_test_3d+0x5455>
movaps %xmm12,%xmm1
subss  0x30(%rsp),%xmm1
movaps %xmm11,%xmm2
subss  %xmm4,%xmm2
movaps %xmm14,%xmm3
subss  0x40(%rsp),%xmm3
movaps %xmm2,%xmm4
movss  0x2c(%rsp),%xmm6
mulss  %xmm6,%xmm4
movss  0x24(%rsp),%xmm7
movaps %xmm7,%xmm5
mulss  %xmm3,%xmm5
subss  %xmm4,%xmm5
movss  0x28(%rsp),%xmm4
mulss  %xmm4,%xmm3
mulss  %xmm1,%xmm6
subss  %xmm3,%xmm6
mulss  %xmm7,%xmm1
mulss  %xmm4,%xmm2
subss  %xmm1,%xmm2
movaps 0xb0(%rsp),%xmm1
mulss  %xmm6,%xmm1
movaps 0xc0(%rsp),%xmm3
mulss  %xmm5,%xmm3
addss  %xmm1,%xmm3
movaps 0xd0(%rsp),%xmm1
mulss  %xmm2,%xmm1
addss  %xmm3,%xmm1
ucomiss %xmm0,%xmm1
movss  0x18(%rsp),%xmm4
movss  0x20(%rsp),%xmm3
movss  0x1c(%rsp),%xmm5
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x14(%rsp),%xmm6
subss  %xmm12,%xmm6
movss  0xc(%rsp),%xmm1
subss  %xmm11,%xmm1
movss  0x10(%rsp),%xmm0
subss  %xmm14,%xmm0
subss  %xmm12,%xmm5
subss  %xmm11,%xmm4
subss  %xmm14,%xmm3
movaps %xmm4,%xmm2
mulss  %xmm0,%xmm2
mulss  %xmm5,%xmm0
mulss  %xmm1,%xmm5
mulss  %xmm3,%xmm1
subss  %xmm2,%xmm1
movss  %xmm1,(%rsp)
mulss  %xmm6,%xmm3
subss  %xmm3,%xmm0
movss  %xmm0,0x4(%rsp)
mulss  %xmm6,%xmm4
subss  %xmm5,%xmm4
movss  %xmm4,0x8(%rsp)
movaps 0x70(%rsp),%xmm5
subss  %xmm12,%xmm5
movaps 0x50(%rsp),%xmm2
subss  %xmm11,%xmm2
movaps 0x60(%rsp),%xmm3
subss  %xmm14,%xmm3
mulss  %xmm0,%xmm2
mulss  %xmm1,%xmm5
addss  %xmm2,%xmm5
mulss  %xmm4,%xmm3
addss  %xmm5,%xmm3
jmp    6ede <tri_tri_overlap_test_3d+0x5dce>
ucomiss %xmm0,%xmm1
jbe    56f5 <tri_tri_overlap_test_3d+0x45e5>
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm10
movss  0x18(%rsp),%xmm14
movss  0x20(%rsp),%xmm9
movss  0x1c(%rsp),%xmm13
movaps 0xa0(%rsp),%xmm5
jbe    6686 <tri_tri_overlap_test_3d+0x5576>
movaps 0xf0(%rsp),%xmm7
subss  %xmm7,%xmm5
movaps 0x100(%rsp),%xmm11
movaps 0x80(%rsp),%xmm6
subss  %xmm11,%xmm6
movaps 0x110(%rsp),%xmm10
movaps 0x90(%rsp),%xmm0
subss  %xmm10,%xmm0
movaps 0xe0(%rsp),%xmm1
subss  %xmm11,%xmm1
movaps 0x40(%rsp),%xmm2
subss  %xmm10,%xmm2
movaps %xmm1,%xmm3
mulss  %xmm0,%xmm3
movaps %xmm6,%xmm4
mulss  %xmm2,%xmm4
subss  %xmm3,%xmm4
movaps 0x30(%rsp),%xmm3
subss  %xmm7,%xmm3
mulss  %xmm5,%xmm2
mulss  %xmm3,%xmm0
subss  %xmm2,%xmm0
mulss  %xmm6,%xmm3
mulss  %xmm5,%xmm1
subss  %xmm3,%xmm1
movaps 0x70(%rsp),%xmm2
subss  %xmm7,%xmm2
mulss  %xmm4,%xmm2
movaps 0x50(%rsp),%xmm3
subss  %xmm11,%xmm3
mulss  %xmm0,%xmm3
addss  %xmm2,%xmm3
movaps 0x60(%rsp),%xmm0
subss  %xmm10,%xmm0
mulss  %xmm1,%xmm0
addss  %xmm3,%xmm0
ucomiss %xmm8,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
subss  0x30(%rsp),%xmm13
subss  0xe0(%rsp),%xmm14
subss  0x40(%rsp),%xmm9
movaps %xmm14,%xmm0
movaps 0xd0(%rsp),%xmm2
mulss  %xmm2,%xmm0
movaps 0xb0(%rsp),%xmm3
movaps %xmm3,%xmm1
mulss  %xmm9,%xmm1
subss  %xmm0,%xmm1
movss  %xmm1,(%rsp)
movaps 0xc0(%rsp),%xmm0
mulss  %xmm0,%xmm9
mulss  %xmm13,%xmm2
subss  %xmm9,%xmm2
movss  %xmm2,0x4(%rsp)
mulss  %xmm3,%xmm13
mulss  %xmm0,%xmm14
subss  %xmm13,%xmm14
movss  %xmm14,0x8(%rsp)
movss  0x24(%rsp),%xmm3
mulss  %xmm2,%xmm3
movss  0x28(%rsp),%xmm0
mulss  %xmm1,%xmm0
addss  %xmm3,%xmm0
movss  0x2c(%rsp),%xmm1
mulss  %xmm14,%xmm1
jmp    5867 <tri_tri_overlap_test_3d+0x4757>
ucomiss %xmm14,%xmm0
jbe    5870 <tri_tri_overlap_test_3d+0x4760>
xorps  %xmm14,%xmm14
ucomiss %xmm1,%xmm14
jbe    67d2 <tri_tri_overlap_test_3d+0x56c2>
movss  0xc(%rsp),%xmm3
movaps 0x100(%rsp),%xmm0
subss  %xmm0,%xmm3
movss  0x10(%rsp),%xmm2
movaps 0x110(%rsp),%xmm15
subss  %xmm15,%xmm2
movss  0x1c(%rsp),%xmm9
movaps %xmm9,%xmm4
movaps 0xf0(%rsp),%xmm7
subss  %xmm7,%xmm4
movss  0x18(%rsp),%xmm13
movaps %xmm13,%xmm1
subss  %xmm0,%xmm1
movss  0x20(%rsp),%xmm8
movaps %xmm8,%xmm5
subss  %xmm15,%xmm5
movaps %xmm1,%xmm6
mulss  %xmm2,%xmm6
mulss  %xmm4,%xmm2
mulss  %xmm3,%xmm4
mulss  %xmm5,%xmm3
subss  %xmm6,%xmm3
movss  0x14(%rsp),%xmm6
subss  %xmm7,%xmm6
mulss  %xmm6,%xmm5
subss  %xmm5,%xmm2
mulss  %xmm6,%xmm1
subss  %xmm4,%xmm1
movaps 0xa0(%rsp),%xmm4
subss  %xmm7,%xmm4
mulss  %xmm3,%xmm4
movaps 0x80(%rsp),%xmm3
subss  %xmm0,%xmm3
mulss  %xmm2,%xmm3
addss  %xmm4,%xmm3
movaps 0x90(%rsp),%xmm0
subss  %xmm15,%xmm0
mulss  %xmm1,%xmm0
addss  %xmm3,%xmm0
ucomiss %xmm14,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x14(%rsp),%xmm3
subss  %xmm9,%xmm3
movss  0xc(%rsp),%xmm4
subss  %xmm13,%xmm4
movss  0x10(%rsp),%xmm0
subss  %xmm8,%xmm0
movaps 0x160(%rsp),%xmm5
movaps %xmm5,%xmm1
mulss  %xmm0,%xmm1
movaps %xmm4,%xmm2
mulss  %xmm11,%xmm2
subss  %xmm1,%xmm2
movss  %xmm2,(%rsp)
mulss  %xmm3,%xmm11
movaps 0x150(%rsp),%xmm1
mulss  %xmm1,%xmm0
subss  %xmm11,%xmm0
movss  %xmm0,0x4(%rsp)
mulss  %xmm1,%xmm4
mulss  %xmm5,%xmm3
subss  %xmm4,%xmm3
movss  %xmm3,0x8(%rsp)
movaps 0x70(%rsp),%xmm4
subss  %xmm9,%xmm4
movaps 0x50(%rsp),%xmm5
subss  %xmm13,%xmm5
movaps 0x60(%rsp),%xmm1
subss  %xmm8,%xmm1
jmp    9d68 <tri_tri_overlap_test_3d+0x8c58>
ucomiss %xmm10,%xmm0
jbe    59f0 <tri_tri_overlap_test_3d+0x48e0>
xorps  %xmm14,%xmm14
ucomiss %xmm14,%xmm1
jae    6951 <tri_tri_overlap_test_3d+0x5841>
movaps 0x80(%rsp),%xmm3
movaps 0x100(%rsp),%xmm7
subss  %xmm7,%xmm3
movaps 0x90(%rsp),%xmm2
movaps 0x110(%rsp),%xmm15
subss  %xmm15,%xmm2
movss  0x1c(%rsp),%xmm9
movaps %xmm9,%xmm4
movaps 0xf0(%rsp),%xmm0
subss  %xmm0,%xmm4
movss  0x18(%rsp),%xmm13
movaps %xmm13,%xmm1
subss  %xmm7,%xmm1
movss  0x20(%rsp),%xmm8
movaps %xmm8,%xmm5
subss  %xmm15,%xmm5
movaps %xmm1,%xmm6
mulss  %xmm2,%xmm6
mulss  %xmm4,%xmm2
mulss  %xmm3,%xmm4
mulss  %xmm5,%xmm3
subss  %xmm6,%xmm3
movaps 0xa0(%rsp),%xmm6
subss  %xmm0,%xmm6
mulss  %xmm6,%xmm5
subss  %xmm5,%xmm2
mulss  %xmm6,%xmm1
subss  %xmm4,%xmm1
movss  0x14(%rsp),%xmm4
subss  %xmm0,%xmm4
mulss  %xmm3,%xmm4
movss  0xc(%rsp),%xmm3
subss  %xmm7,%xmm3
mulss  %xmm2,%xmm3
addss  %xmm4,%xmm3
movss  0x10(%rsp),%xmm0
subss  %xmm15,%xmm0
mulss  %xmm1,%xmm0
addss  %xmm3,%xmm0
ucomiss %xmm14,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm2
subss  %xmm9,%xmm2
movaps 0x80(%rsp),%xmm4
subss  %xmm13,%xmm4
movaps 0x90(%rsp),%xmm3
subss  %xmm8,%xmm3
movaps 0x160(%rsp),%xmm5
movaps %xmm5,%xmm0
mulss  %xmm3,%xmm0
movaps %xmm4,%xmm1
mulss  %xmm11,%xmm1
subss  %xmm0,%xmm1
movss  %xmm1,(%rsp)
mulss  %xmm2,%xmm11
movaps 0x150(%rsp),%xmm0
mulss  %xmm0,%xmm3
subss  %xmm11,%xmm3
movss  %xmm3,0x4(%rsp)
mulss  %xmm0,%xmm4
mulss  %xmm5,%xmm2
subss  %xmm4,%xmm2
movss  %xmm2,0x8(%rsp)
movaps 0x70(%rsp),%xmm0
subss  %xmm9,%xmm0
movaps 0x50(%rsp),%xmm5
subss  %xmm13,%xmm5
jmp    5ec4 <tri_tri_overlap_test_3d+0x4db4>
ucomiss %xmm3,%xmm0
jbe    b6a9 <tri_tri_overlap_test_3d+0xa599>
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm14
jbe    6aac <tri_tri_overlap_test_3d+0x599c>
ucomiss %xmm0,%xmm1
jbe    8242 <tri_tri_overlap_test_3d+0x7132>
movaps 0xf0(%rsp),%xmm6
movaps %xmm4,%xmm0
movss  0x14(%rsp),%xmm7
subss  %xmm6,%xmm7
movaps 0x100(%rsp),%xmm9
movss  0xc(%rsp),%xmm5
subss  %xmm9,%xmm5
movaps 0x110(%rsp),%xmm8
movss  0x10(%rsp),%xmm4
subss  %xmm8,%xmm4
subss  %xmm9,%xmm0
movaps 0x40(%rsp),%xmm1
subss  %xmm8,%xmm1
movaps %xmm0,%xmm2
mulss  %xmm4,%xmm2
movaps %xmm5,%xmm3
mulss  %xmm1,%xmm3
subss  %xmm2,%xmm3
movaps 0x30(%rsp),%xmm2
subss  %xmm6,%xmm2
mulss  %xmm7,%xmm1
mulss  %xmm2,%xmm4
subss  %xmm1,%xmm4
mulss  %xmm5,%xmm2
mulss  %xmm7,%xmm0
subss  %xmm2,%xmm0
movaps 0xa0(%rsp),%xmm1
subss  %xmm6,%xmm1
mulss  %xmm3,%xmm1
movaps 0x80(%rsp),%xmm2
subss  %xmm9,%xmm2
mulss  %xmm4,%xmm2
addss  %xmm1,%xmm2
movaps 0x90(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
movss  0x18(%rsp),%xmm3
movss  0x20(%rsp),%xmm4
movss  0x1c(%rsp),%xmm5
ja     14a7 <tri_tri_overlap_test_3d+0x397>
subss  0x30(%rsp),%xmm5
subss  0xe0(%rsp),%xmm3
subss  0x40(%rsp),%xmm4
movaps %xmm3,%xmm1
movss  0x2c(%rsp),%xmm6
mulss  %xmm6,%xmm1
movss  0x24(%rsp),%xmm7
movaps %xmm7,%xmm2
mulss  %xmm4,%xmm2
subss  %xmm1,%xmm2
movss  %xmm2,(%rsp)
movss  0x28(%rsp),%xmm1
mulss  %xmm1,%xmm4
mulss  %xmm5,%xmm6
subss  %xmm4,%xmm6
movss  %xmm6,0x4(%rsp)
mulss  %xmm7,%xmm5
mulss  %xmm1,%xmm3
subss  %xmm5,%xmm3
movss  %xmm3,0x8(%rsp)
jmp    161a <tri_tri_overlap_test_3d+0x50a>
xorps  %xmm14,%xmm14
ucomiss %xmm14,%xmm1
jbe    6c1f <tri_tri_overlap_test_3d+0x5b0f>
movss  0x1c(%rsp),%xmm10
movaps %xmm10,%xmm2
subss  0x30(%rsp),%xmm2
movss  0x18(%rsp),%xmm11
movaps %xmm11,%xmm1
subss  %xmm4,%xmm1
movss  0x20(%rsp),%xmm8
movaps %xmm8,%xmm3
subss  0x40(%rsp),%xmm3
movaps %xmm1,%xmm4
movss  0x2c(%rsp),%xmm5
mulss  %xmm5,%xmm4
movss  0x24(%rsp),%xmm7
movaps %xmm7,%xmm6
mulss  %xmm3,%xmm6
subss  %xmm4,%xmm6
movss  0x28(%rsp),%xmm0
mulss  %xmm0,%xmm3
mulss  %xmm2,%xmm5
subss  %xmm3,%xmm5
mulss  %xmm7,%xmm2
mulss  %xmm0,%xmm1
subss  %xmm2,%xmm1
movaps 0xb0(%rsp),%xmm0
shufps $0x55,%xmm0,%xmm0
mulss  %xmm5,%xmm0
movaps 0xc0(%rsp),%xmm2
shufps $0x55,%xmm2,%xmm2
mulss  %xmm6,%xmm2
addss  %xmm0,%xmm2
movaps 0xd0(%rsp),%xmm0
shufps $0x55,%xmm0,%xmm0
mulss  %xmm1,%xmm0
addss  %xmm2,%xmm0
ucomiss %xmm14,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x14(%rsp),%xmm6
subss  %xmm10,%xmm6
movss  0xc(%rsp),%xmm0
subss  %xmm11,%xmm0
movss  0x10(%rsp),%xmm1
subss  %xmm8,%xmm1
movaps 0x130(%rsp),%xmm4
movaps %xmm4,%xmm2
mulss  %xmm1,%xmm2
movaps %xmm0,%xmm3
movaps 0x120(%rsp),%xmm5
mulss  %xmm5,%xmm3
subss  %xmm2,%xmm3
movss  %xmm3,(%rsp)
mulss  %xmm6,%xmm5
movaps 0x140(%rsp),%xmm2
mulss  %xmm2,%xmm1
subss  %xmm5,%xmm1
movss  %xmm1,0x4(%rsp)
mulss  %xmm2,%xmm0
mulss  %xmm4,%xmm6
subss  %xmm0,%xmm6
movss  %xmm6,0x8(%rsp)
movaps 0xa0(%rsp),%xmm4
subss  %xmm10,%xmm4
movaps 0x80(%rsp),%xmm0
subss  %xmm11,%xmm0
movaps 0x90(%rsp),%xmm2
subss  %xmm8,%xmm2
mulss  %xmm1,%xmm0
mulss  %xmm3,%xmm4
addss  %xmm0,%xmm4
mulss  %xmm6,%xmm2
addss  %xmm4,%xmm2
jmp    199c <tri_tri_overlap_test_3d+0x88c>
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm1
jbe    6d9b <tri_tri_overlap_test_3d+0x5c8b>
movss  0xc(%rsp),%xmm1
movss  0x18(%rsp),%xmm13
subss  %xmm13,%xmm1
movss  0x10(%rsp),%xmm2
movss  0x20(%rsp),%xmm9
subss  %xmm9,%xmm2
movaps 0x130(%rsp),%xmm7
movaps %xmm7,%xmm3
mulss  %xmm2,%xmm3
movaps %xmm1,%xmm4
movaps 0x120(%rsp),%xmm6
mulss  %xmm6,%xmm4
subss  %xmm3,%xmm4
movss  0x14(%rsp),%xmm3
movss  0x1c(%rsp),%xmm0
subss  %xmm0,%xmm3
mulss  %xmm3,%xmm6
movaps 0x140(%rsp),%xmm5
mulss  %xmm5,%xmm2
subss  %xmm6,%xmm2
mulss  %xmm5,%xmm1
mulss  %xmm7,%xmm3
subss  %xmm1,%xmm3
movaps 0x70(%rsp),%xmm1
subss  %xmm0,%xmm1
mulss  %xmm4,%xmm1
movaps 0x50(%rsp),%xmm4
subss  %xmm13,%xmm4
mulss  %xmm2,%xmm4
addss  %xmm1,%xmm4
movaps 0x60(%rsp),%xmm0
subss  %xmm9,%xmm0
mulss  %xmm3,%xmm0
addss  %xmm4,%xmm0
ucomiss %xmm8,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x14(%rsp),%xmm2
subss  %xmm12,%xmm2
movss  0xc(%rsp),%xmm4
subss  %xmm11,%xmm4
movss  0x10(%rsp),%xmm3
subss  %xmm10,%xmm3
movaps 0x30(%rsp),%xmm7
subss  %xmm12,%xmm7
movaps 0xe0(%rsp),%xmm5
subss  %xmm11,%xmm5
movaps 0x40(%rsp),%xmm6
subss  %xmm10,%xmm6
movaps %xmm5,%xmm0
mulss  %xmm3,%xmm0
movaps %xmm4,%xmm1
mulss  %xmm6,%xmm1
subss  %xmm0,%xmm1
movss  %xmm1,(%rsp)
mulss  %xmm2,%xmm6
mulss  %xmm7,%xmm3
subss  %xmm6,%xmm3
movss  %xmm3,0x4(%rsp)
mulss  %xmm4,%xmm7
mulss  %xmm2,%xmm5
subss  %xmm7,%xmm5
movss  %xmm5,0x8(%rsp)
movaps 0xa0(%rsp),%xmm0
subss  %xmm12,%xmm0
movaps 0x80(%rsp),%xmm4
subss  %xmm11,%xmm4
movaps 0x90(%rsp),%xmm2
subss  %xmm10,%xmm2
jmp    1988 <tri_tri_overlap_test_3d+0x878>
xorps  %xmm0,%xmm0
ucomiss %xmm14,%xmm0
jbe    6eee <tri_tri_overlap_test_3d+0x5dde>
ucomiss %xmm1,%xmm0
jbe    83b8 <tri_tri_overlap_test_3d+0x72a8>
movss  0xc(%rsp),%xmm2
movaps 0x100(%rsp),%xmm7
subss  %xmm7,%xmm2
movss  0x10(%rsp),%xmm1
movaps 0x110(%rsp),%xmm14
subss  %xmm14,%xmm1
movss  0x1c(%rsp),%xmm8
movaps %xmm8,%xmm3
movaps 0xf0(%rsp),%xmm6
subss  %xmm6,%xmm3
movss  0x18(%rsp),%xmm9
movaps %xmm9,%xmm0
subss  %xmm7,%xmm0
movss  0x20(%rsp),%xmm13
movaps %xmm13,%xmm4
subss  %xmm14,%xmm4
movaps %xmm0,%xmm5
mulss  %xmm1,%xmm5
mulss  %xmm3,%xmm1
mulss  %xmm2,%xmm3
mulss  %xmm4,%xmm2
subss  %xmm5,%xmm2
movss  0x14(%rsp),%xmm5
subss  %xmm6,%xmm5
mulss  %xmm5,%xmm4
subss  %xmm4,%xmm1
mulss  %xmm5,%xmm0
subss  %xmm3,%xmm0
movaps 0xa0(%rsp),%xmm3
subss  %xmm6,%xmm3
mulss  %xmm2,%xmm3
movaps 0x80(%rsp),%xmm2
subss  %xmm7,%xmm2
mulss  %xmm1,%xmm2
addss  %xmm3,%xmm2
movaps 0x90(%rsp),%xmm1
subss  %xmm14,%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x14(%rsp),%xmm1
subss  %xmm8,%xmm1
movss  0xc(%rsp),%xmm2
subss  %xmm9,%xmm2
movss  0x10(%rsp),%xmm3
jmp    4d3a <tri_tri_overlap_test_3d+0x3c2a>
xorps  %xmm15,%xmm15
ucomiss %xmm10,%xmm15
movss  0x18(%rsp),%xmm6
movss  0x20(%rsp),%xmm8
movss  0x1c(%rsp),%xmm10
jbe    6ff9 <tri_tri_overlap_test_3d+0x5ee9>
movaps %xmm12,%xmm1
subss  0x30(%rsp),%xmm1
movaps %xmm11,%xmm2
subss  %xmm5,%xmm2
movaps %xmm14,%xmm3
subss  0x40(%rsp),%xmm3
movaps 0xd0(%rsp),%xmm5
shufps $0x55,%xmm5,%xmm5
movaps 0xb0(%rsp),%xmm4
shufps $0x55,%xmm4,%xmm4
movaps %xmm4,%xmm7
mulss  %xmm3,%xmm7
movaps 0xc0(%rsp),%xmm0
shufps $0x55,%xmm0,%xmm0
mulss  %xmm0,%xmm3
mulss  %xmm2,%xmm0
mulss  %xmm5,%xmm2
subss  %xmm2,%xmm7
mulss  %xmm1,%xmm5
subss  %xmm3,%xmm5
mulss  %xmm1,%xmm4
subss  %xmm4,%xmm0
movss  0x24(%rsp),%xmm1
mulss  %xmm5,%xmm1
movss  0x28(%rsp),%xmm2
mulss  %xmm7,%xmm2
addss  %xmm1,%xmm2
movss  0x2c(%rsp),%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
ucomiss %xmm15,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0x70(%rsp),%xmm2
subss  %xmm12,%xmm2
movaps 0x50(%rsp),%xmm4
subss  %xmm11,%xmm4
movaps 0x60(%rsp),%xmm3
subss  %xmm14,%xmm3
subss  %xmm12,%xmm10
subss  %xmm11,%xmm6
subss  %xmm14,%xmm8
movaps %xmm6,%xmm0
mulss  %xmm3,%xmm0
movaps %xmm4,%xmm1
mulss  %xmm8,%xmm1
subss  %xmm0,%xmm1
movss  %xmm1,(%rsp)
mulss  %xmm2,%xmm8
mulss  %xmm10,%xmm3
subss  %xmm8,%xmm3
movss  %xmm3,0x4(%rsp)
mulss  %xmm4,%xmm10
mulss  %xmm2,%xmm6
subss  %xmm10,%xmm6
movss  %xmm6,0x8(%rsp)
movaps 0xa0(%rsp),%xmm0
subss  %xmm12,%xmm0
movaps 0x80(%rsp),%xmm4
subss  %xmm11,%xmm4
movaps 0x90(%rsp),%xmm2
subss  %xmm14,%xmm2
mulss  %xmm3,%xmm4
mulss  %xmm1,%xmm0
addss  %xmm4,%xmm0
mulss  %xmm6,%xmm2
jmp    1998 <tri_tri_overlap_test_3d+0x888>
xorps  %xmm9,%xmm9
ucomiss %xmm9,%xmm10
movss  0x18(%rsp),%xmm14
movss  0x20(%rsp),%xmm8
movss  0x1c(%rsp),%xmm10
jbe    7140 <tri_tri_overlap_test_3d+0x6030>
movaps 0x50(%rsp),%xmm1
subss  %xmm14,%xmm1
movaps 0x60(%rsp),%xmm2
subss  %xmm8,%xmm2
movaps 0x130(%rsp),%xmm5
movaps %xmm5,%xmm3
mulss  %xmm2,%xmm3
movaps %xmm1,%xmm4
movaps 0x120(%rsp),%xmm6
mulss  %xmm6,%xmm4
subss  %xmm3,%xmm4
movaps 0x70(%rsp),%xmm3
subss  %xmm10,%xmm3
mulss  %xmm3,%xmm6
movaps 0x140(%rsp),%xmm0
mulss  %xmm0,%xmm2
subss  %xmm6,%xmm2
mulss  %xmm0,%xmm1
mulss  %xmm5,%xmm3
subss  %xmm1,%xmm3
movss  0x14(%rsp),%xmm1
subss  %xmm10,%xmm1
mulss  %xmm4,%xmm1
movss  0xc(%rsp),%xmm4
subss  %xmm14,%xmm4
mulss  %xmm2,%xmm4
addss  %xmm1,%xmm4
movss  0x10(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm3,%xmm1
addss  %xmm4,%xmm1
ucomiss %xmm9,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0x70(%rsp),%xmm3
subss  %xmm12,%xmm3
movaps 0x50(%rsp),%xmm1
subss  %xmm11,%xmm1
movaps 0x60(%rsp),%xmm0
subss  %xmm15,%xmm0
movaps 0x30(%rsp),%xmm6
subss  %xmm12,%xmm6
movaps 0xe0(%rsp),%xmm5
subss  %xmm11,%xmm5
movaps 0x40(%rsp),%xmm4
subss  %xmm15,%xmm4
movaps %xmm5,%xmm2
mulss  %xmm0,%xmm2
mulss  %xmm6,%xmm0
mulss  %xmm1,%xmm6
mulss  %xmm4,%xmm1
subss  %xmm2,%xmm1
movss  %xmm1,(%rsp)
mulss  %xmm3,%xmm4
subss  %xmm4,%xmm0
movss  %xmm0,0x4(%rsp)
mulss  %xmm3,%xmm5
subss  %xmm6,%xmm5
movss  %xmm5,0x8(%rsp)
movaps 0xa0(%rsp),%xmm3
subss  %xmm12,%xmm3
movaps 0x80(%rsp),%xmm4
subss  %xmm11,%xmm4
movaps 0x90(%rsp),%xmm2
subss  %xmm15,%xmm2
mulss  %xmm0,%xmm4
mulss  %xmm1,%xmm3
addss  %xmm4,%xmm3
mulss  %xmm5,%xmm2
addss  %xmm3,%xmm2
jmp    199c <tri_tri_overlap_test_3d+0x88c>
movaps 0xf0(%rsp),%xmm6
movaps 0x70(%rsp),%xmm7
subss  %xmm6,%xmm7
movaps 0x100(%rsp),%xmm9
movaps 0x50(%rsp),%xmm5
subss  %xmm9,%xmm5
movaps 0x110(%rsp),%xmm8
movaps 0x60(%rsp),%xmm4
subss  %xmm8,%xmm4
movaps 0xe0(%rsp),%xmm0
subss  %xmm9,%xmm0
movaps 0x40(%rsp),%xmm1
subss  %xmm8,%xmm1
movaps %xmm0,%xmm2
mulss  %xmm4,%xmm2
movaps %xmm5,%xmm3
mulss  %xmm1,%xmm3
subss  %xmm2,%xmm3
movaps 0x30(%rsp),%xmm2
subss  %xmm6,%xmm2
mulss  %xmm7,%xmm1
mulss  %xmm2,%xmm4
subss  %xmm1,%xmm4
mulss  %xmm5,%xmm2
mulss  %xmm7,%xmm0
subss  %xmm2,%xmm0
movss  0x14(%rsp),%xmm1
subss  %xmm6,%xmm1
mulss  %xmm3,%xmm1
movss  0xc(%rsp),%xmm2
subss  %xmm9,%xmm2
mulss  %xmm4,%xmm2
addss  %xmm1,%xmm2
movss  0x10(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm1
movss  0x18(%rsp),%xmm5
movss  0x20(%rsp),%xmm6
movss  0x1c(%rsp),%xmm7
ja     14a7 <tri_tri_overlap_test_3d+0x397>
subss  0x30(%rsp),%xmm7
subss  0xe0(%rsp),%xmm5
subss  0x40(%rsp),%xmm6
movaps 0xd0(%rsp),%xmm9
movaps %xmm9,%xmm1
shufps $0x55,%xmm9,%xmm1
movaps %xmm5,%xmm2
mulss  %xmm1,%xmm2
movaps 0xb0(%rsp),%xmm10
movaps %xmm10,%xmm3
shufps $0x55,%xmm10,%xmm3
movaps %xmm3,%xmm4
mulss  %xmm6,%xmm4
subss  %xmm2,%xmm4
movss  %xmm4,(%rsp)
movaps 0xc0(%rsp),%xmm0
movaps %xmm0,%xmm2
shufps $0x55,%xmm0,%xmm2
mulss  %xmm2,%xmm6
mulss  %xmm7,%xmm1
subss  %xmm6,%xmm1
movss  %xmm1,0x4(%rsp)
mulss  %xmm7,%xmm3
mulss  %xmm5,%xmm2
subss  %xmm3,%xmm2
movss  %xmm2,0x8(%rsp)
mulss  %xmm10,%xmm1
mulss  %xmm0,%xmm4
addss  %xmm1,%xmm4
mulss  %xmm9,%xmm2
jmp    b832 <tri_tri_overlap_test_3d+0xa722>
xorps  %xmm12,%xmm12
ucomiss %xmm12,%xmm10
movss  0x18(%rsp),%xmm14
movss  0x20(%rsp),%xmm8
movss  0x1c(%rsp),%xmm15
jbe    7279 <tri_tri_overlap_test_3d+0x6169>
movaps %xmm15,%xmm1
subss  0x30(%rsp),%xmm1
movaps %xmm14,%xmm2
subss  %xmm4,%xmm2
movaps %xmm8,%xmm3
subss  0x40(%rsp),%xmm3
movaps 0xd0(%rsp),%xmm0
shufps $0x55,%xmm0,%xmm0
movaps 0xb0(%rsp),%xmm6
shufps $0x55,%xmm6,%xmm6
movaps %xmm6,%xmm4
mulss  %xmm3,%xmm4
movaps 0xc0(%rsp),%xmm5
shufps $0x55,%xmm5,%xmm5
mulss  %xmm5,%xmm3
mulss  %xmm2,%xmm5
mulss  %xmm0,%xmm2
subss  %xmm2,%xmm4
mulss  %xmm1,%xmm0
subss  %xmm3,%xmm0
mulss  %xmm1,%xmm6
subss  %xmm6,%xmm5
movss  0x24(%rsp),%xmm2
mulss  %xmm0,%xmm2
movss  0x28(%rsp),%xmm1
mulss  %xmm4,%xmm1
addss  %xmm2,%xmm1
movss  0x2c(%rsp),%xmm0
mulss  %xmm5,%xmm0
addss  %xmm1,%xmm0
ucomiss %xmm12,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0x70(%rsp),%xmm4
subss  %xmm15,%xmm4
movaps 0x50(%rsp),%xmm3
subss  %xmm14,%xmm3
movaps 0x60(%rsp),%xmm0
subss  %xmm8,%xmm0
movaps 0x130(%rsp),%xmm5
movaps %xmm5,%xmm1
mulss  %xmm0,%xmm1
movaps %xmm3,%xmm2
movaps 0x120(%rsp),%xmm6
mulss  %xmm6,%xmm2
subss  %xmm1,%xmm2
movss  %xmm2,(%rsp)
mulss  %xmm4,%xmm6
movaps 0x140(%rsp),%xmm1
mulss  %xmm1,%xmm0
subss  %xmm6,%xmm0
jmp    acd1 <tri_tri_overlap_test_3d+0x9bc1>
xorps  %xmm0,%xmm0
ucomiss %xmm14,%xmm0
jbe    7393 <tri_tri_overlap_test_3d+0x6283>
ucomiss %xmm10,%xmm0
jbe    8520 <tri_tri_overlap_test_3d+0x7410>
movss  0x1c(%rsp),%xmm4
movaps 0x70(%rsp),%xmm5
subss  %xmm4,%xmm5
movss  0x18(%rsp),%xmm2
movaps 0x50(%rsp),%xmm7
subss  %xmm2,%xmm7
movss  0x20(%rsp),%xmm8
movaps 0x60(%rsp),%xmm6
subss  %xmm8,%xmm6
movaps 0x160(%rsp),%xmm3
movaps %xmm3,%xmm0
mulss  %xmm6,%xmm0
movaps %xmm7,%xmm1
mulss  %xmm11,%xmm1
subss  %xmm0,%xmm1
mulss  %xmm5,%xmm11
movaps 0x150(%rsp),%xmm0
mulss  %xmm0,%xmm6
subss  %xmm11,%xmm6
mulss  %xmm0,%xmm7
mulss  %xmm3,%xmm5
subss  %xmm7,%xmm5
movaps 0xa0(%rsp),%xmm0
subss  %xmm4,%xmm0
mulss  %xmm1,%xmm0
movaps 0x80(%rsp),%xmm4
subss  %xmm2,%xmm4
mulss  %xmm6,%xmm4
addss  %xmm0,%xmm4
movaps 0x90(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm5,%xmm1
addss  %xmm4,%xmm1
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
movaps 0x110(%rsp),%xmm3
movaps 0x100(%rsp),%xmm4
movaps 0xf0(%rsp),%xmm5
ja     14a7 <tri_tri_overlap_test_3d+0x397>
jmp    790c <tri_tri_overlap_test_3d+0x67fc>
movss  0x1c(%rsp),%xmm4
movaps 0xa0(%rsp),%xmm5
subss  %xmm4,%xmm5
movss  0x18(%rsp),%xmm2
movaps 0x80(%rsp),%xmm7
subss  %xmm2,%xmm7
movss  0x20(%rsp),%xmm8
movaps 0x90(%rsp),%xmm6
subss  %xmm8,%xmm6
movaps 0x160(%rsp),%xmm3
movaps %xmm3,%xmm0
mulss  %xmm6,%xmm0
movaps %xmm7,%xmm1
mulss  %xmm11,%xmm1
subss  %xmm0,%xmm1
mulss  %xmm5,%xmm11
movaps 0x150(%rsp),%xmm0
mulss  %xmm0,%xmm6
subss  %xmm11,%xmm6
mulss  %xmm0,%xmm7
mulss  %xmm3,%xmm5
subss  %xmm7,%xmm5
movss  0x14(%rsp),%xmm0
subss  %xmm4,%xmm0
mulss  %xmm1,%xmm0
movss  0xc(%rsp),%xmm4
subss  %xmm2,%xmm4
mulss  %xmm6,%xmm4
addss  %xmm0,%xmm4
movss  0x10(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm5,%xmm1
addss  %xmm4,%xmm1
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm1
movaps 0x110(%rsp),%xmm4
movaps 0x100(%rsp),%xmm3
movaps 0xf0(%rsp),%xmm5
jbe    9a30 <tri_tri_overlap_test_3d+0x8920>
jmp    14a7 <tri_tri_overlap_test_3d+0x397>
movaps %xmm12,%xmm0
subss  0x30(%rsp),%xmm0
movaps %xmm11,%xmm1
subss  %xmm5,%xmm1
movaps %xmm14,%xmm2
subss  0x40(%rsp),%xmm2
movaps 0xc0(%rsp),%xmm3
movaps %xmm3,%xmm7
mulss  %xmm1,%xmm7
movaps 0xd0(%rsp),%xmm5
mulss  %xmm5,%xmm1
movaps 0xb0(%rsp),%xmm4
movaps %xmm4,%xmm6
mulss  %xmm2,%xmm6
subss  %xmm1,%xmm6
mulss  %xmm3,%xmm2
movaps %xmm5,%xmm1
mulss  %xmm0,%xmm1
subss  %xmm2,%xmm1
mulss  %xmm4,%xmm0
subss  %xmm0,%xmm7
shufps $0x55,%xmm4,%xmm4
mulss  %xmm1,%xmm4
shufps $0x55,%xmm3,%xmm3
mulss  %xmm6,%xmm3
addss  %xmm4,%xmm3
shufps $0x55,%xmm5,%xmm5
mulss  %xmm7,%xmm5
addss  %xmm3,%xmm5
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm5
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm3
subss  %xmm12,%xmm3
movaps 0x80(%rsp),%xmm5
subss  %xmm11,%xmm5
movaps 0x90(%rsp),%xmm4
subss  %xmm14,%xmm4
subss  %xmm12,%xmm10
subss  %xmm11,%xmm15
subss  %xmm14,%xmm8
movaps %xmm15,%xmm1
mulss  %xmm4,%xmm1
movaps %xmm5,%xmm2
mulss  %xmm8,%xmm2
subss  %xmm1,%xmm2
movss  %xmm2,(%rsp)
mulss  %xmm3,%xmm8
mulss  %xmm10,%xmm4
subss  %xmm8,%xmm4
movss  %xmm4,0x4(%rsp)
mulss  %xmm5,%xmm10
mulss  %xmm3,%xmm15
subss  %xmm10,%xmm15
movss  %xmm15,0x8(%rsp)
movss  0x14(%rsp),%xmm1
subss  %xmm12,%xmm1
movss  0xc(%rsp),%xmm5
subss  %xmm11,%xmm5
movss  0x10(%rsp),%xmm3
subss  %xmm14,%xmm3
mulss  %xmm4,%xmm5
mulss  %xmm2,%xmm1
addss  %xmm5,%xmm1
mulss  %xmm15,%xmm3
jmp    7b05 <tri_tri_overlap_test_3d+0x69f5>
xorps  %xmm0,%xmm0
ucomiss %xmm10,%xmm0
jbe    747a <tri_tri_overlap_test_3d+0x636a>
ucomiss %xmm0,%xmm1
jae    867a <tri_tri_overlap_test_3d+0x756a>
movaps 0x80(%rsp),%xmm2
movaps 0x100(%rsp),%xmm7
subss  %xmm7,%xmm2
movaps 0x90(%rsp),%xmm1
movaps 0x110(%rsp),%xmm14
subss  %xmm14,%xmm1
movss  0x1c(%rsp),%xmm8
movaps %xmm8,%xmm3
movaps 0xf0(%rsp),%xmm6
subss  %xmm6,%xmm3
movss  0x18(%rsp),%xmm9
movaps %xmm9,%xmm0
subss  %xmm7,%xmm0
movss  0x20(%rsp),%xmm13
movaps %xmm13,%xmm4
subss  %xmm14,%xmm4
movaps %xmm0,%xmm5
mulss  %xmm1,%xmm5
mulss  %xmm3,%xmm1
mulss  %xmm2,%xmm3
mulss  %xmm4,%xmm2
subss  %xmm5,%xmm2
movaps 0xa0(%rsp),%xmm5
subss  %xmm6,%xmm5
mulss  %xmm5,%xmm4
subss  %xmm4,%xmm1
mulss  %xmm5,%xmm0
subss  %xmm3,%xmm0
movss  0x14(%rsp),%xmm3
subss  %xmm6,%xmm3
mulss  %xmm2,%xmm3
movss  0xc(%rsp),%xmm2
subss  %xmm7,%xmm2
mulss  %xmm1,%xmm2
addss  %xmm3,%xmm2
movss  0x10(%rsp),%xmm1
subss  %xmm14,%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm1
subss  %xmm8,%xmm1
movaps 0x80(%rsp),%xmm2
subss  %xmm9,%xmm2
movaps 0x90(%rsp),%xmm3
subss  %xmm13,%xmm3
movaps 0x160(%rsp),%xmm6
movaps %xmm6,%xmm4
mulss  %xmm3,%xmm4
movaps %xmm2,%xmm5
mulss  %xmm11,%xmm5
subss  %xmm4,%xmm5
movss  %xmm5,(%rsp)
mulss  %xmm1,%xmm11
movaps 0x150(%rsp),%xmm4
mulss  %xmm4,%xmm3
subss  %xmm11,%xmm3
movss  %xmm3,0x4(%rsp)
mulss  %xmm4,%xmm2
mulss  %xmm6,%xmm1
subss  %xmm2,%xmm1
movss  %xmm1,0x8(%rsp)
movaps 0x70(%rsp),%xmm2
subss  %xmm8,%xmm2
movaps 0x50(%rsp),%xmm4
subss  %xmm9,%xmm4
movaps 0x60(%rsp),%xmm6
subss  %xmm13,%xmm6
jmp    bfd7 <tri_tri_overlap_test_3d+0xaec7>
movaps 0xf0(%rsp),%xmm6
subss  %xmm6,%xmm4
movaps 0x100(%rsp),%xmm11
movaps 0x80(%rsp),%xmm5
subss  %xmm11,%xmm5
movaps 0x110(%rsp),%xmm10
movaps 0x90(%rsp),%xmm7
subss  %xmm10,%xmm7
movaps 0xe0(%rsp),%xmm0
subss  %xmm11,%xmm0
movaps 0x40(%rsp),%xmm1
subss  %xmm10,%xmm1
movaps %xmm0,%xmm2
mulss  %xmm7,%xmm2
movaps %xmm5,%xmm3
mulss  %xmm1,%xmm3
subss  %xmm2,%xmm3
movaps 0x30(%rsp),%xmm2
subss  %xmm6,%xmm2
mulss  %xmm4,%xmm1
mulss  %xmm2,%xmm7
subss  %xmm1,%xmm7
mulss  %xmm5,%xmm2
mulss  %xmm4,%xmm0
subss  %xmm2,%xmm0
movaps 0x70(%rsp),%xmm1
subss  %xmm6,%xmm1
mulss  %xmm3,%xmm1
movaps 0x50(%rsp),%xmm2
subss  %xmm11,%xmm2
mulss  %xmm7,%xmm2
addss  %xmm1,%xmm2
movaps 0x60(%rsp),%xmm1
subss  %xmm10,%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
subss  0x30(%rsp),%xmm9
subss  0xe0(%rsp),%xmm13
subss  0x40(%rsp),%xmm8
movaps %xmm13,%xmm1
movaps 0xd0(%rsp),%xmm3
mulss  %xmm3,%xmm1
movaps 0xb0(%rsp),%xmm4
movaps %xmm4,%xmm2
mulss  %xmm8,%xmm2
subss  %xmm1,%xmm2
movss  %xmm2,(%rsp)
movaps 0xc0(%rsp),%xmm1
mulss  %xmm1,%xmm8
mulss  %xmm9,%xmm3
subss  %xmm8,%xmm3
movss  %xmm3,0x4(%rsp)
mulss  %xmm4,%xmm9
mulss  %xmm1,%xmm13
subss  %xmm9,%xmm13
movss  %xmm13,0x8(%rsp)
movss  0x24(%rsp),%xmm1
mulss  %xmm3,%xmm1
movss  0x28(%rsp),%xmm3
mulss  %xmm2,%xmm3
addss  %xmm1,%xmm3
movss  0x2c(%rsp),%xmm1
mulss  %xmm13,%xmm1
addss  %xmm3,%xmm1
jmp    ad27 <tri_tri_overlap_test_3d+0x9c17>
xorps  %xmm0,%xmm0
ucomiss %xmm10,%xmm0
jbe    75c4 <tri_tri_overlap_test_3d+0x64b4>
ucomiss %xmm0,%xmm1
jae    87c4 <tri_tri_overlap_test_3d+0x76b4>
movaps %xmm12,%xmm0
subss  0x30(%rsp),%xmm0
movaps %xmm11,%xmm1
subss  %xmm4,%xmm1
movaps %xmm14,%xmm2
subss  0x40(%rsp),%xmm2
movaps %xmm1,%xmm3
movaps 0xd0(%rsp),%xmm5
mulss  %xmm5,%xmm3
movaps 0xb0(%rsp),%xmm6
movaps %xmm6,%xmm4
mulss  %xmm2,%xmm4
subss  %xmm3,%xmm4
movaps 0xc0(%rsp),%xmm3
mulss  %xmm3,%xmm2
mulss  %xmm0,%xmm5
subss  %xmm2,%xmm5
mulss  %xmm6,%xmm0
mulss  %xmm3,%xmm1
subss  %xmm0,%xmm1
movss  0x24(%rsp),%xmm0
mulss  %xmm5,%xmm0
movss  0x28(%rsp),%xmm2
mulss  %xmm4,%xmm2
addss  %xmm0,%xmm2
movss  0x2c(%rsp),%xmm0
mulss  %xmm1,%xmm0
addss  %xmm2,%xmm0
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm0
movss  0x18(%rsp),%xmm4
movss  0x20(%rsp),%xmm5
movss  0x1c(%rsp),%xmm6
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm7
subss  %xmm12,%xmm7
movaps 0x80(%rsp),%xmm0
subss  %xmm11,%xmm0
movaps 0x90(%rsp),%xmm1
subss  %xmm14,%xmm1
subss  %xmm12,%xmm6
subss  %xmm11,%xmm4
subss  %xmm14,%xmm5
movaps %xmm4,%xmm2
mulss  %xmm1,%xmm2
movaps %xmm0,%xmm3
mulss  %xmm5,%xmm3
subss  %xmm2,%xmm3
movss  %xmm3,(%rsp)
mulss  %xmm7,%xmm5
mulss  %xmm6,%xmm1
subss  %xmm5,%xmm1
movss  %xmm1,0x4(%rsp)
mulss  %xmm0,%xmm6
mulss  %xmm7,%xmm4
subss  %xmm6,%xmm4
movss  %xmm4,0x8(%rsp)
movaps 0x70(%rsp),%xmm5
subss  %xmm12,%xmm5
movaps 0x50(%rsp),%xmm0
subss  %xmm11,%xmm0
movaps 0x60(%rsp),%xmm2
subss  %xmm14,%xmm2
mulss  %xmm1,%xmm0
mulss  %xmm3,%xmm5
addss  %xmm0,%xmm5
mulss  %xmm4,%xmm2
addss  %xmm5,%xmm2
jmp    b836 <tri_tri_overlap_test_3d+0xa726>
movaps 0x80(%rsp),%xmm2
movaps 0x100(%rsp),%xmm7
subss  %xmm7,%xmm2
movaps 0x90(%rsp),%xmm1
movaps 0x110(%rsp),%xmm14
subss  %xmm14,%xmm1
movss  0x1c(%rsp),%xmm8
movaps %xmm8,%xmm3
movaps 0xf0(%rsp),%xmm6
subss  %xmm6,%xmm3
movss  0x18(%rsp),%xmm9
movaps %xmm9,%xmm0
subss  %xmm7,%xmm0
movss  0x20(%rsp),%xmm13
movaps %xmm13,%xmm4
subss  %xmm14,%xmm4
movaps %xmm0,%xmm5
mulss  %xmm1,%xmm5
mulss  %xmm3,%xmm1
mulss  %xmm2,%xmm3
mulss  %xmm4,%xmm2
subss  %xmm5,%xmm2
movaps 0xa0(%rsp),%xmm5
subss  %xmm6,%xmm5
mulss  %xmm5,%xmm4
subss  %xmm4,%xmm1
mulss  %xmm5,%xmm0
subss  %xmm3,%xmm0
movss  0x14(%rsp),%xmm3
subss  %xmm6,%xmm3
mulss  %xmm2,%xmm3
movss  0xc(%rsp),%xmm2
subss  %xmm7,%xmm2
mulss  %xmm1,%xmm2
addss  %xmm3,%xmm2
movss  0x10(%rsp),%xmm1
subss  %xmm14,%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm3
subss  %xmm8,%xmm3
movaps 0x80(%rsp),%xmm5
subss  %xmm9,%xmm5
movaps 0x90(%rsp),%xmm4
subss  %xmm13,%xmm4
movaps 0x160(%rsp),%xmm6
movaps %xmm6,%xmm1
mulss  %xmm4,%xmm1
movaps %xmm5,%xmm2
mulss  %xmm11,%xmm2
subss  %xmm1,%xmm2
movss  %xmm2,(%rsp)
mulss  %xmm3,%xmm11
movaps 0x150(%rsp),%xmm1
mulss  %xmm1,%xmm4
subss  %xmm11,%xmm4
movss  %xmm4,0x4(%rsp)
mulss  %xmm1,%xmm5
mulss  %xmm6,%xmm3
subss  %xmm5,%xmm3
movss  %xmm3,0x8(%rsp)
movaps 0x70(%rsp),%xmm1
subss  %xmm8,%xmm1
movaps 0x50(%rsp),%xmm6
subss  %xmm9,%xmm6
movaps 0x60(%rsp),%xmm5
subss  %xmm13,%xmm5
mulss  %xmm4,%xmm6
mulss  %xmm2,%xmm1
addss  %xmm6,%xmm1
mulss  %xmm3,%xmm5
addss  %xmm1,%xmm5
jmp    c54c <tri_tri_overlap_test_3d+0xb43c>
xorps  %xmm0,%xmm0
ucomiss %xmm14,%xmm0
movaps 0x110(%rsp),%xmm14
movaps 0x100(%rsp),%xmm11
movaps 0xf0(%rsp),%xmm12
jbe    774c <tri_tri_overlap_test_3d+0x663c>
ucomiss %xmm10,%xmm0
ja     b84d <tri_tri_overlap_test_3d+0xa73d>
xorps  %xmm8,%xmm8
ucomiss %xmm1,%xmm8
jbe    a283 <tri_tri_overlap_test_3d+0x9173>
movaps %xmm12,%xmm2
subss  0x30(%rsp),%xmm2
movaps %xmm11,%xmm1
subss  %xmm4,%xmm1
movaps %xmm14,%xmm3
subss  0x40(%rsp),%xmm3
movaps %xmm1,%xmm4
movss  0x2c(%rsp),%xmm6
mulss  %xmm6,%xmm4
movss  0x24(%rsp),%xmm7
movaps %xmm7,%xmm5
mulss  %xmm3,%xmm5
subss  %xmm4,%xmm5
movss  0x28(%rsp),%xmm0
mulss  %xmm0,%xmm3
mulss  %xmm2,%xmm6
subss  %xmm3,%xmm6
mulss  %xmm7,%xmm2
mulss  %xmm0,%xmm1
subss  %xmm2,%xmm1
movaps 0xb0(%rsp),%xmm0
shufps $0x55,%xmm0,%xmm0
mulss  %xmm6,%xmm0
movaps 0xc0(%rsp),%xmm2
shufps $0x55,%xmm2,%xmm2
mulss  %xmm5,%xmm2
addss  %xmm0,%xmm2
movaps 0xd0(%rsp),%xmm0
shufps $0x55,%xmm0,%xmm0
mulss  %xmm1,%xmm0
addss  %xmm2,%xmm0
ucomiss %xmm8,%xmm0
movss  0x18(%rsp),%xmm5
movss  0x20(%rsp),%xmm4
movss  0x1c(%rsp),%xmm6
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x14(%rsp),%xmm1
subss  %xmm12,%xmm1
movss  0xc(%rsp),%xmm2
subss  %xmm11,%xmm2
movss  0x10(%rsp),%xmm0
subss  %xmm14,%xmm0
subss  %xmm12,%xmm6
subss  %xmm11,%xmm5
jmp    aa09 <tri_tri_overlap_test_3d+0x98f9>
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm10
jbe    783a <tri_tri_overlap_test_3d+0x672a>
ucomiss %xmm0,%xmm1
jbe    891d <tri_tri_overlap_test_3d+0x780d>
movaps 0xf0(%rsp),%xmm6
movaps 0xa0(%rsp),%xmm7
subss  %xmm6,%xmm7
movaps 0x100(%rsp),%xmm9
movaps 0x80(%rsp),%xmm5
subss  %xmm9,%xmm5
movaps 0x110(%rsp),%xmm8
movaps 0x90(%rsp),%xmm4
subss  %xmm8,%xmm4
movaps 0xe0(%rsp),%xmm0
subss  %xmm9,%xmm0
movaps 0x40(%rsp),%xmm1
subss  %xmm8,%xmm1
movaps %xmm0,%xmm2
mulss  %xmm4,%xmm2
movaps %xmm5,%xmm3
mulss  %xmm1,%xmm3
subss  %xmm2,%xmm3
movaps 0x30(%rsp),%xmm2
subss  %xmm6,%xmm2
mulss  %xmm7,%xmm1
mulss  %xmm2,%xmm4
subss  %xmm1,%xmm4
mulss  %xmm5,%xmm2
mulss  %xmm7,%xmm0
subss  %xmm2,%xmm0
movss  0x14(%rsp),%xmm1
subss  %xmm6,%xmm1
mulss  %xmm3,%xmm1
movss  0xc(%rsp),%xmm2
subss  %xmm9,%xmm2
mulss  %xmm4,%xmm2
addss  %xmm1,%xmm2
movss  0x10(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm1
movss  0x18(%rsp),%xmm3
movss  0x20(%rsp),%xmm4
movss  0x1c(%rsp),%xmm5
ja     14a7 <tri_tri_overlap_test_3d+0x397>
jmp    9a30 <tri_tri_overlap_test_3d+0x8920>
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
jbe    79ab <tri_tri_overlap_test_3d+0x689b>
ucomiss %xmm0,%xmm10
movss  0x18(%rsp),%xmm4
movss  0x20(%rsp),%xmm10
movss  0x1c(%rsp),%xmm15
jbe    89e5 <tri_tri_overlap_test_3d+0x78d5>
movaps 0x80(%rsp),%xmm0
subss  %xmm4,%xmm0
movaps 0x90(%rsp),%xmm1
subss  %xmm10,%xmm1
movaps 0x130(%rsp),%xmm6
movaps %xmm6,%xmm2
mulss  %xmm1,%xmm2
movaps %xmm0,%xmm3
movaps 0x120(%rsp),%xmm7
mulss  %xmm7,%xmm3
subss  %xmm2,%xmm3
movaps 0xa0(%rsp),%xmm2
subss  %xmm15,%xmm2
mulss  %xmm2,%xmm7
movaps 0x140(%rsp),%xmm5
mulss  %xmm5,%xmm1
subss  %xmm7,%xmm1
mulss  %xmm5,%xmm0
mulss  %xmm6,%xmm2
subss  %xmm0,%xmm2
movaps 0x70(%rsp),%xmm0
subss  %xmm15,%xmm0
mulss  %xmm3,%xmm0
movaps 0x50(%rsp),%xmm3
subss  %xmm4,%xmm3
mulss  %xmm1,%xmm3
addss  %xmm0,%xmm3
movaps 0x60(%rsp),%xmm1
subss  %xmm10,%xmm1
mulss  %xmm2,%xmm1
addss  %xmm3,%xmm1
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm3
subss  %xmm12,%xmm3
movaps 0x80(%rsp),%xmm5
subss  %xmm11,%xmm5
movaps 0x90(%rsp),%xmm4
subss  %xmm14,%xmm4
movaps 0x30(%rsp),%xmm0
subss  %xmm12,%xmm0
movaps 0xe0(%rsp),%xmm6
subss  %xmm11,%xmm6
movaps 0x40(%rsp),%xmm7
subss  %xmm14,%xmm7
movaps %xmm6,%xmm1
mulss  %xmm4,%xmm1
movaps %xmm5,%xmm2
mulss  %xmm7,%xmm2
subss  %xmm1,%xmm2
movss  %xmm2,(%rsp)
mulss  %xmm3,%xmm7
mulss  %xmm0,%xmm4
subss  %xmm7,%xmm4
movss  %xmm4,0x4(%rsp)
mulss  %xmm5,%xmm0
mulss  %xmm3,%xmm6
subss  %xmm0,%xmm6
movss  %xmm6,0x8(%rsp)
movss  0x14(%rsp),%xmm1
subss  %xmm12,%xmm1
movss  0xc(%rsp),%xmm5
subss  %xmm11,%xmm5
movss  0x10(%rsp),%xmm3
subss  %xmm14,%xmm3
mulss  %xmm4,%xmm5
mulss  %xmm2,%xmm1
addss  %xmm5,%xmm1
mulss  %xmm6,%xmm3
addss  %xmm1,%xmm3
xor    %eax,%eax
ucomiss %xmm8,%xmm3
setbe  %al
jmp    14a7 <tri_tri_overlap_test_3d+0x397>
ucomiss %xmm1,%xmm0
jbe    7b0e <tri_tri_overlap_test_3d+0x69fe>
ucomiss %xmm0,%xmm10
jae    8b2a <tri_tri_overlap_test_3d+0x7a1a>
movaps %xmm12,%xmm0
subss  0x30(%rsp),%xmm0
movaps %xmm11,%xmm1
subss  %xmm4,%xmm1
movaps %xmm14,%xmm2
subss  0x40(%rsp),%xmm2
movaps 0xc0(%rsp),%xmm6
movaps %xmm6,%xmm3
mulss  %xmm1,%xmm3
movaps 0xd0(%rsp),%xmm5
mulss  %xmm5,%xmm1
movaps 0xb0(%rsp),%xmm7
movaps %xmm7,%xmm4
mulss  %xmm2,%xmm4
subss  %xmm1,%xmm4
mulss  %xmm6,%xmm2
movaps %xmm5,%xmm1
mulss  %xmm0,%xmm1
subss  %xmm2,%xmm1
mulss  %xmm7,%xmm0
subss  %xmm0,%xmm3
shufps $0x55,%xmm7,%xmm7
mulss  %xmm1,%xmm7
shufps $0x55,%xmm6,%xmm6
mulss  %xmm4,%xmm6
addss  %xmm7,%xmm6
shufps $0x55,%xmm5,%xmm5
mulss  %xmm3,%xmm5
addss  %xmm6,%xmm5
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm5
movss  0x18(%rsp),%xmm5
movss  0x20(%rsp),%xmm4
movss  0x1c(%rsp),%xmm6
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm7
subss  %xmm12,%xmm7
movaps 0x80(%rsp),%xmm2
subss  %xmm11,%xmm2
movaps 0x90(%rsp),%xmm1
subss  %xmm14,%xmm1
subss  %xmm12,%xmm6
subss  %xmm11,%xmm5
subss  %xmm14,%xmm4
movaps %xmm5,%xmm3
mulss  %xmm1,%xmm3
mulss  %xmm6,%xmm1
mulss  %xmm2,%xmm6
mulss  %xmm4,%xmm2
subss  %xmm3,%xmm2
movss  %xmm2,(%rsp)
mulss  %xmm7,%xmm4
subss  %xmm4,%xmm1
movss  %xmm1,0x4(%rsp)
mulss  %xmm7,%xmm5
subss  %xmm6,%xmm5
movss  %xmm5,0x8(%rsp)
movss  0x14(%rsp),%xmm6
subss  %xmm12,%xmm6
movss  0xc(%rsp),%xmm3
subss  %xmm11,%xmm3
movss  0x10(%rsp),%xmm4
subss  %xmm14,%xmm4
mulss  %xmm1,%xmm3
mulss  %xmm2,%xmm6
addss  %xmm3,%xmm6
mulss  %xmm5,%xmm4
addss  %xmm6,%xmm4
jmp    baf0 <tri_tri_overlap_test_3d+0xa9e0>
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm10
movss  0x18(%rsp),%xmm14
movss  0x20(%rsp),%xmm13
movss  0x1c(%rsp),%xmm15
movaps 0xa0(%rsp),%xmm7
jbe    7c92 <tri_tri_overlap_test_3d+0x6b82>
movss  0x14(%rsp),%xmm3
subss  %xmm15,%xmm3
movss  0xc(%rsp),%xmm4
subss  %xmm14,%xmm4
movss  0x10(%rsp),%xmm5
subss  %xmm13,%xmm5
movaps 0x160(%rsp),%xmm6
movaps %xmm6,%xmm1
mulss  %xmm5,%xmm1
movaps %xmm4,%xmm2
mulss  %xmm11,%xmm2
subss  %xmm1,%xmm2
mulss  %xmm3,%xmm11
movaps 0x150(%rsp),%xmm1
mulss  %xmm1,%xmm5
subss  %xmm11,%xmm5
mulss  %xmm1,%xmm4
mulss  %xmm6,%xmm3
subss  %xmm4,%xmm3
subss  %xmm15,%xmm7
mulss  %xmm2,%xmm7
movaps 0x80(%rsp),%xmm2
subss  %xmm14,%xmm2
mulss  %xmm5,%xmm2
addss  %xmm7,%xmm2
movaps 0x90(%rsp),%xmm1
subss  %xmm13,%xmm1
mulss  %xmm3,%xmm1
addss  %xmm2,%xmm1
ucomiss %xmm0,%xmm1
movaps 0x110(%rsp),%xmm2
movaps 0x100(%rsp),%xmm3
movaps 0xf0(%rsp),%xmm4
ja     14a7 <tri_tri_overlap_test_3d+0x397>
subss  0x30(%rsp),%xmm4
subss  0xe0(%rsp),%xmm3
subss  0x40(%rsp),%xmm2
movaps %xmm3,%xmm0
movss  0x2c(%rsp),%xmm5
mulss  %xmm5,%xmm0
movss  0x24(%rsp),%xmm6
movaps %xmm6,%xmm1
mulss  %xmm2,%xmm1
subss  %xmm0,%xmm1
movss  %xmm1,(%rsp)
movss  0x28(%rsp),%xmm0
mulss  %xmm0,%xmm2
mulss  %xmm4,%xmm5
subss  %xmm2,%xmm5
movss  %xmm5,0x4(%rsp)
mulss  %xmm6,%xmm4
mulss  %xmm0,%xmm3
subss  %xmm4,%xmm3
movss  %xmm3,0x8(%rsp)
movaps 0xb0(%rsp),%xmm2
shufps $0x55,%xmm2,%xmm2
mulss  %xmm5,%xmm2
movaps 0xc0(%rsp),%xmm0
shufps $0x55,%xmm0,%xmm0
mulss  %xmm1,%xmm0
addss  %xmm2,%xmm0
movaps 0xd0(%rsp),%xmm1
shufps $0x55,%xmm1,%xmm1
mulss  %xmm3,%xmm1
addss  %xmm0,%xmm1
jmp    ad24 <tri_tri_overlap_test_3d+0x9c14>
xorps  %xmm0,%xmm0
ucomiss %xmm1,%xmm0
jbe    7e0e <tri_tri_overlap_test_3d+0x6cfe>
ucomiss %xmm0,%xmm10
jae    8c7b <tri_tri_overlap_test_3d+0x7b6b>
movaps 0x80(%rsp),%xmm2
movaps 0x100(%rsp),%xmm7
subss  %xmm7,%xmm2
movaps 0x90(%rsp),%xmm1
movaps 0x110(%rsp),%xmm14
subss  %xmm14,%xmm1
movss  0x1c(%rsp),%xmm8
movaps %xmm8,%xmm3
movaps 0xf0(%rsp),%xmm6
subss  %xmm6,%xmm3
movss  0x18(%rsp),%xmm9
movaps %xmm9,%xmm0
subss  %xmm7,%xmm0
movss  0x20(%rsp),%xmm13
movaps %xmm13,%xmm4
subss  %xmm14,%xmm4
movaps %xmm0,%xmm5
mulss  %xmm1,%xmm5
mulss  %xmm3,%xmm1
mulss  %xmm2,%xmm3
mulss  %xmm4,%xmm2
subss  %xmm5,%xmm2
movaps 0xa0(%rsp),%xmm5
subss  %xmm6,%xmm5
mulss  %xmm5,%xmm4
subss  %xmm4,%xmm1
mulss  %xmm5,%xmm0
subss  %xmm3,%xmm0
movaps 0x70(%rsp),%xmm3
subss  %xmm6,%xmm3
mulss  %xmm2,%xmm3
movaps 0x50(%rsp),%xmm2
subss  %xmm7,%xmm2
mulss  %xmm1,%xmm2
addss  %xmm3,%xmm2
movaps 0x60(%rsp),%xmm1
subss  %xmm14,%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm4
subss  %xmm8,%xmm4
movaps 0x80(%rsp),%xmm5
subss  %xmm9,%xmm5
movaps 0x90(%rsp),%xmm1
subss  %xmm13,%xmm1
movaps 0x160(%rsp),%xmm6
movaps %xmm6,%xmm2
mulss  %xmm1,%xmm2
movaps %xmm5,%xmm3
mulss  %xmm11,%xmm3
subss  %xmm2,%xmm3
movss  %xmm3,(%rsp)
mulss  %xmm4,%xmm11
movaps 0x150(%rsp),%xmm2
mulss  %xmm2,%xmm1
subss  %xmm11,%xmm1
movss  %xmm1,0x4(%rsp)
mulss  %xmm2,%xmm5
mulss  %xmm6,%xmm4
subss  %xmm5,%xmm4
movss  %xmm4,0x8(%rsp)
movss  0x14(%rsp),%xmm5
subss  %xmm8,%xmm5
movss  0xc(%rsp),%xmm6
subss  %xmm9,%xmm6
movss  0x10(%rsp),%xmm2
subss  %xmm13,%xmm2
jmp    bc42 <tri_tri_overlap_test_3d+0xab32>
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm10
jbe    7f65 <tri_tri_overlap_test_3d+0x6e55>
ucomiss %xmm0,%xmm1
jbe    8dd8 <tri_tri_overlap_test_3d+0x7cc8>
movss  0x1c(%rsp),%xmm8
movaps %xmm8,%xmm0
subss  0x30(%rsp),%xmm0
movss  0x18(%rsp),%xmm11
movaps %xmm11,%xmm1
subss  %xmm5,%xmm1
movss  0x20(%rsp),%xmm7
movaps %xmm7,%xmm2
subss  0x40(%rsp),%xmm2
movaps %xmm1,%xmm3
movaps 0xd0(%rsp),%xmm5
mulss  %xmm5,%xmm3
movaps 0xb0(%rsp),%xmm6
movaps %xmm6,%xmm4
mulss  %xmm2,%xmm4
subss  %xmm3,%xmm4
movaps 0xc0(%rsp),%xmm3
mulss  %xmm3,%xmm2
mulss  %xmm0,%xmm5
subss  %xmm2,%xmm5
mulss  %xmm6,%xmm0
mulss  %xmm3,%xmm1
subss  %xmm0,%xmm1
movss  0x24(%rsp),%xmm0
mulss  %xmm5,%xmm0
movss  0x28(%rsp),%xmm2
mulss  %xmm4,%xmm2
addss  %xmm0,%xmm2
movss  0x2c(%rsp),%xmm0
mulss  %xmm1,%xmm0
addss  %xmm2,%xmm0
xorps  %xmm10,%xmm10
ucomiss %xmm10,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm3
subss  %xmm8,%xmm3
movaps 0x80(%rsp),%xmm2
subss  %xmm11,%xmm2
movaps 0x90(%rsp),%xmm4
subss  %xmm7,%xmm4
movaps 0x130(%rsp),%xmm5
movaps %xmm5,%xmm1
mulss  %xmm4,%xmm1
movaps %xmm2,%xmm0
movaps 0x120(%rsp),%xmm6
mulss  %xmm6,%xmm0
subss  %xmm1,%xmm0
movss  %xmm0,(%rsp)
mulss  %xmm3,%xmm6
movaps 0x140(%rsp),%xmm1
mulss  %xmm1,%xmm4
subss  %xmm6,%xmm4
movss  %xmm4,0x4(%rsp)
mulss  %xmm1,%xmm2
mulss  %xmm5,%xmm3
subss  %xmm2,%xmm3
movss  %xmm3,0x8(%rsp)
movaps 0x70(%rsp),%xmm1
subss  %xmm8,%xmm1
movaps 0x50(%rsp),%xmm2
subss  %xmm11,%xmm2
movaps 0x60(%rsp),%xmm5
subss  %xmm7,%xmm5
mulss  %xmm4,%xmm2
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
mulss  %xmm3,%xmm5
addss  %xmm1,%xmm5
xor    %eax,%eax
ucomiss %xmm10,%xmm5
setbe  %al
jmp    14a7 <tri_tri_overlap_test_3d+0x397>
ucomiss %xmm0,%xmm10
movss  0x18(%rsp),%xmm14
movss  0x20(%rsp),%xmm8
movss  0x1c(%rsp),%xmm15
jbe    8f37 <tri_tri_overlap_test_3d+0x7e27>
movaps %xmm15,%xmm0
subss  0x30(%rsp),%xmm0
movaps %xmm14,%xmm1
subss  0xe0(%rsp),%xmm1
movaps %xmm8,%xmm2
subss  0x40(%rsp),%xmm2
movaps 0xd0(%rsp),%xmm4
shufps $0x55,%xmm4,%xmm4
movaps 0xb0(%rsp),%xmm6
shufps $0x55,%xmm6,%xmm6
movaps %xmm6,%xmm3
mulss  %xmm2,%xmm3
movaps 0xc0(%rsp),%xmm5
shufps $0x55,%xmm5,%xmm5
mulss  %xmm5,%xmm2
mulss  %xmm1,%xmm5
mulss  %xmm4,%xmm1
subss  %xmm1,%xmm3
mulss  %xmm0,%xmm4
subss  %xmm2,%xmm4
mulss  %xmm0,%xmm6
subss  %xmm6,%xmm5
movss  0x24(%rsp),%xmm1
mulss  %xmm4,%xmm1
movss  0x28(%rsp),%xmm0
mulss  %xmm3,%xmm0
addss  %xmm1,%xmm0
movss  0x2c(%rsp),%xmm1
mulss  %xmm5,%xmm1
addss  %xmm0,%xmm1
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0x70(%rsp),%xmm1
subss  %xmm15,%xmm1
movaps 0x50(%rsp),%xmm2
subss  %xmm14,%xmm2
movaps 0x60(%rsp),%xmm3
subss  %xmm8,%xmm3
movaps 0x130(%rsp),%xmm5
movaps %xmm5,%xmm4
mulss  %xmm3,%xmm4
movaps %xmm2,%xmm6
movaps 0x120(%rsp),%xmm7
mulss  %xmm7,%xmm6
subss  %xmm4,%xmm6
movss  %xmm6,(%rsp)
mulss  %xmm1,%xmm7
movaps 0x140(%rsp),%xmm4
mulss  %xmm4,%xmm3
subss  %xmm7,%xmm3
movss  %xmm3,0x4(%rsp)
mulss  %xmm4,%xmm2
mulss  %xmm5,%xmm1
subss  %xmm2,%xmm1
movss  %xmm1,0x8(%rsp)
movaps 0xa0(%rsp),%xmm2
subss  %xmm15,%xmm2
movaps 0x80(%rsp),%xmm4
subss  %xmm14,%xmm4
movaps 0x90(%rsp),%xmm5
jmp    991e <tri_tri_overlap_test_3d+0x880e>
movaps 0xf0(%rsp),%xmm7
movaps 0xa0(%rsp),%xmm0
subss  %xmm7,%xmm0
movaps 0x100(%rsp),%xmm10
movaps 0x80(%rsp),%xmm6
subss  %xmm10,%xmm6
movaps 0x110(%rsp),%xmm9
movaps 0x90(%rsp),%xmm5
subss  %xmm9,%xmm5
movaps 0xe0(%rsp),%xmm1
subss  %xmm10,%xmm1
movaps 0x40(%rsp),%xmm2
subss  %xmm9,%xmm2
movaps %xmm1,%xmm3
mulss  %xmm5,%xmm3
movaps %xmm6,%xmm4
mulss  %xmm2,%xmm4
subss  %xmm3,%xmm4
movaps 0x30(%rsp),%xmm3
subss  %xmm7,%xmm3
mulss  %xmm0,%xmm2
mulss  %xmm3,%xmm5
subss  %xmm2,%xmm5
mulss  %xmm6,%xmm3
mulss  %xmm0,%xmm1
subss  %xmm3,%xmm1
movss  0x14(%rsp),%xmm0
subss  %xmm7,%xmm0
mulss  %xmm4,%xmm0
movss  0xc(%rsp),%xmm2
subss  %xmm10,%xmm2
mulss  %xmm5,%xmm2
addss  %xmm0,%xmm2
movss  0x10(%rsp),%xmm0
subss  %xmm9,%xmm0
mulss  %xmm1,%xmm0
addss  %xmm2,%xmm0
ucomiss %xmm8,%xmm0
movss  0x18(%rsp),%xmm2
movss  0x20(%rsp),%xmm3
movss  0x1c(%rsp),%xmm4
ja     14a7 <tri_tri_overlap_test_3d+0x397>
jmp    b05e <tri_tri_overlap_test_3d+0x9f4e>
movss  0x1c(%rsp),%xmm10
movaps %xmm10,%xmm1
subss  0x30(%rsp),%xmm1
movss  0x18(%rsp),%xmm7
movaps %xmm7,%xmm2
subss  %xmm5,%xmm2
movss  0x20(%rsp),%xmm8
movaps %xmm8,%xmm3
subss  0x40(%rsp),%xmm3
movaps %xmm2,%xmm4
movaps 0xd0(%rsp),%xmm0
mulss  %xmm0,%xmm4
movaps 0xb0(%rsp),%xmm5
movaps %xmm5,%xmm6
mulss  %xmm3,%xmm6
subss  %xmm4,%xmm6
movaps 0xc0(%rsp),%xmm4
mulss  %xmm4,%xmm3
mulss  %xmm1,%xmm0
subss  %xmm3,%xmm0
mulss  %xmm5,%xmm1
mulss  %xmm4,%xmm2
subss  %xmm1,%xmm2
movss  0x24(%rsp),%xmm3
mulss  %xmm0,%xmm3
movss  0x28(%rsp),%xmm1
mulss  %xmm6,%xmm1
addss  %xmm3,%xmm1
movss  0x2c(%rsp),%xmm0
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
ucomiss %xmm14,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm2
subss  %xmm10,%xmm2
movaps 0x80(%rsp),%xmm4
subss  %xmm7,%xmm4
movaps 0x90(%rsp),%xmm3
subss  %xmm8,%xmm3
movaps 0x130(%rsp),%xmm5
movaps %xmm5,%xmm0
mulss  %xmm3,%xmm0
movaps %xmm4,%xmm1
movaps 0x120(%rsp),%xmm6
mulss  %xmm6,%xmm1
subss  %xmm0,%xmm1
movss  %xmm1,(%rsp)
mulss  %xmm2,%xmm6
movaps 0x140(%rsp),%xmm0
mulss  %xmm0,%xmm3
subss  %xmm6,%xmm3
movss  %xmm3,0x4(%rsp)
mulss  %xmm0,%xmm4
mulss  %xmm5,%xmm2
subss  %xmm4,%xmm2
movss  %xmm2,0x8(%rsp)
movaps 0x70(%rsp),%xmm0
subss  %xmm10,%xmm0
movaps 0x50(%rsp),%xmm5
subss  %xmm7,%xmm5
movaps 0x60(%rsp),%xmm4
subss  %xmm8,%xmm4
mulss  %xmm3,%xmm5
mulss  %xmm1,%xmm0
addss  %xmm5,%xmm0
mulss  %xmm2,%xmm4
addss  %xmm0,%xmm4
xorps  %xmm0,%xmm0
jmp    baf0 <tri_tri_overlap_test_3d+0xa9e0>
ucomiss %xmm8,%xmm1
jbe    9087 <tri_tri_overlap_test_3d+0x7f77>
movaps 0xf0(%rsp),%xmm6
movss  0x14(%rsp),%xmm7
subss  %xmm6,%xmm7
movaps 0x100(%rsp),%xmm9
movss  0xc(%rsp),%xmm5
subss  %xmm9,%xmm5
movaps 0x110(%rsp),%xmm8
movss  0x10(%rsp),%xmm4
subss  %xmm8,%xmm4
movaps 0xe0(%rsp),%xmm0
subss  %xmm9,%xmm0
movaps 0x40(%rsp),%xmm1
subss  %xmm8,%xmm1
movaps %xmm0,%xmm2
mulss  %xmm4,%xmm2
movaps %xmm5,%xmm3
mulss  %xmm1,%xmm3
subss  %xmm2,%xmm3
movaps 0x30(%rsp),%xmm2
subss  %xmm6,%xmm2
mulss  %xmm7,%xmm1
mulss  %xmm2,%xmm4
subss  %xmm1,%xmm4
mulss  %xmm5,%xmm2
mulss  %xmm7,%xmm0
subss  %xmm2,%xmm0
movaps 0x70(%rsp),%xmm1
subss  %xmm6,%xmm1
mulss  %xmm3,%xmm1
movaps 0x50(%rsp),%xmm2
subss  %xmm9,%xmm2
mulss  %xmm4,%xmm2
addss  %xmm1,%xmm2
movaps 0x60(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
movss  0x18(%rsp),%xmm3
movss  0x20(%rsp),%xmm4
movss  0x1c(%rsp),%xmm5
ja     14a7 <tri_tri_overlap_test_3d+0x397>
subss  0x30(%rsp),%xmm5
subss  0xe0(%rsp),%xmm3
subss  0x40(%rsp),%xmm4
movaps %xmm3,%xmm1
movss  0x2c(%rsp),%xmm6
mulss  %xmm6,%xmm1
movss  0x24(%rsp),%xmm7
movaps %xmm7,%xmm2
mulss  %xmm4,%xmm2
subss  %xmm1,%xmm2
movss  %xmm2,(%rsp)
movss  0x28(%rsp),%xmm1
mulss  %xmm1,%xmm4
mulss  %xmm5,%xmm6
subss  %xmm4,%xmm6
movss  %xmm6,0x4(%rsp)
mulss  %xmm7,%xmm5
mulss  %xmm1,%xmm3
subss  %xmm5,%xmm3
movss  %xmm3,0x8(%rsp)
movaps 0xb0(%rsp),%xmm1
mulss  %xmm6,%xmm1
movaps 0xc0(%rsp),%xmm4
mulss  %xmm2,%xmm4
addss  %xmm1,%xmm4
movaps 0xd0(%rsp),%xmm1
mulss  %xmm3,%xmm1
addss  %xmm4,%xmm1
jmp    ad27 <tri_tri_overlap_test_3d+0x9c17>
ucomiss %xmm1,%xmm14
jbe    915a <tri_tri_overlap_test_3d+0x804a>
movss  0xc(%rsp),%xmm2
movaps 0x100(%rsp),%xmm7
subss  %xmm7,%xmm2
movss  0x10(%rsp),%xmm1
movaps 0x110(%rsp),%xmm14
subss  %xmm14,%xmm1
movss  0x1c(%rsp),%xmm8
movaps %xmm8,%xmm3
movaps 0xf0(%rsp),%xmm6
subss  %xmm6,%xmm3
movss  0x18(%rsp),%xmm9
movaps %xmm9,%xmm0
subss  %xmm7,%xmm0
movss  0x20(%rsp),%xmm13
movaps %xmm13,%xmm4
subss  %xmm14,%xmm4
movaps %xmm0,%xmm5
mulss  %xmm1,%xmm5
mulss  %xmm3,%xmm1
mulss  %xmm2,%xmm3
mulss  %xmm4,%xmm2
subss  %xmm5,%xmm2
movss  0x14(%rsp),%xmm5
subss  %xmm6,%xmm5
mulss  %xmm5,%xmm4
subss  %xmm4,%xmm1
mulss  %xmm5,%xmm0
subss  %xmm3,%xmm0
movaps 0x70(%rsp),%xmm3
subss  %xmm6,%xmm3
mulss  %xmm2,%xmm3
movaps 0x50(%rsp),%xmm2
subss  %xmm7,%xmm2
mulss  %xmm1,%xmm2
addss  %xmm3,%xmm2
movaps 0x60(%rsp),%xmm1
subss  %xmm14,%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x14(%rsp),%xmm1
subss  %xmm8,%xmm1
movss  0xc(%rsp),%xmm2
subss  %xmm9,%xmm2
movss  0x10(%rsp),%xmm3
subss  %xmm13,%xmm3
movaps 0x160(%rsp),%xmm6
movaps %xmm6,%xmm4
mulss  %xmm3,%xmm4
movaps %xmm2,%xmm5
mulss  %xmm11,%xmm5
subss  %xmm4,%xmm5
movss  %xmm5,(%rsp)
mulss  %xmm1,%xmm11
movaps 0x150(%rsp),%xmm4
mulss  %xmm4,%xmm3
subss  %xmm11,%xmm3
movss  %xmm3,0x4(%rsp)
mulss  %xmm4,%xmm2
mulss  %xmm6,%xmm1
subss  %xmm2,%xmm1
movss  %xmm1,0x8(%rsp)
movaps 0xa0(%rsp),%xmm6
subss  %xmm8,%xmm6
movaps 0x80(%rsp),%xmm2
subss  %xmm9,%xmm2
movaps 0x90(%rsp),%xmm4
subss  %xmm13,%xmm4
mulss  %xmm3,%xmm2
movaps %xmm6,%xmm3
mulss  %xmm5,%xmm3
addss  %xmm2,%xmm3
mulss  %xmm1,%xmm4
addss  %xmm3,%xmm4
jmp    baf0 <tri_tri_overlap_test_3d+0xa9e0>
ucomiss %xmm8,%xmm1
jbe    92b7 <tri_tri_overlap_test_3d+0x81a7>
movss  0xc(%rsp),%xmm0
movss  0x18(%rsp),%xmm9
subss  %xmm9,%xmm0
movss  0x10(%rsp),%xmm1
movss  0x20(%rsp),%xmm8
subss  %xmm8,%xmm1
movaps 0x130(%rsp),%xmm6
movaps %xmm6,%xmm2
mulss  %xmm1,%xmm2
movaps %xmm0,%xmm3
movaps 0x120(%rsp),%xmm4
mulss  %xmm4,%xmm3
subss  %xmm2,%xmm3
movss  0x14(%rsp),%xmm2
movss  0x1c(%rsp),%xmm7
subss  %xmm7,%xmm2
mulss  %xmm2,%xmm4
movaps 0x140(%rsp),%xmm5
mulss  %xmm5,%xmm1
subss  %xmm4,%xmm1
mulss  %xmm5,%xmm0
mulss  %xmm6,%xmm2
subss  %xmm0,%xmm2
movaps 0x70(%rsp),%xmm0
subss  %xmm7,%xmm0
mulss  %xmm3,%xmm0
movaps 0x50(%rsp),%xmm3
subss  %xmm9,%xmm3
mulss  %xmm1,%xmm3
addss  %xmm0,%xmm3
movaps 0x60(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm2,%xmm1
addss  %xmm3,%xmm1
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x14(%rsp),%xmm2
subss  %xmm12,%xmm2
movss  0xc(%rsp),%xmm3
subss  %xmm11,%xmm3
movss  0x10(%rsp),%xmm1
subss  %xmm10,%xmm1
movaps 0x30(%rsp),%xmm7
subss  %xmm12,%xmm7
movaps 0xe0(%rsp),%xmm6
subss  %xmm11,%xmm6
movaps 0x40(%rsp),%xmm5
subss  %xmm10,%xmm5
movaps %xmm6,%xmm4
mulss  %xmm1,%xmm4
mulss  %xmm7,%xmm1
mulss  %xmm3,%xmm7
mulss  %xmm5,%xmm3
subss  %xmm4,%xmm3
movss  %xmm3,(%rsp)
mulss  %xmm2,%xmm5
subss  %xmm5,%xmm1
movss  %xmm1,0x4(%rsp)
mulss  %xmm2,%xmm6
subss  %xmm7,%xmm6
movss  %xmm6,0x8(%rsp)
movaps 0xa0(%rsp),%xmm2
subss  %xmm12,%xmm2
movaps 0x80(%rsp),%xmm4
subss  %xmm11,%xmm4
movaps 0x90(%rsp),%xmm5
jmp    93e0 <tri_tri_overlap_test_3d+0x82d0>
movaps 0xf0(%rsp),%xmm7
movss  0x14(%rsp),%xmm0
subss  %xmm7,%xmm0
movaps 0x100(%rsp),%xmm10
movss  0xc(%rsp),%xmm6
subss  %xmm10,%xmm6
movaps 0x110(%rsp),%xmm9
movss  0x10(%rsp),%xmm5
subss  %xmm9,%xmm5
movaps 0xe0(%rsp),%xmm1
subss  %xmm10,%xmm1
movaps 0x40(%rsp),%xmm2
subss  %xmm9,%xmm2
movaps %xmm1,%xmm3
mulss  %xmm5,%xmm3
movaps %xmm6,%xmm4
mulss  %xmm2,%xmm4
subss  %xmm3,%xmm4
movaps 0x30(%rsp),%xmm3
subss  %xmm7,%xmm3
mulss  %xmm0,%xmm2
mulss  %xmm3,%xmm5
subss  %xmm2,%xmm5
mulss  %xmm6,%xmm3
mulss  %xmm0,%xmm1
subss  %xmm3,%xmm1
movaps 0x70(%rsp),%xmm0
subss  %xmm7,%xmm0
mulss  %xmm4,%xmm0
movaps 0x50(%rsp),%xmm2
subss  %xmm10,%xmm2
mulss  %xmm5,%xmm2
addss  %xmm0,%xmm2
movaps 0x60(%rsp),%xmm0
subss  %xmm9,%xmm0
mulss  %xmm1,%xmm0
addss  %xmm2,%xmm0
ucomiss %xmm8,%xmm0
movss  0x18(%rsp),%xmm2
movss  0x20(%rsp),%xmm3
movss  0x1c(%rsp),%xmm4
ja     14a7 <tri_tri_overlap_test_3d+0x397>
jmp    a5f1 <tri_tri_overlap_test_3d+0x94e1>
movaps 0x50(%rsp),%xmm1
movss  0x18(%rsp),%xmm10
subss  %xmm10,%xmm1
movaps 0x60(%rsp),%xmm2
movss  0x20(%rsp),%xmm9
subss  %xmm9,%xmm2
movaps 0x130(%rsp),%xmm7
movaps %xmm7,%xmm3
mulss  %xmm2,%xmm3
movaps %xmm1,%xmm4
movaps 0x120(%rsp),%xmm6
mulss  %xmm6,%xmm4
subss  %xmm3,%xmm4
movaps 0x70(%rsp),%xmm3
movss  0x1c(%rsp),%xmm0
subss  %xmm0,%xmm3
mulss  %xmm3,%xmm6
movaps 0x140(%rsp),%xmm5
mulss  %xmm5,%xmm2
subss  %xmm6,%xmm2
mulss  %xmm5,%xmm1
mulss  %xmm7,%xmm3
subss  %xmm1,%xmm3
movss  0x14(%rsp),%xmm1
subss  %xmm0,%xmm1
mulss  %xmm4,%xmm1
movss  0xc(%rsp),%xmm4
subss  %xmm10,%xmm4
mulss  %xmm2,%xmm4
addss  %xmm1,%xmm4
movss  0x10(%rsp),%xmm0
subss  %xmm9,%xmm0
mulss  %xmm3,%xmm0
addss  %xmm4,%xmm0
ucomiss %xmm8,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0x70(%rsp),%xmm2
subss  %xmm12,%xmm2
movaps 0x50(%rsp),%xmm4
subss  %xmm11,%xmm4
movaps 0x60(%rsp),%xmm3
subss  %xmm14,%xmm3
movaps 0x30(%rsp),%xmm7
subss  %xmm12,%xmm7
movaps 0xe0(%rsp),%xmm5
subss  %xmm11,%xmm5
movaps 0x40(%rsp),%xmm6
subss  %xmm14,%xmm6
movaps %xmm5,%xmm0
mulss  %xmm3,%xmm0
movaps %xmm4,%xmm1
mulss  %xmm6,%xmm1
subss  %xmm0,%xmm1
movss  %xmm1,(%rsp)
mulss  %xmm2,%xmm6
mulss  %xmm7,%xmm3
subss  %xmm6,%xmm3
movss  %xmm3,0x4(%rsp)
mulss  %xmm4,%xmm7
mulss  %xmm2,%xmm5
subss  %xmm7,%xmm5
movss  %xmm5,0x8(%rsp)
movaps 0xa0(%rsp),%xmm0
subss  %xmm12,%xmm0
movaps 0x80(%rsp),%xmm4
subss  %xmm11,%xmm4
movaps 0x90(%rsp),%xmm2
jmp    1983 <tri_tri_overlap_test_3d+0x873>
ucomiss %xmm10,%xmm0
movss  0x18(%rsp),%xmm6
movss  0x20(%rsp),%xmm8
movss  0x1c(%rsp),%xmm10
jbe    93ea <tri_tri_overlap_test_3d+0x82da>
movaps %xmm12,%xmm0
subss  0x30(%rsp),%xmm0
movaps %xmm11,%xmm1
subss  %xmm4,%xmm1
movaps %xmm14,%xmm2
subss  0x40(%rsp),%xmm2
movaps 0xd0(%rsp),%xmm5
shufps $0x55,%xmm5,%xmm5
movaps 0xb0(%rsp),%xmm3
shufps $0x55,%xmm3,%xmm3
movaps %xmm3,%xmm7
mulss  %xmm2,%xmm7
movaps 0xc0(%rsp),%xmm4
shufps $0x55,%xmm4,%xmm4
mulss  %xmm4,%xmm2
mulss  %xmm1,%xmm4
mulss  %xmm5,%xmm1
subss  %xmm1,%xmm7
mulss  %xmm0,%xmm5
subss  %xmm2,%xmm5
mulss  %xmm0,%xmm3
subss  %xmm3,%xmm4
movss  0x24(%rsp),%xmm1
mulss  %xmm5,%xmm1
movss  0x28(%rsp),%xmm0
mulss  %xmm7,%xmm0
addss  %xmm1,%xmm0
movss  0x2c(%rsp),%xmm1
mulss  %xmm4,%xmm1
addss  %xmm0,%xmm1
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0x70(%rsp),%xmm5
subss  %xmm12,%xmm5
movaps 0x50(%rsp),%xmm2
subss  %xmm11,%xmm2
movaps 0x60(%rsp),%xmm1
subss  %xmm14,%xmm1
subss  %xmm12,%xmm10
subss  %xmm11,%xmm6
subss  %xmm14,%xmm8
movaps %xmm6,%xmm3
mulss  %xmm1,%xmm3
mulss  %xmm10,%xmm1
mulss  %xmm2,%xmm10
mulss  %xmm8,%xmm2
subss  %xmm3,%xmm2
movss  %xmm2,(%rsp)
mulss  %xmm5,%xmm8
subss  %xmm8,%xmm1
movss  %xmm1,0x4(%rsp)
mulss  %xmm5,%xmm6
subss  %xmm10,%xmm6
jmp    8c4e <tri_tri_overlap_test_3d+0x7b3e>
movaps 0x70(%rsp),%xmm3
subss  %xmm13,%xmm3
movaps 0x50(%rsp),%xmm0
subss  %xmm14,%xmm0
movaps 0x60(%rsp),%xmm4
subss  %xmm9,%xmm4
movaps 0x160(%rsp),%xmm5
movaps %xmm5,%xmm1
mulss  %xmm4,%xmm1
movaps %xmm0,%xmm2
mulss  %xmm11,%xmm2
subss  %xmm1,%xmm2
mulss  %xmm3,%xmm11
movaps 0x150(%rsp),%xmm1
mulss  %xmm1,%xmm4
subss  %xmm11,%xmm4
mulss  %xmm1,%xmm0
mulss  %xmm5,%xmm3
subss  %xmm0,%xmm3
movss  0x14(%rsp),%xmm0
subss  %xmm13,%xmm0
mulss  %xmm2,%xmm0
movss  0xc(%rsp),%xmm1
subss  %xmm14,%xmm1
mulss  %xmm4,%xmm1
addss  %xmm0,%xmm1
movss  0x10(%rsp),%xmm0
subss  %xmm9,%xmm0
mulss  %xmm3,%xmm0
addss  %xmm1,%xmm0
ucomiss %xmm8,%xmm0
movaps 0x110(%rsp),%xmm4
movaps 0x100(%rsp),%xmm5
movaps 0xf0(%rsp),%xmm6
ja     14a7 <tri_tri_overlap_test_3d+0x397>
subss  0x30(%rsp),%xmm6
subss  0xe0(%rsp),%xmm5
subss  0x40(%rsp),%xmm4
movaps 0xd0(%rsp),%xmm8
movaps %xmm8,%xmm0
shufps $0x55,%xmm8,%xmm0
movaps %xmm5,%xmm1
mulss  %xmm0,%xmm1
movaps 0xb0(%rsp),%xmm9
movaps %xmm9,%xmm2
shufps $0x55,%xmm9,%xmm2
movaps %xmm2,%xmm3
mulss  %xmm4,%xmm3
subss  %xmm1,%xmm3
movss  %xmm3,(%rsp)
movaps 0xc0(%rsp),%xmm7
movaps %xmm7,%xmm1
shufps $0x55,%xmm7,%xmm1
mulss  %xmm1,%xmm4
mulss  %xmm6,%xmm0
subss  %xmm4,%xmm0
movss  %xmm0,0x4(%rsp)
mulss  %xmm6,%xmm2
mulss  %xmm5,%xmm1
subss  %xmm2,%xmm1
movss  %xmm1,0x8(%rsp)
mulss  %xmm9,%xmm0
mulss  %xmm7,%xmm3
addss  %xmm0,%xmm3
mulss  %xmm8,%xmm1
jmp    ad20 <tri_tri_overlap_test_3d+0x9c10>
ucomiss %xmm10,%xmm14
movss  0x18(%rsp),%xmm14
movss  0x20(%rsp),%xmm8
movss  0x1c(%rsp),%xmm15
jbe    9530 <tri_tri_overlap_test_3d+0x8420>
movaps 0x50(%rsp),%xmm2
movaps 0x100(%rsp),%xmm7
subss  %xmm7,%xmm2
movaps 0x60(%rsp),%xmm1
movaps 0x110(%rsp),%xmm9
subss  %xmm9,%xmm1
movaps %xmm15,%xmm3
movaps 0xf0(%rsp),%xmm6
subss  %xmm6,%xmm3
movaps %xmm14,%xmm0
subss  %xmm7,%xmm0
movaps %xmm8,%xmm4
subss  %xmm9,%xmm4
movaps %xmm0,%xmm5
mulss  %xmm1,%xmm5
mulss  %xmm3,%xmm1
mulss  %xmm2,%xmm3
mulss  %xmm4,%xmm2
subss  %xmm5,%xmm2
movaps 0x70(%rsp),%xmm5
subss  %xmm6,%xmm5
mulss  %xmm5,%xmm4
subss  %xmm4,%xmm1
mulss  %xmm5,%xmm0
subss  %xmm3,%xmm0
movss  0x14(%rsp),%xmm3
subss  %xmm6,%xmm3
mulss  %xmm2,%xmm3
movss  0xc(%rsp),%xmm2
subss  %xmm7,%xmm2
mulss  %xmm1,%xmm2
addss  %xmm3,%xmm2
movss  0x10(%rsp),%xmm1
subss  %xmm9,%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0x70(%rsp),%xmm5
subss  %xmm15,%xmm5
movaps 0x50(%rsp),%xmm4
subss  %xmm14,%xmm4
movaps 0x60(%rsp),%xmm1
subss  %xmm8,%xmm1
movaps 0x160(%rsp),%xmm6
movaps %xmm6,%xmm2
mulss  %xmm1,%xmm2
movaps %xmm4,%xmm3
mulss  %xmm11,%xmm3
subss  %xmm2,%xmm3
movss  %xmm3,(%rsp)
mulss  %xmm5,%xmm11
movaps 0x150(%rsp),%xmm2
mulss  %xmm2,%xmm1
subss  %xmm11,%xmm1
movss  %xmm1,0x4(%rsp)
mulss  %xmm2,%xmm4
mulss  %xmm6,%xmm5
subss  %xmm4,%xmm5
movss  %xmm5,0x8(%rsp)
movaps 0xa0(%rsp),%xmm4
subss  %xmm15,%xmm4
movaps 0x80(%rsp),%xmm6
subss  %xmm14,%xmm6
movaps 0x90(%rsp),%xmm2
subss  %xmm8,%xmm2
mulss  %xmm1,%xmm6
mulss  %xmm3,%xmm4
addss  %xmm6,%xmm4
mulss  %xmm5,%xmm2
addss  %xmm4,%xmm2
jmp    bc56 <tri_tri_overlap_test_3d+0xab46>
movss  0x1c(%rsp),%xmm10
movaps %xmm10,%xmm2
subss  0x30(%rsp),%xmm2
movss  0x18(%rsp),%xmm11
movaps %xmm11,%xmm1
subss  %xmm5,%xmm1
movss  0x20(%rsp),%xmm8
movaps %xmm8,%xmm3
subss  0x40(%rsp),%xmm3
movaps %xmm1,%xmm4
movss  0x2c(%rsp),%xmm5
mulss  %xmm5,%xmm4
movss  0x24(%rsp),%xmm7
movaps %xmm7,%xmm6
mulss  %xmm3,%xmm6
subss  %xmm4,%xmm6
movss  0x28(%rsp),%xmm0
mulss  %xmm0,%xmm3
mulss  %xmm2,%xmm5
subss  %xmm3,%xmm5
mulss  %xmm7,%xmm2
mulss  %xmm0,%xmm1
subss  %xmm2,%xmm1
movaps 0xb0(%rsp),%xmm0
shufps $0x55,%xmm0,%xmm0
mulss  %xmm5,%xmm0
movaps 0xc0(%rsp),%xmm2
shufps $0x55,%xmm2,%xmm2
mulss  %xmm6,%xmm2
addss  %xmm0,%xmm2
movaps 0xd0(%rsp),%xmm0
shufps $0x55,%xmm0,%xmm0
mulss  %xmm1,%xmm0
addss  %xmm2,%xmm0
ucomiss %xmm14,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x14(%rsp),%xmm2
subss  %xmm10,%xmm2
movss  0xc(%rsp),%xmm3
subss  %xmm11,%xmm3
movss  0x10(%rsp),%xmm4
subss  %xmm8,%xmm4
movaps 0x130(%rsp),%xmm5
movaps %xmm5,%xmm0
mulss  %xmm4,%xmm0
movaps %xmm3,%xmm1
movaps 0x120(%rsp),%xmm6
mulss  %xmm6,%xmm1
subss  %xmm0,%xmm1
movss  %xmm1,(%rsp)
mulss  %xmm2,%xmm6
movaps 0x140(%rsp),%xmm0
mulss  %xmm0,%xmm4
subss  %xmm6,%xmm4
movss  %xmm4,0x4(%rsp)
mulss  %xmm0,%xmm3
mulss  %xmm5,%xmm2
subss  %xmm3,%xmm2
movss  %xmm2,0x8(%rsp)
movaps 0xa0(%rsp),%xmm0
subss  %xmm10,%xmm0
movaps 0x80(%rsp),%xmm5
subss  %xmm11,%xmm5
movaps 0x90(%rsp),%xmm3
subss  %xmm8,%xmm3
mulss  %xmm4,%xmm5
mulss  %xmm1,%xmm0
addss  %xmm5,%xmm0
jmp    6ed6 <tri_tri_overlap_test_3d+0x5dc6>
ucomiss %xmm14,%xmm0
jbe    965d <tri_tri_overlap_test_3d+0x854d>
xorps  %xmm8,%xmm8
ucomiss %xmm1,%xmm8
ja     c295 <tri_tri_overlap_test_3d+0xb185>
ucomiss %xmm10,%xmm8
movss  0x18(%rsp),%xmm13
movss  0x20(%rsp),%xmm8
movss  0x1c(%rsp),%xmm9
movaps 0xa0(%rsp),%xmm4
jbe    bc63 <tri_tri_overlap_test_3d+0xab53>
movaps 0x70(%rsp),%xmm2
subss  %xmm9,%xmm2
movaps 0x50(%rsp),%xmm4
subss  %xmm13,%xmm4
movaps 0x60(%rsp),%xmm3
subss  %xmm8,%xmm3
movaps 0x160(%rsp),%xmm5
movaps %xmm5,%xmm0
mulss  %xmm3,%xmm0
movaps %xmm4,%xmm1
mulss  %xmm11,%xmm1
subss  %xmm0,%xmm1
mulss  %xmm2,%xmm11
movaps 0x150(%rsp),%xmm0
mulss  %xmm0,%xmm3
subss  %xmm11,%xmm3
mulss  %xmm0,%xmm4
mulss  %xmm5,%xmm2
subss  %xmm4,%xmm2
movss  0x14(%rsp),%xmm0
subss  %xmm9,%xmm0
mulss  %xmm1,%xmm0
movss  0xc(%rsp),%xmm4
subss  %xmm13,%xmm4
mulss  %xmm3,%xmm4
addss  %xmm0,%xmm4
movss  0x10(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm2,%xmm1
addss  %xmm4,%xmm1
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm1
movaps 0x110(%rsp),%xmm5
movaps 0x100(%rsp),%xmm6
movaps 0xf0(%rsp),%xmm7
ja     14a7 <tri_tri_overlap_test_3d+0x397>
subss  0x30(%rsp),%xmm7
subss  0xe0(%rsp),%xmm6
subss  0x40(%rsp),%xmm5
movaps 0xd0(%rsp),%xmm9
movaps %xmm9,%xmm1
shufps $0x55,%xmm9,%xmm1
movaps %xmm6,%xmm2
mulss  %xmm1,%xmm2
movaps 0xb0(%rsp),%xmm10
movaps %xmm10,%xmm3
shufps $0x55,%xmm10,%xmm3
movaps %xmm3,%xmm4
mulss  %xmm5,%xmm4
subss  %xmm2,%xmm4
movss  %xmm4,(%rsp)
movaps 0xc0(%rsp),%xmm0
movaps %xmm0,%xmm2
shufps $0x55,%xmm0,%xmm2
mulss  %xmm2,%xmm5
mulss  %xmm7,%xmm1
subss  %xmm5,%xmm1
movss  %xmm1,0x4(%rsp)
mulss  %xmm7,%xmm3
mulss  %xmm6,%xmm2
jmp    4801 <tri_tri_overlap_test_3d+0x36f1>
movaps 0x80(%rsp),%xmm3
movaps 0x100(%rsp),%xmm7
subss  %xmm7,%xmm3
movaps 0x90(%rsp),%xmm2
movaps 0x110(%rsp),%xmm15
subss  %xmm15,%xmm2
movss  0x1c(%rsp),%xmm9
movaps %xmm9,%xmm4
movaps 0xf0(%rsp),%xmm0
subss  %xmm0,%xmm4
movss  0x18(%rsp),%xmm13
movaps %xmm13,%xmm1
subss  %xmm7,%xmm1
movss  0x20(%rsp),%xmm8
movaps %xmm8,%xmm5
subss  %xmm15,%xmm5
movaps %xmm1,%xmm6
mulss  %xmm2,%xmm6
mulss  %xmm4,%xmm2
mulss  %xmm3,%xmm4
mulss  %xmm5,%xmm3
subss  %xmm6,%xmm3
movaps 0xa0(%rsp),%xmm6
subss  %xmm0,%xmm6
mulss  %xmm6,%xmm5
subss  %xmm5,%xmm2
mulss  %xmm6,%xmm1
subss  %xmm4,%xmm1
movss  0x14(%rsp),%xmm4
subss  %xmm0,%xmm4
mulss  %xmm3,%xmm4
movss  0xc(%rsp),%xmm3
subss  %xmm7,%xmm3
mulss  %xmm2,%xmm3
addss  %xmm4,%xmm3
movss  0x10(%rsp),%xmm0
subss  %xmm15,%xmm0
mulss  %xmm1,%xmm0
addss  %xmm3,%xmm0
ucomiss %xmm14,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm4
subss  %xmm9,%xmm4
movaps 0x80(%rsp),%xmm0
subss  %xmm13,%xmm0
movaps 0x90(%rsp),%xmm1
subss  %xmm8,%xmm1
movaps 0x160(%rsp),%xmm5
movaps %xmm5,%xmm2
mulss  %xmm1,%xmm2
movaps %xmm0,%xmm3
mulss  %xmm11,%xmm3
subss  %xmm2,%xmm3
movss  %xmm3,(%rsp)
mulss  %xmm4,%xmm11
movaps 0x150(%rsp),%xmm2
mulss  %xmm2,%xmm1
subss  %xmm11,%xmm1
movss  %xmm1,0x4(%rsp)
mulss  %xmm2,%xmm0
mulss  %xmm5,%xmm4
subss  %xmm0,%xmm4
movss  %xmm4,0x8(%rsp)
movaps 0x70(%rsp),%xmm5
subss  %xmm9,%xmm5
movaps 0x50(%rsp),%xmm0
subss  %xmm13,%xmm0
movaps 0x60(%rsp),%xmm2
subss  %xmm8,%xmm2
mulss  %xmm1,%xmm0
mulss  %xmm3,%xmm5
addss  %xmm0,%xmm5
mulss  %xmm4,%xmm2
addss  %xmm5,%xmm2
jmp    199c <tri_tri_overlap_test_3d+0x88c>
movaps %xmm12,%xmm1
subss  0x30(%rsp),%xmm1
movaps %xmm11,%xmm2
subss  %xmm4,%xmm2
movaps %xmm10,%xmm3
subss  0x40(%rsp),%xmm3
movaps %xmm2,%xmm4
movaps 0xd0(%rsp),%xmm0
mulss  %xmm0,%xmm4
movaps 0xb0(%rsp),%xmm6
movaps %xmm6,%xmm5
mulss  %xmm3,%xmm5
subss  %xmm4,%xmm5
movaps 0xc0(%rsp),%xmm4
mulss  %xmm4,%xmm3
mulss  %xmm1,%xmm0
subss  %xmm3,%xmm0
mulss  %xmm6,%xmm1
mulss  %xmm4,%xmm2
subss  %xmm1,%xmm2
movss  0x24(%rsp),%xmm3
mulss  %xmm0,%xmm3
movss  0x28(%rsp),%xmm1
mulss  %xmm5,%xmm1
addss  %xmm3,%xmm1
movss  0x2c(%rsp),%xmm0
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
ucomiss %xmm8,%xmm0
movss  0x18(%rsp),%xmm2
movss  0x20(%rsp),%xmm3
movss  0x1c(%rsp),%xmm4
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm5
subss  %xmm12,%xmm5
movaps 0x80(%rsp),%xmm7
subss  %xmm11,%xmm7
movaps 0x90(%rsp),%xmm6
subss  %xmm10,%xmm6
subss  %xmm12,%xmm4
subss  %xmm11,%xmm2
subss  %xmm10,%xmm3
movaps %xmm2,%xmm0
mulss  %xmm6,%xmm0
movaps %xmm7,%xmm1
mulss  %xmm3,%xmm1
subss  %xmm0,%xmm1
movss  %xmm1,(%rsp)
mulss  %xmm5,%xmm3
mulss  %xmm4,%xmm6
subss  %xmm3,%xmm6
movss  %xmm6,0x4(%rsp)
mulss  %xmm7,%xmm4
mulss  %xmm5,%xmm2
subss  %xmm4,%xmm2
movss  %xmm2,0x8(%rsp)
movaps 0x70(%rsp),%xmm0
subss  %xmm12,%xmm0
movaps 0x50(%rsp),%xmm4
subss  %xmm11,%xmm4
movaps 0x60(%rsp),%xmm3
subss  %xmm10,%xmm3
mulss  %xmm6,%xmm4
mulss  %xmm1,%xmm0
addss  %xmm4,%xmm0
mulss  %xmm2,%xmm3
addss  %xmm0,%xmm3
xorps  %xmm0,%xmm0
xor    %eax,%eax
ucomiss %xmm0,%xmm3
setbe  %al
jmp    14a7 <tri_tri_overlap_test_3d+0x397>
ucomiss %xmm1,%xmm0
jbe    97d0 <tri_tri_overlap_test_3d+0x86c0>
xorps  %xmm14,%xmm14
ucomiss %xmm14,%xmm10
jae    a3db <tri_tri_overlap_test_3d+0x92cb>
movaps 0x80(%rsp),%xmm3
movaps 0x100(%rsp),%xmm7
subss  %xmm7,%xmm3
movaps 0x90(%rsp),%xmm2
movaps 0x110(%rsp),%xmm15
subss  %xmm15,%xmm2
movss  0x1c(%rsp),%xmm9
movaps %xmm9,%xmm4
movaps 0xf0(%rsp),%xmm0
subss  %xmm0,%xmm4
movss  0x18(%rsp),%xmm13
movaps %xmm13,%xmm1
subss  %xmm7,%xmm1
movss  0x20(%rsp),%xmm8
movaps %xmm8,%xmm5
subss  %xmm15,%xmm5
movaps %xmm1,%xmm6
mulss  %xmm2,%xmm6
mulss  %xmm4,%xmm2
mulss  %xmm3,%xmm4
mulss  %xmm5,%xmm3
subss  %xmm6,%xmm3
movaps 0xa0(%rsp),%xmm6
subss  %xmm0,%xmm6
mulss  %xmm6,%xmm5
subss  %xmm5,%xmm2
mulss  %xmm6,%xmm1
subss  %xmm4,%xmm1
movaps 0x70(%rsp),%xmm4
subss  %xmm0,%xmm4
mulss  %xmm3,%xmm4
movaps 0x50(%rsp),%xmm3
subss  %xmm7,%xmm3
mulss  %xmm2,%xmm3
addss  %xmm4,%xmm3
movaps 0x60(%rsp),%xmm0
subss  %xmm15,%xmm0
mulss  %xmm1,%xmm0
addss  %xmm3,%xmm0
ucomiss %xmm14,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm0
subss  %xmm9,%xmm0
movaps 0x80(%rsp),%xmm1
subss  %xmm13,%xmm1
movaps 0x90(%rsp),%xmm2
jmp    9bb9 <tri_tri_overlap_test_3d+0x8aa9>
movaps 0x80(%rsp),%xmm1
subss  %xmm6,%xmm1
movaps 0x90(%rsp),%xmm2
subss  %xmm8,%xmm2
movaps 0x130(%rsp),%xmm5
movaps %xmm5,%xmm3
mulss  %xmm2,%xmm3
movaps %xmm1,%xmm4
movaps 0x120(%rsp),%xmm7
mulss  %xmm7,%xmm4
subss  %xmm3,%xmm4
movaps 0xa0(%rsp),%xmm3
subss  %xmm10,%xmm3
mulss  %xmm3,%xmm7
movaps 0x140(%rsp),%xmm0
mulss  %xmm0,%xmm2
subss  %xmm7,%xmm2
mulss  %xmm0,%xmm1
mulss  %xmm5,%xmm3
subss  %xmm1,%xmm3
movaps 0x70(%rsp),%xmm1
subss  %xmm10,%xmm1
mulss  %xmm4,%xmm1
movaps 0x50(%rsp),%xmm4
subss  %xmm6,%xmm4
mulss  %xmm2,%xmm4
addss  %xmm1,%xmm4
movaps 0x60(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm3,%xmm1
addss  %xmm4,%xmm1
ucomiss %xmm15,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm2
subss  %xmm12,%xmm2
movaps 0x80(%rsp),%xmm4
subss  %xmm11,%xmm4
movaps 0x90(%rsp),%xmm3
subss  %xmm14,%xmm3
movaps 0x30(%rsp),%xmm7
subss  %xmm12,%xmm7
movaps 0xe0(%rsp),%xmm5
subss  %xmm11,%xmm5
movaps 0x40(%rsp),%xmm6
subss  %xmm14,%xmm6
movaps %xmm5,%xmm0
mulss  %xmm3,%xmm0
movaps %xmm4,%xmm1
mulss  %xmm6,%xmm1
subss  %xmm0,%xmm1
movss  %xmm1,(%rsp)
mulss  %xmm2,%xmm6
mulss  %xmm7,%xmm3
subss  %xmm6,%xmm3
movss  %xmm3,0x4(%rsp)
mulss  %xmm4,%xmm7
mulss  %xmm2,%xmm5
subss  %xmm7,%xmm5
movss  %xmm5,0x8(%rsp)
movss  0x14(%rsp),%xmm0
subss  %xmm12,%xmm0
movss  0xc(%rsp),%xmm4
subss  %xmm11,%xmm4
movss  0x10(%rsp),%xmm2
jmp    1983 <tri_tri_overlap_test_3d+0x873>
movaps %xmm12,%xmm1
subss  0x30(%rsp),%xmm1
movaps %xmm11,%xmm2
subss  %xmm4,%xmm2
movaps %xmm15,%xmm3
subss  0x40(%rsp),%xmm3
movaps 0xc0(%rsp),%xmm4
movaps %xmm4,%xmm7
mulss  %xmm2,%xmm7
movaps 0xd0(%rsp),%xmm0
mulss  %xmm0,%xmm2
movaps 0xb0(%rsp),%xmm5
movaps %xmm5,%xmm6
mulss  %xmm3,%xmm6
subss  %xmm2,%xmm6
mulss  %xmm4,%xmm3
movaps %xmm0,%xmm2
mulss  %xmm1,%xmm2
subss  %xmm3,%xmm2
mulss  %xmm5,%xmm1
subss  %xmm1,%xmm7
shufps $0x55,%xmm5,%xmm5
mulss  %xmm2,%xmm5
shufps $0x55,%xmm4,%xmm4
mulss  %xmm6,%xmm4
addss  %xmm5,%xmm4
shufps $0x55,%xmm0,%xmm0
mulss  %xmm7,%xmm0
addss  %xmm4,%xmm0
ucomiss %xmm9,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm3
subss  %xmm12,%xmm3
movaps 0x80(%rsp),%xmm1
subss  %xmm11,%xmm1
movaps 0x90(%rsp),%xmm0
subss  %xmm15,%xmm0
subss  %xmm12,%xmm10
subss  %xmm11,%xmm14
subss  %xmm15,%xmm8
movaps %xmm14,%xmm2
mulss  %xmm0,%xmm2
mulss  %xmm10,%xmm0
mulss  %xmm1,%xmm10
mulss  %xmm8,%xmm1
subss  %xmm2,%xmm1
movss  %xmm1,(%rsp)
mulss  %xmm3,%xmm8
subss  %xmm8,%xmm0
movss  %xmm0,0x4(%rsp)
mulss  %xmm3,%xmm14
subss  %xmm10,%xmm14
movss  %xmm14,0x8(%rsp)
movss  0x14(%rsp),%xmm4
subss  %xmm12,%xmm4
movss  0xc(%rsp),%xmm2
subss  %xmm11,%xmm2
movss  0x10(%rsp),%xmm3
subss  %xmm15,%xmm3
mulss  %xmm0,%xmm2
mulss  %xmm1,%xmm4
addss  %xmm2,%xmm4
mulss  %xmm14,%xmm3
jmp    abc2 <tri_tri_overlap_test_3d+0x9ab2>
movaps 0x80(%rsp),%xmm3
movaps 0x100(%rsp),%xmm7
subss  %xmm7,%xmm3
movaps 0x90(%rsp),%xmm2
movaps 0x110(%rsp),%xmm9
subss  %xmm9,%xmm2
movaps %xmm15,%xmm4
movaps 0xf0(%rsp),%xmm0
subss  %xmm0,%xmm4
movaps %xmm14,%xmm1
subss  %xmm7,%xmm1
movaps %xmm8,%xmm5
subss  %xmm9,%xmm5
movaps %xmm1,%xmm6
mulss  %xmm2,%xmm6
mulss  %xmm4,%xmm2
mulss  %xmm3,%xmm4
mulss  %xmm5,%xmm3
subss  %xmm6,%xmm3
movaps 0xa0(%rsp),%xmm6
subss  %xmm0,%xmm6
mulss  %xmm6,%xmm5
subss  %xmm5,%xmm2
mulss  %xmm6,%xmm1
subss  %xmm4,%xmm1
movaps 0x70(%rsp),%xmm4
subss  %xmm0,%xmm4
mulss  %xmm3,%xmm4
movaps 0x50(%rsp),%xmm3
subss  %xmm7,%xmm3
mulss  %xmm2,%xmm3
addss  %xmm4,%xmm3
movaps 0x60(%rsp),%xmm0
subss  %xmm9,%xmm0
mulss  %xmm1,%xmm0
addss  %xmm3,%xmm0
ucomiss %xmm12,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm3
subss  %xmm15,%xmm3
movaps 0x80(%rsp),%xmm4
subss  %xmm14,%xmm4
movaps 0x90(%rsp),%xmm0
subss  %xmm8,%xmm0
movaps 0x160(%rsp),%xmm5
movaps %xmm5,%xmm1
mulss  %xmm0,%xmm1
movaps %xmm4,%xmm2
mulss  %xmm11,%xmm2
subss  %xmm1,%xmm2
movss  %xmm2,(%rsp)
mulss  %xmm3,%xmm11
movaps 0x150(%rsp),%xmm1
mulss  %xmm1,%xmm0
subss  %xmm11,%xmm0
jmp    7f27 <tri_tri_overlap_test_3d+0x6e17>
ucomiss %xmm10,%xmm0
jbe    993c <tri_tri_overlap_test_3d+0x882c>
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm1
jae    a520 <tri_tri_overlap_test_3d+0x9410>
movss  0x1c(%rsp),%xmm5
movaps 0xa0(%rsp),%xmm6
subss  %xmm5,%xmm6
movss  0x18(%rsp),%xmm3
movaps 0x80(%rsp),%xmm0
subss  %xmm3,%xmm0
movss  0x20(%rsp),%xmm9
movaps 0x90(%rsp),%xmm7
subss  %xmm9,%xmm7
movaps 0x160(%rsp),%xmm4
movaps %xmm4,%xmm1
mulss  %xmm7,%xmm1
movaps %xmm0,%xmm2
mulss  %xmm11,%xmm2
subss  %xmm1,%xmm2
mulss  %xmm6,%xmm11
movaps 0x150(%rsp),%xmm1
mulss  %xmm1,%xmm7
subss  %xmm11,%xmm7
mulss  %xmm1,%xmm0
mulss  %xmm4,%xmm6
subss  %xmm0,%xmm6
movss  0x14(%rsp),%xmm0
subss  %xmm5,%xmm0
mulss  %xmm2,%xmm0
movss  0xc(%rsp),%xmm1
subss  %xmm3,%xmm1
mulss  %xmm7,%xmm1
addss  %xmm0,%xmm1
movss  0x10(%rsp),%xmm0
subss  %xmm9,%xmm0
mulss  %xmm6,%xmm0
addss  %xmm1,%xmm0
ucomiss %xmm8,%xmm0
movaps 0x110(%rsp),%xmm3
movaps 0x100(%rsp),%xmm2
movaps 0xf0(%rsp),%xmm4
jbe    b05e <tri_tri_overlap_test_3d+0x9f4e>
jmp    14a7 <tri_tri_overlap_test_3d+0x397>
xorps  %xmm14,%xmm14
ucomiss %xmm0,%xmm10
jbe    9ac9 <tri_tri_overlap_test_3d+0x89b9>
ucomiss %xmm14,%xmm1
jbe    a680 <tri_tri_overlap_test_3d+0x9570>
movss  0x1c(%rsp),%xmm10
movaps %xmm10,%xmm1
subss  0x30(%rsp),%xmm1
movss  0x18(%rsp),%xmm7
movaps %xmm7,%xmm2
subss  %xmm4,%xmm2
movss  0x20(%rsp),%xmm8
movaps %xmm8,%xmm3
subss  0x40(%rsp),%xmm3
movaps %xmm2,%xmm4
movaps 0xd0(%rsp),%xmm0
mulss  %xmm0,%xmm4
movaps 0xb0(%rsp),%xmm5
movaps %xmm5,%xmm6
mulss  %xmm3,%xmm6
subss  %xmm4,%xmm6
movaps 0xc0(%rsp),%xmm4
mulss  %xmm4,%xmm3
mulss  %xmm1,%xmm0
subss  %xmm3,%xmm0
mulss  %xmm5,%xmm1
mulss  %xmm4,%xmm2
subss  %xmm1,%xmm2
movss  0x24(%rsp),%xmm3
mulss  %xmm0,%xmm3
movss  0x28(%rsp),%xmm1
mulss  %xmm6,%xmm1
addss  %xmm3,%xmm1
movss  0x2c(%rsp),%xmm0
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
ucomiss %xmm14,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm0
subss  %xmm10,%xmm0
movaps 0x80(%rsp),%xmm1
subss  %xmm7,%xmm1
movaps 0x90(%rsp),%xmm2
subss  %xmm8,%xmm2
movaps 0x130(%rsp),%xmm5
movaps %xmm5,%xmm3
mulss  %xmm2,%xmm3
movaps %xmm1,%xmm4
movaps 0x120(%rsp),%xmm6
mulss  %xmm6,%xmm4
subss  %xmm3,%xmm4
movss  %xmm4,(%rsp)
mulss  %xmm0,%xmm6
movaps 0x140(%rsp),%xmm3
mulss  %xmm3,%xmm2
subss  %xmm6,%xmm2
movss  %xmm2,0x4(%rsp)
mulss  %xmm3,%xmm1
mulss  %xmm5,%xmm0
subss  %xmm1,%xmm0
movss  %xmm0,0x8(%rsp)
movaps 0x70(%rsp),%xmm1
subss  %xmm10,%xmm1
movaps 0x50(%rsp),%xmm3
subss  %xmm7,%xmm3
jmp    c52b <tri_tri_overlap_test_3d+0xb41b>
xorps  %xmm8,%xmm8
ucomiss %xmm0,%xmm10
jbe    9c2d <tri_tri_overlap_test_3d+0x8b1d>
ucomiss %xmm8,%xmm1
jbe    a7dd <tri_tri_overlap_test_3d+0x96cd>
movaps 0x80(%rsp),%xmm1
movss  0x18(%rsp),%xmm10
subss  %xmm10,%xmm1
movaps 0x90(%rsp),%xmm2
movss  0x20(%rsp),%xmm9
subss  %xmm9,%xmm2
movaps 0x130(%rsp),%xmm7
movaps %xmm7,%xmm3
mulss  %xmm2,%xmm3
movaps %xmm1,%xmm4
movaps 0x120(%rsp),%xmm6
mulss  %xmm6,%xmm4
subss  %xmm3,%xmm4
movaps 0xa0(%rsp),%xmm3
movss  0x1c(%rsp),%xmm0
subss  %xmm0,%xmm3
mulss  %xmm3,%xmm6
movaps 0x140(%rsp),%xmm5
mulss  %xmm5,%xmm2
subss  %xmm6,%xmm2
mulss  %xmm5,%xmm1
mulss  %xmm7,%xmm3
subss  %xmm1,%xmm3
movss  0x14(%rsp),%xmm1
subss  %xmm0,%xmm1
mulss  %xmm4,%xmm1
movss  0xc(%rsp),%xmm4
subss  %xmm10,%xmm4
mulss  %xmm2,%xmm4
addss  %xmm1,%xmm4
movss  0x10(%rsp),%xmm0
subss  %xmm9,%xmm0
mulss  %xmm3,%xmm0
addss  %xmm4,%xmm0
ucomiss %xmm8,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm3
subss  %xmm12,%xmm3
movaps 0x80(%rsp),%xmm4
subss  %xmm11,%xmm4
movaps 0x90(%rsp),%xmm0
subss  %xmm14,%xmm0
movaps 0x30(%rsp),%xmm7
subss  %xmm12,%xmm7
movaps 0xe0(%rsp),%xmm5
subss  %xmm11,%xmm5
movaps 0x40(%rsp),%xmm6
subss  %xmm14,%xmm6
movaps %xmm5,%xmm1
mulss  %xmm0,%xmm1
movaps %xmm4,%xmm2
mulss  %xmm6,%xmm2
subss  %xmm1,%xmm2
movss  %xmm2,(%rsp)
mulss  %xmm3,%xmm6
mulss  %xmm7,%xmm0
subss  %xmm6,%xmm0
movss  %xmm0,0x4(%rsp)
mulss  %xmm4,%xmm7
mulss  %xmm3,%xmm5
subss  %xmm7,%xmm5
movss  %xmm5,0x8(%rsp)
movaps 0x70(%rsp),%xmm3
subss  %xmm12,%xmm3
movaps 0x50(%rsp),%xmm4
subss  %xmm11,%xmm4
movaps 0x60(%rsp),%xmm1
subss  %xmm14,%xmm1
mulss  %xmm0,%xmm4
mulss  %xmm2,%xmm3
addss  %xmm4,%xmm3
mulss  %xmm5,%xmm1
jmp    ad20 <tri_tri_overlap_test_3d+0x9c10>
ucomiss %xmm10,%xmm0
jbe    9d81 <tri_tri_overlap_test_3d+0x8c71>
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm1
jae    a91b <tri_tri_overlap_test_3d+0x980b>
movaps %xmm12,%xmm1
subss  0x30(%rsp),%xmm1
movaps %xmm11,%xmm2
subss  %xmm4,%xmm2
movaps %xmm14,%xmm3
subss  0x40(%rsp),%xmm3
movaps %xmm2,%xmm4
movaps 0xd0(%rsp),%xmm0
mulss  %xmm0,%xmm4
movaps 0xb0(%rsp),%xmm6
movaps %xmm6,%xmm5
mulss  %xmm3,%xmm5
subss  %xmm4,%xmm5
movaps 0xc0(%rsp),%xmm4
mulss  %xmm4,%xmm3
mulss  %xmm1,%xmm0
subss  %xmm3,%xmm0
mulss  %xmm6,%xmm1
mulss  %xmm4,%xmm2
subss  %xmm1,%xmm2
movss  0x24(%rsp),%xmm3
mulss  %xmm0,%xmm3
movss  0x28(%rsp),%xmm1
mulss  %xmm5,%xmm1
addss  %xmm3,%xmm1
movss  0x2c(%rsp),%xmm0
mulss  %xmm2,%xmm0
addss  %xmm1,%xmm0
ucomiss %xmm8,%xmm0
movss  0x18(%rsp),%xmm5
movss  0x20(%rsp),%xmm4
movss  0x1c(%rsp),%xmm6
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm1
subss  %xmm12,%xmm1
movaps 0x80(%rsp),%xmm2
subss  %xmm11,%xmm2
movaps 0x90(%rsp),%xmm0
subss  %xmm14,%xmm0
subss  %xmm12,%xmm6
subss  %xmm11,%xmm5
jmp    a380 <tri_tri_overlap_test_3d+0x9270>
ucomiss %xmm0,%xmm1
jbe    9ef1 <tri_tri_overlap_test_3d+0x8de1>
movss  0x1c(%rsp),%xmm4
movaps 0x70(%rsp),%xmm5
subss  %xmm4,%xmm5
movss  0x18(%rsp),%xmm2
movaps 0x50(%rsp),%xmm7
subss  %xmm2,%xmm7
movss  0x20(%rsp),%xmm8
movaps 0x60(%rsp),%xmm6
subss  %xmm8,%xmm6
movaps 0x160(%rsp),%xmm3
movaps %xmm3,%xmm0
mulss  %xmm6,%xmm0
movaps %xmm7,%xmm1
mulss  %xmm11,%xmm1
subss  %xmm0,%xmm1
mulss  %xmm5,%xmm11
movaps 0x150(%rsp),%xmm0
mulss  %xmm0,%xmm6
subss  %xmm11,%xmm6
mulss  %xmm0,%xmm7
mulss  %xmm3,%xmm5
subss  %xmm7,%xmm5
movaps 0xa0(%rsp),%xmm0
subss  %xmm4,%xmm0
mulss  %xmm1,%xmm0
movaps 0x80(%rsp),%xmm4
subss  %xmm2,%xmm4
mulss  %xmm6,%xmm4
addss  %xmm0,%xmm4
movaps 0x90(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm5,%xmm1
addss  %xmm4,%xmm1
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
movaps 0x110(%rsp),%xmm3
movaps 0x100(%rsp),%xmm4
movaps 0xf0(%rsp),%xmm5
ja     14a7 <tri_tri_overlap_test_3d+0x397>
subss  0x30(%rsp),%xmm5
subss  0xe0(%rsp),%xmm4
subss  0x40(%rsp),%xmm3
movaps 0xd0(%rsp),%xmm6
shufps $0x55,%xmm6,%xmm6
movaps %xmm4,%xmm1
mulss  %xmm6,%xmm1
movaps 0xb0(%rsp),%xmm7
shufps $0x55,%xmm7,%xmm7
movaps %xmm7,%xmm2
mulss  %xmm3,%xmm2
subss  %xmm1,%xmm2
movss  %xmm2,(%rsp)
movaps 0xc0(%rsp),%xmm1
shufps $0x55,%xmm1,%xmm1
mulss  %xmm1,%xmm3
mulss  %xmm5,%xmm6
subss  %xmm3,%xmm6
movss  %xmm6,0x4(%rsp)
mulss  %xmm5,%xmm7
mulss  %xmm4,%xmm1
subss  %xmm7,%xmm1
movss  %xmm1,0x8(%rsp)
movss  0x24(%rsp),%xmm4
mulss  %xmm6,%xmm4
movss  0x28(%rsp),%xmm3
mulss  %xmm2,%xmm3
addss  %xmm4,%xmm3
movss  0x2c(%rsp),%xmm2
mulss  %xmm1,%xmm2
addss  %xmm3,%xmm2
jmp    bc56 <tri_tri_overlap_test_3d+0xab46>
ucomiss %xmm0,%xmm10
movss  0x18(%rsp),%xmm6
movss  0x20(%rsp),%xmm8
movss  0x1c(%rsp),%xmm15
movaps 0xa0(%rsp),%xmm0
jbe    9f04 <tri_tri_overlap_test_3d+0x8df4>
movaps %xmm12,%xmm0
subss  0x30(%rsp),%xmm0
movaps %xmm11,%xmm1
subss  0xe0(%rsp),%xmm1
movaps %xmm14,%xmm2
subss  0x40(%rsp),%xmm2
movaps %xmm1,%xmm3
movss  0x2c(%rsp),%xmm5
mulss  %xmm5,%xmm3
movss  0x24(%rsp),%xmm7
movaps %xmm7,%xmm4
mulss  %xmm2,%xmm4
subss  %xmm3,%xmm4
movss  0x28(%rsp),%xmm3
mulss  %xmm3,%xmm2
mulss  %xmm0,%xmm5
subss  %xmm2,%xmm5
mulss  %xmm7,%xmm0
mulss  %xmm3,%xmm1
subss  %xmm0,%xmm1
movaps 0xb0(%rsp),%xmm2
mulss  %xmm5,%xmm2
movaps 0xc0(%rsp),%xmm0
mulss  %xmm4,%xmm0
addss  %xmm2,%xmm0
movaps 0xd0(%rsp),%xmm2
mulss  %xmm1,%xmm2
addss  %xmm0,%xmm2
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm2
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x14(%rsp),%xmm3
subss  %xmm12,%xmm3
movss  0xc(%rsp),%xmm5
subss  %xmm11,%xmm5
movss  0x10(%rsp),%xmm4
subss  %xmm14,%xmm4
subss  %xmm12,%xmm15
subss  %xmm11,%xmm6
subss  %xmm14,%xmm8
movaps %xmm6,%xmm1
mulss  %xmm4,%xmm1
movaps %xmm5,%xmm2
mulss  %xmm8,%xmm2
subss  %xmm1,%xmm2
movss  %xmm2,(%rsp)
mulss  %xmm3,%xmm8
mulss  %xmm15,%xmm4
subss  %xmm8,%xmm4
movss  %xmm4,0x4(%rsp)
mulss  %xmm5,%xmm15
mulss  %xmm3,%xmm6
subss  %xmm15,%xmm6
movss  %xmm6,0x8(%rsp)
movaps 0x70(%rsp),%xmm1
subss  %xmm12,%xmm1
movaps 0x50(%rsp),%xmm5
subss  %xmm11,%xmm5
movaps 0x60(%rsp),%xmm3
subss  %xmm14,%xmm3
mulss  %xmm4,%xmm5
mulss  %xmm2,%xmm1
addss  %xmm5,%xmm1
mulss  %xmm6,%xmm3
addss  %xmm1,%xmm3
jmp    6ee1 <tri_tri_overlap_test_3d+0x5dd1>
xorps  %xmm15,%xmm15
ucomiss %xmm0,%xmm1
jbe    9fb8 <tri_tri_overlap_test_3d+0x8ea8>
ucomiss %xmm15,%xmm10
movss  0x18(%rsp),%xmm6
movss  0x20(%rsp),%xmm8
movss  0x1c(%rsp),%xmm10
jbe    aa89 <tri_tri_overlap_test_3d+0x9979>
movaps 0x80(%rsp),%xmm1
subss  %xmm6,%xmm1
movaps 0x90(%rsp),%xmm2
subss  %xmm8,%xmm2
movaps 0x130(%rsp),%xmm5
movaps %xmm5,%xmm3
mulss  %xmm2,%xmm3
movaps %xmm1,%xmm4
movaps 0x120(%rsp),%xmm7
mulss  %xmm7,%xmm4
subss  %xmm3,%xmm4
movaps 0xa0(%rsp),%xmm3
subss  %xmm10,%xmm3
mulss  %xmm3,%xmm7
movaps 0x140(%rsp),%xmm0
mulss  %xmm0,%xmm2
subss  %xmm7,%xmm2
mulss  %xmm0,%xmm1
mulss  %xmm5,%xmm3
subss  %xmm1,%xmm3
movaps 0x70(%rsp),%xmm1
subss  %xmm10,%xmm1
mulss  %xmm4,%xmm1
movaps 0x50(%rsp),%xmm4
subss  %xmm6,%xmm4
mulss  %xmm2,%xmm4
addss  %xmm1,%xmm4
movaps 0x60(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm3,%xmm1
addss  %xmm4,%xmm1
ucomiss %xmm15,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm3
subss  %xmm12,%xmm3
movaps 0x80(%rsp),%xmm1
subss  %xmm11,%xmm1
movaps 0x90(%rsp),%xmm0
subss  %xmm14,%xmm0
movaps 0x30(%rsp),%xmm6
subss  %xmm12,%xmm6
movaps 0xe0(%rsp),%xmm5
subss  %xmm11,%xmm5
movaps 0x40(%rsp),%xmm4
subss  %xmm14,%xmm4
movaps %xmm5,%xmm2
mulss  %xmm0,%xmm2
mulss  %xmm6,%xmm0
mulss  %xmm1,%xmm6
mulss  %xmm4,%xmm1
subss  %xmm2,%xmm1
movss  %xmm1,(%rsp)
mulss  %xmm3,%xmm4
subss  %xmm4,%xmm0
movss  %xmm0,0x4(%rsp)
mulss  %xmm3,%xmm5
subss  %xmm6,%xmm5
movss  %xmm5,0x8(%rsp)
movss  0x14(%rsp),%xmm4
subss  %xmm12,%xmm4
movss  0xc(%rsp),%xmm2
subss  %xmm11,%xmm2
movss  0x10(%rsp),%xmm3
subss  %xmm14,%xmm3
mulss  %xmm0,%xmm2
mulss  %xmm1,%xmm4
addss  %xmm2,%xmm4
mulss  %xmm5,%xmm3
jmp    abc2 <tri_tri_overlap_test_3d+0x9ab2>
ucomiss %xmm10,%xmm0
jbe    c97d <tri_tri_overlap_test_3d+0xb86d>
movaps 0xf0(%rsp),%xmm10
movss  0x14(%rsp),%xmm5
subss  %xmm10,%xmm5
movaps 0x100(%rsp),%xmm9
movss  0xc(%rsp),%xmm6
subss  %xmm9,%xmm6
movaps 0x110(%rsp),%xmm8
movss  0x10(%rsp),%xmm4
subss  %xmm8,%xmm4
movaps 0xe0(%rsp),%xmm0
subss  %xmm9,%xmm0
movaps 0x40(%rsp),%xmm1
subss  %xmm8,%xmm1
movaps %xmm0,%xmm2
mulss  %xmm4,%xmm2
movaps %xmm6,%xmm3
mulss  %xmm1,%xmm3
subss  %xmm2,%xmm3
movaps 0x30(%rsp),%xmm2
subss  %xmm10,%xmm2
mulss  %xmm5,%xmm1
mulss  %xmm2,%xmm4
subss  %xmm1,%xmm4
mulss  %xmm6,%xmm2
mulss  %xmm5,%xmm0
subss  %xmm2,%xmm0
subss  %xmm10,%xmm7
mulss  %xmm3,%xmm7
movaps 0x80(%rsp),%xmm2
subss  %xmm9,%xmm2
mulss  %xmm4,%xmm2
addss  %xmm7,%xmm2
movaps 0x90(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
subss  0x30(%rsp),%xmm15
subss  0xe0(%rsp),%xmm14
subss  0x40(%rsp),%xmm13
movaps %xmm14,%xmm1
movss  0x2c(%rsp),%xmm3
mulss  %xmm3,%xmm1
movss  0x24(%rsp),%xmm4
movaps %xmm4,%xmm2
mulss  %xmm13,%xmm2
subss  %xmm1,%xmm2
movss  %xmm2,(%rsp)
movss  0x28(%rsp),%xmm1
mulss  %xmm1,%xmm13
mulss  %xmm15,%xmm3
subss  %xmm13,%xmm3
movss  %xmm3,0x4(%rsp)
mulss  %xmm4,%xmm15
mulss  %xmm1,%xmm14
subss  %xmm15,%xmm14
movss  %xmm14,0x8(%rsp)
movaps 0xb0(%rsp),%xmm1
shufps $0x55,%xmm1,%xmm1
mulss  %xmm3,%xmm1
movaps 0xc0(%rsp),%xmm3
shufps $0x55,%xmm3,%xmm3
mulss  %xmm2,%xmm3
addss  %xmm1,%xmm3
movaps 0xd0(%rsp),%xmm1
shufps $0x55,%xmm1,%xmm1
mulss  %xmm14,%xmm1
addss  %xmm3,%xmm1
jmp    ad27 <tri_tri_overlap_test_3d+0x9c17>
ucomiss %xmm0,%xmm1
jbe    a100 <tri_tri_overlap_test_3d+0x8ff0>
xorps  %xmm12,%xmm12
ucomiss %xmm12,%xmm10
movss  0x18(%rsp),%xmm14
movss  0x20(%rsp),%xmm8
movss  0x1c(%rsp),%xmm15
jbe    abcb <tri_tri_overlap_test_3d+0x9abb>
movaps %xmm15,%xmm1
subss  0x30(%rsp),%xmm1
movaps %xmm14,%xmm2
subss  %xmm4,%xmm2
movaps %xmm8,%xmm3
subss  0x40(%rsp),%xmm3
movaps 0xc0(%rsp),%xmm5
movaps %xmm5,%xmm4
mulss  %xmm2,%xmm4
movaps 0xd0(%rsp),%xmm0
mulss  %xmm0,%xmm2
movaps 0xb0(%rsp),%xmm7
movaps %xmm7,%xmm6
mulss  %xmm3,%xmm6
subss  %xmm2,%xmm6
mulss  %xmm5,%xmm3
movaps %xmm0,%xmm2
mulss  %xmm1,%xmm2
subss  %xmm3,%xmm2
mulss  %xmm7,%xmm1
subss  %xmm1,%xmm4
shufps $0x55,%xmm7,%xmm7
mulss  %xmm2,%xmm7
shufps $0x55,%xmm5,%xmm5
mulss  %xmm6,%xmm5
addss  %xmm7,%xmm5
shufps $0x55,%xmm0,%xmm0
mulss  %xmm4,%xmm0
addss  %xmm5,%xmm0
ucomiss %xmm12,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm3
subss  %xmm15,%xmm3
movaps 0x80(%rsp),%xmm4
subss  %xmm14,%xmm4
movaps 0x90(%rsp),%xmm0
subss  %xmm8,%xmm0
movaps 0x130(%rsp),%xmm5
movaps %xmm5,%xmm1
mulss  %xmm0,%xmm1
movaps %xmm4,%xmm2
movaps 0x120(%rsp),%xmm6
mulss  %xmm6,%xmm2
subss  %xmm1,%xmm2
movss  %xmm2,(%rsp)
mulss  %xmm3,%xmm6
movaps 0x140(%rsp),%xmm1
mulss  %xmm1,%xmm0
subss  %xmm6,%xmm0
movss  %xmm0,0x4(%rsp)
mulss  %xmm1,%xmm4
mulss  %xmm5,%xmm3
subss  %xmm4,%xmm3
movss  %xmm3,0x8(%rsp)
movss  0x14(%rsp),%xmm4
subss  %xmm15,%xmm4
movss  0xc(%rsp),%xmm5
subss  %xmm14,%xmm5
movss  0x10(%rsp),%xmm1
subss  %xmm8,%xmm1
jmp    9d68 <tri_tri_overlap_test_3d+0x8c58>
ucomiss %xmm0,%xmm1
jbe    a270 <tri_tri_overlap_test_3d+0x9160>
movaps 0x50(%rsp),%xmm2
movaps 0x100(%rsp),%xmm7
subss  %xmm7,%xmm2
movaps 0x60(%rsp),%xmm1
movaps 0x110(%rsp),%xmm14
subss  %xmm14,%xmm1
movss  0x1c(%rsp),%xmm8
movaps %xmm8,%xmm3
movaps 0xf0(%rsp),%xmm6
subss  %xmm6,%xmm3
movss  0x18(%rsp),%xmm9
movaps %xmm9,%xmm0
subss  %xmm7,%xmm0
movss  0x20(%rsp),%xmm13
movaps %xmm13,%xmm4
subss  %xmm14,%xmm4
movaps %xmm0,%xmm5
mulss  %xmm1,%xmm5
mulss  %xmm3,%xmm1
mulss  %xmm2,%xmm3
mulss  %xmm4,%xmm2
subss  %xmm5,%xmm2
movaps 0x70(%rsp),%xmm5
subss  %xmm6,%xmm5
mulss  %xmm5,%xmm4
subss  %xmm4,%xmm1
mulss  %xmm5,%xmm0
subss  %xmm3,%xmm0
movaps 0xa0(%rsp),%xmm3
subss  %xmm6,%xmm3
mulss  %xmm2,%xmm3
movaps 0x80(%rsp),%xmm2
subss  %xmm7,%xmm2
mulss  %xmm1,%xmm2
addss  %xmm3,%xmm2
movaps 0x90(%rsp),%xmm1
subss  %xmm14,%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0x70(%rsp),%xmm3
subss  %xmm8,%xmm3
movaps 0x50(%rsp),%xmm4
subss  %xmm9,%xmm4
movaps 0x60(%rsp),%xmm5
subss  %xmm13,%xmm5
movaps 0x160(%rsp),%xmm6
movaps %xmm6,%xmm1
mulss  %xmm5,%xmm1
movaps %xmm4,%xmm2
mulss  %xmm11,%xmm2
subss  %xmm1,%xmm2
movss  %xmm2,(%rsp)
mulss  %xmm3,%xmm11
movaps 0x150(%rsp),%xmm1
mulss  %xmm1,%xmm5
subss  %xmm11,%xmm5
movss  %xmm5,0x4(%rsp)
mulss  %xmm1,%xmm4
mulss  %xmm6,%xmm3
subss  %xmm4,%xmm3
movss  %xmm3,0x8(%rsp)
movss  0x14(%rsp),%xmm1
subss  %xmm8,%xmm1
movss  0xc(%rsp),%xmm6
subss  %xmm9,%xmm6
movss  0x10(%rsp),%xmm4
subss  %xmm13,%xmm4
mulss  %xmm5,%xmm6
mulss  %xmm2,%xmm1
addss  %xmm6,%xmm1
mulss  %xmm3,%xmm4
addss  %xmm1,%xmm4
jmp    baf0 <tri_tri_overlap_test_3d+0xa9e0>
movaps 0x80(%rsp),%xmm0
movss  0x18(%rsp),%xmm9
subss  %xmm9,%xmm0
movaps 0x90(%rsp),%xmm1
movss  0x20(%rsp),%xmm8
subss  %xmm8,%xmm1
movaps 0x130(%rsp),%xmm6
movaps %xmm6,%xmm2
mulss  %xmm1,%xmm2
movaps %xmm0,%xmm3
movaps 0x120(%rsp),%xmm4
mulss  %xmm4,%xmm3
subss  %xmm2,%xmm3
movaps 0xa0(%rsp),%xmm2
movss  0x1c(%rsp),%xmm7
subss  %xmm7,%xmm2
mulss  %xmm2,%xmm4
movaps 0x140(%rsp),%xmm5
mulss  %xmm5,%xmm1
subss  %xmm4,%xmm1
mulss  %xmm5,%xmm0
mulss  %xmm6,%xmm2
subss  %xmm0,%xmm2
movss  0x14(%rsp),%xmm0
subss  %xmm7,%xmm0
mulss  %xmm3,%xmm0
movss  0xc(%rsp),%xmm3
subss  %xmm9,%xmm3
mulss  %xmm1,%xmm3
addss  %xmm0,%xmm3
movss  0x10(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm2,%xmm1
addss  %xmm3,%xmm1
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm4
subss  %xmm12,%xmm4
movaps 0x80(%rsp),%xmm5
subss  %xmm11,%xmm5
movaps 0x90(%rsp),%xmm1
subss  %xmm14,%xmm1
movaps 0x30(%rsp),%xmm0
subss  %xmm12,%xmm0
movaps 0xe0(%rsp),%xmm6
subss  %xmm11,%xmm6
movaps 0x40(%rsp),%xmm7
subss  %xmm14,%xmm7
movaps %xmm6,%xmm2
mulss  %xmm1,%xmm2
movaps %xmm5,%xmm3
mulss  %xmm7,%xmm3
subss  %xmm2,%xmm3
movss  %xmm3,(%rsp)
mulss  %xmm4,%xmm7
mulss  %xmm0,%xmm1
subss  %xmm7,%xmm1
movss  %xmm1,0x4(%rsp)
mulss  %xmm5,%xmm0
mulss  %xmm4,%xmm6
subss  %xmm0,%xmm6
movss  %xmm6,0x8(%rsp)
movaps 0x70(%rsp),%xmm4
subss  %xmm12,%xmm4
movaps 0x50(%rsp),%xmm5
subss  %xmm11,%xmm5
movaps 0x60(%rsp),%xmm2
jmp    b81d <tri_tri_overlap_test_3d+0xa70d>
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm10
movss  0x18(%rsp),%xmm9
movss  0x20(%rsp),%xmm14
movss  0x1c(%rsp),%xmm13
movaps 0xa0(%rsp),%xmm0
jbe    ad34 <tri_tri_overlap_test_3d+0x9c24>
movaps 0xf0(%rsp),%xmm7
movaps 0x70(%rsp),%xmm6
subss  %xmm7,%xmm6
movaps 0x100(%rsp),%xmm11
movaps 0x50(%rsp),%xmm5
subss  %xmm11,%xmm5
movaps 0x110(%rsp),%xmm10
movaps 0x60(%rsp),%xmm0
subss  %xmm10,%xmm0
movaps 0xe0(%rsp),%xmm1
subss  %xmm11,%xmm1
movaps 0x40(%rsp),%xmm2
subss  %xmm10,%xmm2
movaps %xmm1,%xmm3
mulss  %xmm0,%xmm3
movaps %xmm5,%xmm4
mulss  %xmm2,%xmm4
subss  %xmm3,%xmm4
movaps 0x30(%rsp),%xmm3
subss  %xmm7,%xmm3
mulss  %xmm6,%xmm2
mulss  %xmm3,%xmm0
subss  %xmm2,%xmm0
mulss  %xmm5,%xmm3
mulss  %xmm6,%xmm1
subss  %xmm3,%xmm1
movss  0x14(%rsp),%xmm2
subss  %xmm7,%xmm2
mulss  %xmm4,%xmm2
movss  0xc(%rsp),%xmm3
subss  %xmm11,%xmm3
mulss  %xmm0,%xmm3
addss  %xmm2,%xmm3
movss  0x10(%rsp),%xmm2
subss  %xmm10,%xmm2
mulss  %xmm1,%xmm2
addss  %xmm3,%xmm2
ucomiss %xmm8,%xmm2
ja     14a7 <tri_tri_overlap_test_3d+0x397>
subss  0x30(%rsp),%xmm13
subss  0xe0(%rsp),%xmm9
subss  0x40(%rsp),%xmm14
movaps 0xd0(%rsp),%xmm4
movaps %xmm4,%xmm0
shufps $0x55,%xmm4,%xmm0
movaps %xmm9,%xmm1
mulss  %xmm0,%xmm1
movaps 0xb0(%rsp),%xmm6
movaps %xmm6,%xmm2
shufps $0x55,%xmm6,%xmm2
movaps %xmm2,%xmm3
mulss  %xmm14,%xmm3
subss  %xmm1,%xmm3
movss  %xmm3,(%rsp)
movaps 0xc0(%rsp),%xmm5
movaps %xmm5,%xmm1
shufps $0x55,%xmm5,%xmm1
mulss  %xmm1,%xmm14
mulss  %xmm13,%xmm0
subss  %xmm14,%xmm0
movss  %xmm0,0x4(%rsp)
mulss  %xmm13,%xmm2
mulss  %xmm9,%xmm1
subss  %xmm2,%xmm1
movss  %xmm1,0x8(%rsp)
jmp    2230 <tri_tri_overlap_test_3d+0x1120>
xorps  %xmm12,%xmm12
ucomiss %xmm10,%xmm12
movss  0x18(%rsp),%xmm14
movss  0x20(%rsp),%xmm8
movss  0x1c(%rsp),%xmm15
jbe    ae5e <tri_tri_overlap_test_3d+0x9d4e>
movaps 0x50(%rsp),%xmm3
movaps 0x100(%rsp),%xmm7
subss  %xmm7,%xmm3
movaps 0x60(%rsp),%xmm2
movaps 0x110(%rsp),%xmm9
subss  %xmm9,%xmm2
movaps %xmm15,%xmm4
movaps 0xf0(%rsp),%xmm0
subss  %xmm0,%xmm4
movaps %xmm14,%xmm1
subss  %xmm7,%xmm1
movaps %xmm8,%xmm5
subss  %xmm9,%xmm5
movaps %xmm1,%xmm6
mulss  %xmm2,%xmm6
mulss  %xmm4,%xmm2
mulss  %xmm3,%xmm4
mulss  %xmm5,%xmm3
subss  %xmm6,%xmm3
movaps 0x70(%rsp),%xmm6
subss  %xmm0,%xmm6
mulss  %xmm6,%xmm5
subss  %xmm5,%xmm2
mulss  %xmm6,%xmm1
subss  %xmm4,%xmm1
movss  0x14(%rsp),%xmm4
subss  %xmm0,%xmm4
mulss  %xmm3,%xmm4
movss  0xc(%rsp),%xmm3
subss  %xmm7,%xmm3
mulss  %xmm2,%xmm3
addss  %xmm4,%xmm3
movss  0x10(%rsp),%xmm0
subss  %xmm9,%xmm0
mulss  %xmm1,%xmm0
addss  %xmm3,%xmm0
ucomiss %xmm12,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0x70(%rsp),%xmm0
subss  %xmm15,%xmm0
movaps 0x50(%rsp),%xmm1
subss  %xmm14,%xmm1
movaps 0x60(%rsp),%xmm2
subss  %xmm8,%xmm2
movaps 0x160(%rsp),%xmm5
movaps %xmm5,%xmm3
mulss  %xmm2,%xmm3
movaps %xmm1,%xmm4
mulss  %xmm11,%xmm4
subss  %xmm3,%xmm4
movss  %xmm4,(%rsp)
mulss  %xmm0,%xmm11
movaps 0x150(%rsp),%xmm3
mulss  %xmm3,%xmm2
subss  %xmm11,%xmm2
movss  %xmm2,0x4(%rsp)
mulss  %xmm3,%xmm1
mulss  %xmm5,%xmm0
subss  %xmm1,%xmm0
movss  %xmm0,0x8(%rsp)
movaps 0xa0(%rsp),%xmm1
subss  %xmm15,%xmm1
movaps 0x80(%rsp),%xmm3
subss  %xmm14,%xmm3
movaps 0x90(%rsp),%xmm5
jmp    c530 <tri_tri_overlap_test_3d+0xb420>
xorps  %xmm8,%xmm8
ucomiss %xmm1,%xmm8
jbe    af84 <tri_tri_overlap_test_3d+0x9e74>
movss  0x1c(%rsp),%xmm5
movss  0x14(%rsp),%xmm0
subss  %xmm5,%xmm0
movss  0x18(%rsp),%xmm3
movss  0xc(%rsp),%xmm7
subss  %xmm3,%xmm7
movss  0x20(%rsp),%xmm9
movss  0x10(%rsp),%xmm6
subss  %xmm9,%xmm6
movaps 0x160(%rsp),%xmm4
movaps %xmm4,%xmm1
mulss  %xmm6,%xmm1
movaps %xmm7,%xmm2
mulss  %xmm11,%xmm2
subss  %xmm1,%xmm2
mulss  %xmm0,%xmm11
movaps 0x150(%rsp),%xmm1
mulss  %xmm1,%xmm6
subss  %xmm11,%xmm6
mulss  %xmm1,%xmm7
mulss  %xmm4,%xmm0
subss  %xmm7,%xmm0
movaps 0x70(%rsp),%xmm1
subss  %xmm5,%xmm1
mulss  %xmm2,%xmm1
movaps 0x50(%rsp),%xmm2
subss  %xmm3,%xmm2
mulss  %xmm6,%xmm2
addss  %xmm1,%xmm2
movaps 0x60(%rsp),%xmm1
subss  %xmm9,%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
ucomiss %xmm8,%xmm1
movaps 0x110(%rsp),%xmm2
movaps 0x100(%rsp),%xmm3
movaps 0xf0(%rsp),%xmm4
ja     14a7 <tri_tri_overlap_test_3d+0x397>
subss  0x30(%rsp),%xmm4
subss  0xe0(%rsp),%xmm3
subss  0x40(%rsp),%xmm2
movaps %xmm3,%xmm0
movss  0x2c(%rsp),%xmm5
mulss  %xmm5,%xmm0
movss  0x24(%rsp),%xmm6
movaps %xmm6,%xmm1
mulss  %xmm2,%xmm1
subss  %xmm0,%xmm1
movss  %xmm1,(%rsp)
movss  0x28(%rsp),%xmm0
mulss  %xmm0,%xmm2
mulss  %xmm4,%xmm5
subss  %xmm2,%xmm5
movss  %xmm5,0x4(%rsp)
mulss  %xmm6,%xmm4
mulss  %xmm0,%xmm3
subss  %xmm4,%xmm3
movss  %xmm3,0x8(%rsp)
movaps 0xb0(%rsp),%xmm2
mulss  %xmm5,%xmm2
movaps 0xc0(%rsp),%xmm0
mulss  %xmm1,%xmm0
addss  %xmm2,%xmm0
movaps 0xd0(%rsp),%xmm1
jmp    5863 <tri_tri_overlap_test_3d+0x4753>
movss  0x1c(%rsp),%xmm10
movaps %xmm10,%xmm1
subss  0x30(%rsp),%xmm1
movss  0x18(%rsp),%xmm7
movaps %xmm7,%xmm0
subss  %xmm4,%xmm0
movss  0x20(%rsp),%xmm8
movaps %xmm8,%xmm2
subss  0x40(%rsp),%xmm2
movaps %xmm0,%xmm3
movss  0x2c(%rsp),%xmm5
mulss  %xmm5,%xmm3
movss  0x24(%rsp),%xmm6
movaps %xmm6,%xmm4
mulss  %xmm2,%xmm4
subss  %xmm3,%xmm4
movss  0x28(%rsp),%xmm3
mulss  %xmm3,%xmm2
mulss  %xmm1,%xmm5
subss  %xmm2,%xmm5
mulss  %xmm6,%xmm1
mulss  %xmm3,%xmm0
subss  %xmm1,%xmm0
movaps 0xb0(%rsp),%xmm1
shufps $0x55,%xmm1,%xmm1
mulss  %xmm5,%xmm1
movaps 0xc0(%rsp),%xmm2
shufps $0x55,%xmm2,%xmm2
mulss  %xmm4,%xmm2
addss  %xmm1,%xmm2
movaps 0xd0(%rsp),%xmm1
shufps $0x55,%xmm1,%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
xorps  %xmm9,%xmm9
ucomiss %xmm9,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x14(%rsp),%xmm1
subss  %xmm10,%xmm1
movss  0xc(%rsp),%xmm2
subss  %xmm7,%xmm2
movss  0x10(%rsp),%xmm3
subss  %xmm8,%xmm3
movaps 0x130(%rsp),%xmm5
movaps %xmm5,%xmm4
mulss  %xmm3,%xmm4
movaps %xmm2,%xmm6
movaps 0x120(%rsp),%xmm0
mulss  %xmm0,%xmm6
subss  %xmm4,%xmm6
movss  %xmm6,(%rsp)
mulss  %xmm1,%xmm0
movaps 0x140(%rsp),%xmm4
mulss  %xmm4,%xmm3
subss  %xmm0,%xmm3
movss  %xmm3,0x4(%rsp)
mulss  %xmm4,%xmm2
mulss  %xmm5,%xmm1
subss  %xmm2,%xmm1
movss  %xmm1,0x8(%rsp)
movaps 0xa0(%rsp),%xmm2
subss  %xmm10,%xmm2
movaps 0x80(%rsp),%xmm4
subss  %xmm7,%xmm4
movaps 0x90(%rsp),%xmm5
jmp    9290 <tri_tri_overlap_test_3d+0x8180>
movss  0xc(%rsp),%xmm0
movss  0x18(%rsp),%xmm9
subss  %xmm9,%xmm0
movss  0x10(%rsp),%xmm1
movss  0x20(%rsp),%xmm8
subss  %xmm8,%xmm1
movaps 0x130(%rsp),%xmm6
movaps %xmm6,%xmm2
mulss  %xmm1,%xmm2
movaps %xmm0,%xmm3
movaps 0x120(%rsp),%xmm4
mulss  %xmm4,%xmm3
subss  %xmm2,%xmm3
movss  0x14(%rsp),%xmm2
movss  0x1c(%rsp),%xmm7
subss  %xmm7,%xmm2
mulss  %xmm2,%xmm4
movaps 0x140(%rsp),%xmm5
mulss  %xmm5,%xmm1
subss  %xmm4,%xmm1
mulss  %xmm5,%xmm0
mulss  %xmm6,%xmm2
subss  %xmm0,%xmm2
movaps 0x70(%rsp),%xmm0
subss  %xmm7,%xmm0
mulss  %xmm3,%xmm0
movaps 0x50(%rsp),%xmm3
subss  %xmm9,%xmm3
mulss  %xmm1,%xmm3
addss  %xmm0,%xmm3
movaps 0x60(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm2,%xmm1
addss  %xmm3,%xmm1
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x14(%rsp),%xmm4
subss  %xmm12,%xmm4
movss  0xc(%rsp),%xmm5
subss  %xmm11,%xmm5
movss  0x10(%rsp),%xmm1
subss  %xmm14,%xmm1
movaps 0x30(%rsp),%xmm0
subss  %xmm12,%xmm0
movaps 0xe0(%rsp),%xmm6
subss  %xmm11,%xmm6
movaps 0x40(%rsp),%xmm7
subss  %xmm14,%xmm7
movaps %xmm6,%xmm2
mulss  %xmm1,%xmm2
movaps %xmm5,%xmm3
mulss  %xmm7,%xmm3
subss  %xmm2,%xmm3
movss  %xmm3,(%rsp)
mulss  %xmm4,%xmm7
mulss  %xmm0,%xmm1
subss  %xmm7,%xmm1
movss  %xmm1,0x4(%rsp)
mulss  %xmm5,%xmm0
mulss  %xmm4,%xmm6
subss  %xmm0,%xmm6
movss  %xmm6,0x8(%rsp)
movaps 0xa0(%rsp),%xmm4
subss  %xmm12,%xmm4
movaps 0x80(%rsp),%xmm5
subss  %xmm11,%xmm5
movaps 0x90(%rsp),%xmm2
jmp    b81d <tri_tri_overlap_test_3d+0xa70d>
movss  0x1c(%rsp),%xmm4
movss  0x14(%rsp),%xmm5
subss  %xmm4,%xmm5
movss  0x18(%rsp),%xmm2
movss  0xc(%rsp),%xmm7
subss  %xmm2,%xmm7
movss  0x20(%rsp),%xmm8
movss  0x10(%rsp),%xmm6
subss  %xmm8,%xmm6
movaps 0x160(%rsp),%xmm3
movaps %xmm3,%xmm0
mulss  %xmm6,%xmm0
movaps %xmm7,%xmm1
mulss  %xmm11,%xmm1
subss  %xmm0,%xmm1
mulss  %xmm5,%xmm11
movaps 0x150(%rsp),%xmm0
mulss  %xmm0,%xmm6
subss  %xmm11,%xmm6
mulss  %xmm0,%xmm7
mulss  %xmm3,%xmm5
subss  %xmm7,%xmm5
movaps 0x70(%rsp),%xmm0
subss  %xmm4,%xmm0
mulss  %xmm1,%xmm0
movaps 0x50(%rsp),%xmm4
subss  %xmm2,%xmm4
mulss  %xmm6,%xmm4
addss  %xmm0,%xmm4
movaps 0x60(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm5,%xmm1
addss  %xmm4,%xmm1
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
movaps 0x110(%rsp),%xmm3
movaps 0x100(%rsp),%xmm4
movaps 0xf0(%rsp),%xmm5
ja     14a7 <tri_tri_overlap_test_3d+0x397>
jmp    c0bb <tri_tri_overlap_test_3d+0xafab>
movaps %xmm12,%xmm0
subss  0x30(%rsp),%xmm0
movaps %xmm11,%xmm1
subss  %xmm5,%xmm1
movaps %xmm14,%xmm2
subss  0x40(%rsp),%xmm2
movaps 0xd0(%rsp),%xmm5
shufps $0x55,%xmm5,%xmm5
movaps 0xb0(%rsp),%xmm3
shufps $0x55,%xmm3,%xmm3
movaps %xmm3,%xmm7
mulss  %xmm2,%xmm7
movaps 0xc0(%rsp),%xmm6
shufps $0x55,%xmm6,%xmm6
mulss  %xmm6,%xmm2
mulss  %xmm1,%xmm6
mulss  %xmm5,%xmm1
subss  %xmm1,%xmm7
mulss  %xmm0,%xmm5
subss  %xmm2,%xmm5
mulss  %xmm0,%xmm3
subss  %xmm3,%xmm6
movss  0x24(%rsp),%xmm0
mulss  %xmm5,%xmm0
movss  0x28(%rsp),%xmm1
mulss  %xmm7,%xmm1
addss  %xmm0,%xmm1
movss  0x2c(%rsp),%xmm0
mulss  %xmm6,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0x70(%rsp),%xmm3
subss  %xmm12,%xmm3
movaps 0x50(%rsp),%xmm0
subss  %xmm11,%xmm0
movaps 0x60(%rsp),%xmm5
subss  %xmm14,%xmm5
subss  %xmm12,%xmm15
subss  %xmm11,%xmm4
subss  %xmm14,%xmm10
movaps %xmm4,%xmm1
mulss  %xmm5,%xmm1
movaps %xmm0,%xmm2
mulss  %xmm10,%xmm2
subss  %xmm1,%xmm2
movss  %xmm2,(%rsp)
mulss  %xmm3,%xmm10
mulss  %xmm15,%xmm5
subss  %xmm10,%xmm5
movss  %xmm5,0x4(%rsp)
mulss  %xmm0,%xmm15
mulss  %xmm3,%xmm4
subss  %xmm15,%xmm4
movss  %xmm4,0x8(%rsp)
movaps 0xa0(%rsp),%xmm1
subss  %xmm12,%xmm1
movaps 0x80(%rsp),%xmm6
subss  %xmm11,%xmm6
movaps 0x90(%rsp),%xmm3
subss  %xmm14,%xmm3
mulss  %xmm5,%xmm6
mulss  %xmm2,%xmm1
addss  %xmm6,%xmm1
mulss  %xmm4,%xmm3
jmp    5589 <tri_tri_overlap_test_3d+0x4479>
movaps 0x50(%rsp),%xmm0
movss  0x18(%rsp),%xmm9
subss  %xmm9,%xmm0
movaps 0x60(%rsp),%xmm1
movss  0x20(%rsp),%xmm8
subss  %xmm8,%xmm1
movaps 0x130(%rsp),%xmm6
movaps %xmm6,%xmm2
mulss  %xmm1,%xmm2
movaps %xmm0,%xmm3
movaps 0x120(%rsp),%xmm4
mulss  %xmm4,%xmm3
subss  %xmm2,%xmm3
movaps 0x70(%rsp),%xmm2
movss  0x1c(%rsp),%xmm7
subss  %xmm7,%xmm2
mulss  %xmm2,%xmm4
movaps 0x140(%rsp),%xmm5
mulss  %xmm5,%xmm1
subss  %xmm4,%xmm1
mulss  %xmm5,%xmm0
mulss  %xmm6,%xmm2
subss  %xmm0,%xmm2
movss  0x14(%rsp),%xmm0
subss  %xmm7,%xmm0
mulss  %xmm3,%xmm0
movss  0xc(%rsp),%xmm3
subss  %xmm9,%xmm3
mulss  %xmm1,%xmm3
addss  %xmm0,%xmm3
movss  0x10(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm2,%xmm1
addss  %xmm3,%xmm1
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0x70(%rsp),%xmm4
subss  %xmm12,%xmm4
movaps 0x50(%rsp),%xmm2
subss  %xmm11,%xmm2
movaps 0x60(%rsp),%xmm1
subss  %xmm14,%xmm1
movaps 0x30(%rsp),%xmm7
subss  %xmm12,%xmm7
movaps 0xe0(%rsp),%xmm6
subss  %xmm11,%xmm6
movaps 0x40(%rsp),%xmm5
subss  %xmm14,%xmm5
movaps %xmm6,%xmm3
mulss  %xmm1,%xmm3
mulss  %xmm7,%xmm1
mulss  %xmm2,%xmm7
mulss  %xmm5,%xmm2
subss  %xmm3,%xmm2
movss  %xmm2,(%rsp)
mulss  %xmm4,%xmm5
subss  %xmm5,%xmm1
movss  %xmm1,0x4(%rsp)
mulss  %xmm4,%xmm6
subss  %xmm7,%xmm6
movss  %xmm6,0x8(%rsp)
movaps 0xa0(%rsp),%xmm5
subss  %xmm12,%xmm5
movaps 0x80(%rsp),%xmm3
subss  %xmm11,%xmm3
movaps 0x90(%rsp),%xmm4
jmp    bad7 <tri_tri_overlap_test_3d+0xa9c7>
movss  0x1c(%rsp),%xmm7
movaps %xmm7,%xmm0
subss  0x30(%rsp),%xmm0
movss  0x18(%rsp),%xmm10
movaps %xmm10,%xmm1
subss  %xmm4,%xmm1
movss  0x20(%rsp),%xmm11
movaps %xmm11,%xmm2
subss  0x40(%rsp),%xmm2
movaps 0xd0(%rsp),%xmm4
shufps $0x55,%xmm4,%xmm4
movaps 0xb0(%rsp),%xmm3
shufps $0x55,%xmm3,%xmm3
movaps %xmm3,%xmm6
mulss  %xmm2,%xmm6
movaps 0xc0(%rsp),%xmm5
shufps $0x55,%xmm5,%xmm5
mulss  %xmm5,%xmm2
mulss  %xmm1,%xmm5
mulss  %xmm4,%xmm1
subss  %xmm1,%xmm6
mulss  %xmm0,%xmm4
subss  %xmm2,%xmm4
mulss  %xmm0,%xmm3
subss  %xmm3,%xmm5
movss  0x24(%rsp),%xmm0
mulss  %xmm4,%xmm0
movss  0x28(%rsp),%xmm1
mulss  %xmm6,%xmm1
addss  %xmm0,%xmm1
movss  0x2c(%rsp),%xmm0
mulss  %xmm5,%xmm0
addss  %xmm1,%xmm0
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0x70(%rsp),%xmm0
subss  %xmm7,%xmm0
movaps 0x50(%rsp),%xmm3
subss  %xmm10,%xmm3
movaps 0x60(%rsp),%xmm1
subss  %xmm11,%xmm1
movaps 0x130(%rsp),%xmm5
movaps %xmm5,%xmm2
mulss  %xmm1,%xmm2
movaps %xmm3,%xmm4
movaps 0x120(%rsp),%xmm6
mulss  %xmm6,%xmm4
subss  %xmm2,%xmm4
movss  %xmm4,(%rsp)
mulss  %xmm0,%xmm6
movaps 0x140(%rsp),%xmm2
mulss  %xmm2,%xmm1
subss  %xmm6,%xmm1
movss  %xmm1,0x4(%rsp)
mulss  %xmm2,%xmm3
mulss  %xmm5,%xmm0
subss  %xmm3,%xmm0
movss  %xmm0,0x8(%rsp)
movaps 0xa0(%rsp),%xmm5
subss  %xmm7,%xmm5
movaps 0x80(%rsp),%xmm7
subss  %xmm10,%xmm7
movaps 0x90(%rsp),%xmm2
subss  %xmm11,%xmm2
mulss  %xmm1,%xmm7
mulss  %xmm4,%xmm5
addss  %xmm7,%xmm5
mulss  %xmm0,%xmm2
addss  %xmm5,%xmm2
jmp    b836 <tri_tri_overlap_test_3d+0xa726>
movss  0xc(%rsp),%xmm2
movaps 0x100(%rsp),%xmm7
subss  %xmm7,%xmm2
movss  0x10(%rsp),%xmm1
movaps 0x110(%rsp),%xmm14
subss  %xmm14,%xmm1
movss  0x1c(%rsp),%xmm8
movaps %xmm8,%xmm3
movaps 0xf0(%rsp),%xmm6
subss  %xmm6,%xmm3
movss  0x18(%rsp),%xmm9
movaps %xmm9,%xmm0
subss  %xmm7,%xmm0
movss  0x20(%rsp),%xmm13
movaps %xmm13,%xmm4
subss  %xmm14,%xmm4
movaps %xmm0,%xmm5
mulss  %xmm1,%xmm5
mulss  %xmm3,%xmm1
mulss  %xmm2,%xmm3
mulss  %xmm4,%xmm2
subss  %xmm5,%xmm2
movss  0x14(%rsp),%xmm5
subss  %xmm6,%xmm5
mulss  %xmm5,%xmm4
subss  %xmm4,%xmm1
mulss  %xmm5,%xmm0
subss  %xmm3,%xmm0
movaps 0x70(%rsp),%xmm3
subss  %xmm6,%xmm3
mulss  %xmm2,%xmm3
movaps 0x50(%rsp),%xmm2
subss  %xmm7,%xmm2
mulss  %xmm1,%xmm2
addss  %xmm3,%xmm2
movaps 0x60(%rsp),%xmm1
subss  %xmm14,%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x14(%rsp),%xmm3
subss  %xmm8,%xmm3
movss  0xc(%rsp),%xmm4
subss  %xmm9,%xmm4
movss  0x10(%rsp),%xmm5
subss  %xmm13,%xmm5
movaps 0x160(%rsp),%xmm6
movaps %xmm6,%xmm1
mulss  %xmm5,%xmm1
movaps %xmm4,%xmm2
mulss  %xmm11,%xmm2
subss  %xmm1,%xmm2
movss  %xmm2,(%rsp)
mulss  %xmm3,%xmm11
movaps 0x150(%rsp),%xmm1
mulss  %xmm1,%xmm5
subss  %xmm11,%xmm5
movss  %xmm5,0x4(%rsp)
mulss  %xmm1,%xmm4
mulss  %xmm6,%xmm3
subss  %xmm4,%xmm3
movss  %xmm3,0x8(%rsp)
movaps 0xa0(%rsp),%xmm1
subss  %xmm8,%xmm1
movaps 0x80(%rsp),%xmm6
subss  %xmm9,%xmm6
movaps 0x90(%rsp),%xmm4
jmp    80c5 <tri_tri_overlap_test_3d+0x6fb5>
movaps 0x80(%rsp),%xmm2
movaps 0x100(%rsp),%xmm7
subss  %xmm7,%xmm2
movaps 0x90(%rsp),%xmm1
movaps 0x110(%rsp),%xmm9
subss  %xmm9,%xmm1
movaps %xmm15,%xmm3
movaps 0xf0(%rsp),%xmm6
subss  %xmm6,%xmm3
movaps %xmm14,%xmm0
subss  %xmm7,%xmm0
movaps %xmm8,%xmm4
subss  %xmm9,%xmm4
movaps %xmm0,%xmm5
mulss  %xmm1,%xmm5
mulss  %xmm3,%xmm1
mulss  %xmm2,%xmm3
mulss  %xmm4,%xmm2
subss  %xmm5,%xmm2
movaps 0xa0(%rsp),%xmm5
subss  %xmm6,%xmm5
mulss  %xmm5,%xmm4
subss  %xmm4,%xmm1
mulss  %xmm5,%xmm0
subss  %xmm3,%xmm0
movaps 0x70(%rsp),%xmm3
subss  %xmm6,%xmm3
mulss  %xmm2,%xmm3
movaps 0x50(%rsp),%xmm2
subss  %xmm7,%xmm2
mulss  %xmm1,%xmm2
addss  %xmm3,%xmm2
movaps 0x60(%rsp),%xmm1
subss  %xmm9,%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm1
subss  %xmm15,%xmm1
movaps 0x80(%rsp),%xmm2
subss  %xmm14,%xmm2
movaps 0x90(%rsp),%xmm3
subss  %xmm8,%xmm3
movaps 0x160(%rsp),%xmm6
movaps %xmm6,%xmm4
mulss  %xmm3,%xmm4
movaps %xmm2,%xmm5
mulss  %xmm11,%xmm5
subss  %xmm4,%xmm5
movss  %xmm5,(%rsp)
mulss  %xmm1,%xmm11
movaps 0x150(%rsp),%xmm4
mulss  %xmm4,%xmm3
subss  %xmm11,%xmm3
movss  %xmm3,0x4(%rsp)
mulss  %xmm4,%xmm2
mulss  %xmm6,%xmm1
subss  %xmm2,%xmm1
movss  %xmm1,0x8(%rsp)
movss  0x14(%rsp),%xmm2
subss  %xmm15,%xmm2
movss  0xc(%rsp),%xmm4
subss  %xmm14,%xmm4
movss  0x10(%rsp),%xmm6
jmp    bfd2 <tri_tri_overlap_test_3d+0xaec2>
movss  0x1c(%rsp),%xmm4
movaps 0xa0(%rsp),%xmm5
subss  %xmm4,%xmm5
movss  0x18(%rsp),%xmm2
movaps 0x80(%rsp),%xmm7
subss  %xmm2,%xmm7
movss  0x20(%rsp),%xmm8
movaps 0x90(%rsp),%xmm6
subss  %xmm8,%xmm6
movaps 0x160(%rsp),%xmm3
movaps %xmm3,%xmm0
mulss  %xmm6,%xmm0
movaps %xmm7,%xmm1
mulss  %xmm11,%xmm1
subss  %xmm0,%xmm1
mulss  %xmm5,%xmm11
movaps 0x150(%rsp),%xmm0
mulss  %xmm0,%xmm6
subss  %xmm11,%xmm6
mulss  %xmm0,%xmm7
mulss  %xmm3,%xmm5
subss  %xmm7,%xmm5
movss  0x14(%rsp),%xmm0
subss  %xmm4,%xmm0
mulss  %xmm1,%xmm0
movss  0xc(%rsp),%xmm4
subss  %xmm2,%xmm4
mulss  %xmm6,%xmm4
addss  %xmm0,%xmm4
movss  0x10(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm5,%xmm1
addss  %xmm4,%xmm1
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm1
movaps 0x110(%rsp),%xmm4
movaps 0x100(%rsp),%xmm3
movaps 0xf0(%rsp),%xmm5
jbe    9a30 <tri_tri_overlap_test_3d+0x8920>
jmp    14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x1c(%rsp),%xmm10
movaps %xmm10,%xmm0
subss  0x30(%rsp),%xmm0
movss  0x18(%rsp),%xmm7
movaps %xmm7,%xmm1
subss  %xmm4,%xmm1
movss  0x20(%rsp),%xmm8
movaps %xmm8,%xmm2
subss  0x40(%rsp),%xmm2
movaps %xmm1,%xmm3
movaps 0xd0(%rsp),%xmm5
mulss  %xmm5,%xmm3
movaps 0xb0(%rsp),%xmm6
movaps %xmm6,%xmm4
mulss  %xmm2,%xmm4
subss  %xmm3,%xmm4
movaps 0xc0(%rsp),%xmm3
mulss  %xmm3,%xmm2
mulss  %xmm0,%xmm5
subss  %xmm2,%xmm5
mulss  %xmm6,%xmm0
mulss  %xmm3,%xmm1
subss  %xmm0,%xmm1
movss  0x24(%rsp),%xmm2
mulss  %xmm5,%xmm2
movss  0x28(%rsp),%xmm0
mulss  %xmm4,%xmm0
addss  %xmm2,%xmm0
movss  0x2c(%rsp),%xmm2
mulss  %xmm1,%xmm2
addss  %xmm0,%xmm2
xorps  %xmm9,%xmm9
ucomiss %xmm9,%xmm2
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm1
subss  %xmm10,%xmm1
movaps 0x80(%rsp),%xmm2
subss  %xmm7,%xmm2
movaps 0x90(%rsp),%xmm3
subss  %xmm8,%xmm3
movaps 0x130(%rsp),%xmm5
movaps %xmm5,%xmm4
mulss  %xmm3,%xmm4
movaps %xmm2,%xmm6
movaps 0x120(%rsp),%xmm0
mulss  %xmm0,%xmm6
subss  %xmm4,%xmm6
movss  %xmm6,(%rsp)
mulss  %xmm1,%xmm0
movaps 0x140(%rsp),%xmm4
mulss  %xmm4,%xmm3
subss  %xmm0,%xmm3
movss  %xmm3,0x4(%rsp)
mulss  %xmm4,%xmm2
mulss  %xmm5,%xmm1
subss  %xmm2,%xmm1
movss  %xmm1,0x8(%rsp)
movaps 0x70(%rsp),%xmm2
subss  %xmm10,%xmm2
movaps 0x50(%rsp),%xmm4
subss  %xmm7,%xmm4
movaps 0x60(%rsp),%xmm5
subss  %xmm8,%xmm5
mulss  %xmm3,%xmm4
mulss  %xmm6,%xmm2
addss  %xmm4,%xmm2
mulss  %xmm1,%xmm5
addss  %xmm2,%xmm5
xor    %eax,%eax
ucomiss %xmm9,%xmm5
setbe  %al
jmp    14a7 <tri_tri_overlap_test_3d+0x397>
movaps %xmm12,%xmm0
subss  0x30(%rsp),%xmm0
movaps %xmm11,%xmm1
subss  %xmm4,%xmm1
movaps %xmm10,%xmm2
subss  0x40(%rsp),%xmm2
movaps %xmm1,%xmm3
movaps 0xd0(%rsp),%xmm5
mulss  %xmm5,%xmm3
movaps 0xb0(%rsp),%xmm6
movaps %xmm6,%xmm4
mulss  %xmm2,%xmm4
subss  %xmm3,%xmm4
movaps 0xc0(%rsp),%xmm3
mulss  %xmm3,%xmm2
mulss  %xmm0,%xmm5
subss  %xmm2,%xmm5
mulss  %xmm6,%xmm0
mulss  %xmm3,%xmm1
subss  %xmm0,%xmm1
movss  0x24(%rsp),%xmm2
mulss  %xmm5,%xmm2
movss  0x28(%rsp),%xmm0
mulss  %xmm4,%xmm0
addss  %xmm2,%xmm0
movss  0x2c(%rsp),%xmm2
mulss  %xmm1,%xmm2
addss  %xmm0,%xmm2
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm2
movss  0x18(%rsp),%xmm6
movss  0x20(%rsp),%xmm5
movss  0x1c(%rsp),%xmm7
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm2
subss  %xmm12,%xmm2
movaps 0x80(%rsp),%xmm3
subss  %xmm11,%xmm3
movaps 0x90(%rsp),%xmm1
subss  %xmm10,%xmm1
subss  %xmm12,%xmm7
subss  %xmm11,%xmm6
subss  %xmm10,%xmm5
movaps %xmm6,%xmm4
mulss  %xmm1,%xmm4
mulss  %xmm7,%xmm1
mulss  %xmm3,%xmm7
mulss  %xmm5,%xmm3
subss  %xmm4,%xmm3
movss  %xmm3,(%rsp)
mulss  %xmm2,%xmm5
subss  %xmm5,%xmm1
movss  %xmm1,0x4(%rsp)
mulss  %xmm2,%xmm6
subss  %xmm7,%xmm6
movss  %xmm6,0x8(%rsp)
movaps 0x70(%rsp),%xmm2
subss  %xmm12,%xmm2
movaps 0x50(%rsp),%xmm4
subss  %xmm11,%xmm4
movaps 0x60(%rsp),%xmm5
subss  %xmm10,%xmm5
jmp    b97d <tri_tri_overlap_test_3d+0xa86d>
movaps 0x80(%rsp),%xmm0
subss  %xmm6,%xmm0
movaps 0x90(%rsp),%xmm1
subss  %xmm8,%xmm1
movaps 0x130(%rsp),%xmm5
movaps %xmm5,%xmm2
mulss  %xmm1,%xmm2
movaps %xmm0,%xmm3
movaps 0x120(%rsp),%xmm7
mulss  %xmm7,%xmm3
subss  %xmm2,%xmm3
movaps 0xa0(%rsp),%xmm2
subss  %xmm10,%xmm2
mulss  %xmm2,%xmm7
movaps 0x140(%rsp),%xmm4
mulss  %xmm4,%xmm1
subss  %xmm7,%xmm1
mulss  %xmm4,%xmm0
mulss  %xmm5,%xmm2
subss  %xmm0,%xmm2
movaps 0x70(%rsp),%xmm0
subss  %xmm10,%xmm0
mulss  %xmm3,%xmm0
movaps 0x50(%rsp),%xmm3
subss  %xmm6,%xmm3
mulss  %xmm1,%xmm3
addss  %xmm0,%xmm3
movaps 0x60(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm2,%xmm1
addss  %xmm3,%xmm1
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm4
subss  %xmm12,%xmm4
movaps 0x80(%rsp),%xmm2
subss  %xmm11,%xmm2
movaps 0x90(%rsp),%xmm1
subss  %xmm14,%xmm1
movaps 0x30(%rsp),%xmm7
subss  %xmm12,%xmm7
movaps 0xe0(%rsp),%xmm6
subss  %xmm11,%xmm6
movaps 0x40(%rsp),%xmm5
subss  %xmm14,%xmm5
movaps %xmm6,%xmm3
mulss  %xmm1,%xmm3
mulss  %xmm7,%xmm1
mulss  %xmm2,%xmm7
mulss  %xmm5,%xmm2
subss  %xmm3,%xmm2
movss  %xmm2,(%rsp)
mulss  %xmm4,%xmm5
subss  %xmm5,%xmm1
movss  %xmm1,0x4(%rsp)
mulss  %xmm4,%xmm6
subss  %xmm7,%xmm6
movss  %xmm6,0x8(%rsp)
movss  0x14(%rsp),%xmm5
subss  %xmm12,%xmm5
movss  0xc(%rsp),%xmm3
subss  %xmm11,%xmm3
movss  0x10(%rsp),%xmm4
jmp    bad7 <tri_tri_overlap_test_3d+0xa9c7>
movaps %xmm15,%xmm0
subss  0x30(%rsp),%xmm0
movaps %xmm14,%xmm1
subss  %xmm4,%xmm1
movaps %xmm8,%xmm2
subss  0x40(%rsp),%xmm2
movaps 0xc0(%rsp),%xmm5
movaps %xmm5,%xmm3
mulss  %xmm1,%xmm3
movaps 0xd0(%rsp),%xmm6
mulss  %xmm6,%xmm1
movaps 0xb0(%rsp),%xmm7
movaps %xmm7,%xmm4
mulss  %xmm2,%xmm4
subss  %xmm1,%xmm4
mulss  %xmm5,%xmm2
movaps %xmm6,%xmm1
mulss  %xmm0,%xmm1
subss  %xmm2,%xmm1
mulss  %xmm7,%xmm0
subss  %xmm0,%xmm3
shufps $0x55,%xmm7,%xmm7
mulss  %xmm1,%xmm7
shufps $0x55,%xmm5,%xmm5
mulss  %xmm4,%xmm5
addss  %xmm7,%xmm5
shufps $0x55,%xmm6,%xmm6
mulss  %xmm3,%xmm6
addss  %xmm5,%xmm6
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm6
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm4
subss  %xmm15,%xmm4
movaps 0x80(%rsp),%xmm6
subss  %xmm14,%xmm6
movaps 0x90(%rsp),%xmm1
subss  %xmm8,%xmm1
movaps 0x130(%rsp),%xmm5
movaps %xmm5,%xmm2
mulss  %xmm1,%xmm2
movaps %xmm6,%xmm3
movaps 0x120(%rsp),%xmm7
mulss  %xmm7,%xmm3
subss  %xmm2,%xmm3
movss  %xmm3,(%rsp)
mulss  %xmm4,%xmm7
movaps 0x140(%rsp),%xmm2
mulss  %xmm2,%xmm1
subss  %xmm7,%xmm1
movss  %xmm1,0x4(%rsp)
mulss  %xmm2,%xmm6
mulss  %xmm5,%xmm4
subss  %xmm6,%xmm4
movss  %xmm4,0x8(%rsp)
movss  0x14(%rsp),%xmm5
subss  %xmm15,%xmm5
movss  0xc(%rsp),%xmm6
subss  %xmm14,%xmm6
movss  0x10(%rsp),%xmm2
subss  %xmm8,%xmm2
jmp    bc42 <tri_tri_overlap_test_3d+0xab32>
xorps  %xmm0,%xmm0
ucomiss %xmm1,%xmm0
jbe    b0ee <tri_tri_overlap_test_3d+0x9fde>
ucomiss %xmm0,%xmm10
jae    bdb6 <tri_tri_overlap_test_3d+0xaca6>
movss  0x1c(%rsp),%xmm4
movaps 0xa0(%rsp),%xmm5
subss  %xmm4,%xmm5
movss  0x18(%rsp),%xmm2
movaps 0x80(%rsp),%xmm7
subss  %xmm2,%xmm7
movss  0x20(%rsp),%xmm8
movaps 0x90(%rsp),%xmm6
subss  %xmm8,%xmm6
movaps 0x160(%rsp),%xmm3
movaps %xmm3,%xmm0
mulss  %xmm6,%xmm0
movaps %xmm7,%xmm1
mulss  %xmm11,%xmm1
subss  %xmm0,%xmm1
mulss  %xmm5,%xmm11
movaps 0x150(%rsp),%xmm0
mulss  %xmm0,%xmm6
subss  %xmm11,%xmm6
mulss  %xmm0,%xmm7
mulss  %xmm3,%xmm5
subss  %xmm7,%xmm5
movaps 0x70(%rsp),%xmm0
subss  %xmm4,%xmm0
mulss  %xmm1,%xmm0
movaps 0x50(%rsp),%xmm4
subss  %xmm2,%xmm4
mulss  %xmm6,%xmm4
addss  %xmm0,%xmm4
movaps 0x60(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm5,%xmm1
addss  %xmm4,%xmm1
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm1
movaps 0x110(%rsp),%xmm3
movaps 0x100(%rsp),%xmm4
movaps 0xf0(%rsp),%xmm5
ja     14a7 <tri_tri_overlap_test_3d+0x397>
subss  0x30(%rsp),%xmm5
subss  0xe0(%rsp),%xmm4
subss  0x40(%rsp),%xmm3
movaps %xmm4,%xmm1
movaps 0xd0(%rsp),%xmm6
mulss  %xmm6,%xmm1
movaps 0xb0(%rsp),%xmm0
movaps %xmm0,%xmm2
mulss  %xmm3,%xmm2
subss  %xmm1,%xmm2
movss  %xmm2,(%rsp)
movaps 0xc0(%rsp),%xmm7
mulss  %xmm7,%xmm3
movaps %xmm6,%xmm1
mulss  %xmm5,%xmm1
subss  %xmm3,%xmm1
movss  %xmm1,0x4(%rsp)
mulss  %xmm0,%xmm5
mulss  %xmm7,%xmm4
subss  %xmm5,%xmm4
movss  %xmm4,0x8(%rsp)
movss  0x24(%rsp),%xmm0
mulss  %xmm1,%xmm0
movss  0x28(%rsp),%xmm1
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movss  0x2c(%rsp),%xmm0
mulss  %xmm4,%xmm0
jmp    b549 <tri_tri_overlap_test_3d+0xa439>
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
jbe    b273 <tri_tri_overlap_test_3d+0xa163>
ucomiss %xmm0,%xmm10
movss  0x18(%rsp),%xmm14
movss  0x20(%rsp),%xmm8
movss  0x1c(%rsp),%xmm15
jbe    be90 <tri_tri_overlap_test_3d+0xad80>
movaps %xmm15,%xmm0
subss  0x30(%rsp),%xmm0
movaps %xmm14,%xmm1
subss  %xmm4,%xmm1
movaps %xmm8,%xmm2
subss  0x40(%rsp),%xmm2
movaps 0xc0(%rsp),%xmm5
movaps %xmm5,%xmm3
mulss  %xmm1,%xmm3
movaps 0xd0(%rsp),%xmm6
mulss  %xmm6,%xmm1
movaps 0xb0(%rsp),%xmm7
movaps %xmm7,%xmm4
mulss  %xmm2,%xmm4
subss  %xmm1,%xmm4
mulss  %xmm5,%xmm2
movaps %xmm6,%xmm1
mulss  %xmm0,%xmm1
subss  %xmm2,%xmm1
mulss  %xmm7,%xmm0
subss  %xmm0,%xmm3
shufps $0x55,%xmm7,%xmm7
mulss  %xmm1,%xmm7
shufps $0x55,%xmm5,%xmm5
mulss  %xmm4,%xmm5
addss  %xmm7,%xmm5
shufps $0x55,%xmm6,%xmm6
mulss  %xmm3,%xmm6
addss  %xmm5,%xmm6
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm6
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm1
subss  %xmm15,%xmm1
movaps 0x80(%rsp),%xmm2
subss  %xmm14,%xmm2
movaps 0x90(%rsp),%xmm3
subss  %xmm8,%xmm3
movaps 0x130(%rsp),%xmm5
movaps %xmm5,%xmm4
mulss  %xmm3,%xmm4
movaps %xmm2,%xmm6
movaps 0x120(%rsp),%xmm7
mulss  %xmm7,%xmm6
subss  %xmm4,%xmm6
movss  %xmm6,(%rsp)
mulss  %xmm1,%xmm7
movaps 0x140(%rsp),%xmm4
mulss  %xmm4,%xmm3
subss  %xmm7,%xmm3
movss  %xmm3,0x4(%rsp)
mulss  %xmm4,%xmm2
mulss  %xmm5,%xmm1
subss  %xmm2,%xmm1
movss  %xmm1,0x8(%rsp)
movss  0x14(%rsp),%xmm2
subss  %xmm15,%xmm2
movss  0xc(%rsp),%xmm4
subss  %xmm14,%xmm4
movss  0x10(%rsp),%xmm5
subss  %xmm8,%xmm5
mulss  %xmm3,%xmm4
mulss  %xmm6,%xmm2
addss  %xmm4,%xmm2
mulss  %xmm1,%xmm5
addss  %xmm2,%xmm5
jmp    c54c <tri_tri_overlap_test_3d+0xb43c>
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm10
jbe    b3dc <tri_tri_overlap_test_3d+0xa2cc>
ucomiss %xmm0,%xmm1
jbe    bff8 <tri_tri_overlap_test_3d+0xaee8>
movaps 0xf0(%rsp),%xmm6
movaps 0xa0(%rsp),%xmm7
subss  %xmm6,%xmm7
movaps 0x100(%rsp),%xmm9
movaps 0x80(%rsp),%xmm5
subss  %xmm9,%xmm5
movaps 0x110(%rsp),%xmm8
movaps 0x90(%rsp),%xmm4
subss  %xmm8,%xmm4
movaps 0xe0(%rsp),%xmm0
subss  %xmm9,%xmm0
movaps 0x40(%rsp),%xmm1
subss  %xmm8,%xmm1
movaps %xmm0,%xmm2
mulss  %xmm4,%xmm2
movaps %xmm5,%xmm3
mulss  %xmm1,%xmm3
subss  %xmm2,%xmm3
movaps 0x30(%rsp),%xmm2
subss  %xmm6,%xmm2
mulss  %xmm7,%xmm1
mulss  %xmm2,%xmm4
subss  %xmm1,%xmm4
mulss  %xmm5,%xmm2
mulss  %xmm7,%xmm0
subss  %xmm2,%xmm0
movss  0x14(%rsp),%xmm1
subss  %xmm6,%xmm1
mulss  %xmm3,%xmm1
movss  0xc(%rsp),%xmm2
subss  %xmm9,%xmm2
mulss  %xmm4,%xmm2
addss  %xmm1,%xmm2
movss  0x10(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm1
movss  0x18(%rsp),%xmm3
movss  0x20(%rsp),%xmm4
movss  0x1c(%rsp),%xmm5
ja     14a7 <tri_tri_overlap_test_3d+0x397>
subss  0x30(%rsp),%xmm5
subss  0xe0(%rsp),%xmm3
subss  0x40(%rsp),%xmm4
movaps 0xc0(%rsp),%xmm7
movaps %xmm7,%xmm1
mulss  %xmm3,%xmm1
movaps 0xd0(%rsp),%xmm6
mulss  %xmm6,%xmm3
movaps 0xb0(%rsp),%xmm2
movaps %xmm2,%xmm0
mulss  %xmm4,%xmm0
subss  %xmm3,%xmm0
movss  %xmm0,(%rsp)
mulss  %xmm7,%xmm4
movaps %xmm6,%xmm3
mulss  %xmm5,%xmm3
subss  %xmm4,%xmm3
movss  %xmm3,0x4(%rsp)
mulss  %xmm2,%xmm5
subss  %xmm5,%xmm1
movss  %xmm1,0x8(%rsp)
shufps $0x55,%xmm2,%xmm2
mulss  %xmm3,%xmm2
shufps $0x55,%xmm7,%xmm7
mulss  %xmm0,%xmm7
addss  %xmm2,%xmm7
shufps $0x55,%xmm6,%xmm6
mulss  %xmm1,%xmm6
addss  %xmm7,%xmm6
xor    %eax,%eax
ucomiss %xmm8,%xmm6
setbe  %al
jmp    14a7 <tri_tri_overlap_test_3d+0x397>
ucomiss %xmm14,%xmm1
jbe    b55b <tri_tri_overlap_test_3d+0xa44b>
movaps 0x50(%rsp),%xmm3
movaps 0x100(%rsp),%xmm0
subss  %xmm0,%xmm3
movaps 0x60(%rsp),%xmm2
movaps 0x110(%rsp),%xmm15
subss  %xmm15,%xmm2
movss  0x1c(%rsp),%xmm9
movaps %xmm9,%xmm4
movaps 0xf0(%rsp),%xmm7
subss  %xmm7,%xmm4
movss  0x18(%rsp),%xmm13
movaps %xmm13,%xmm1
subss  %xmm0,%xmm1
movss  0x20(%rsp),%xmm8
movaps %xmm8,%xmm5
subss  %xmm15,%xmm5
movaps %xmm1,%xmm6
mulss  %xmm2,%xmm6
mulss  %xmm4,%xmm2
mulss  %xmm3,%xmm4
mulss  %xmm5,%xmm3
subss  %xmm6,%xmm3
movaps 0x70(%rsp),%xmm6
subss  %xmm7,%xmm6
mulss  %xmm6,%xmm5
subss  %xmm5,%xmm2
mulss  %xmm6,%xmm1
subss  %xmm4,%xmm1
movaps 0xa0(%rsp),%xmm4
subss  %xmm7,%xmm4
mulss  %xmm3,%xmm4
movaps 0x80(%rsp),%xmm3
subss  %xmm0,%xmm3
mulss  %xmm2,%xmm3
addss  %xmm4,%xmm3
movaps 0x90(%rsp),%xmm0
subss  %xmm15,%xmm0
mulss  %xmm1,%xmm0
addss  %xmm3,%xmm0
ucomiss %xmm14,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0x70(%rsp),%xmm0
subss  %xmm9,%xmm0
movaps 0x50(%rsp),%xmm1
subss  %xmm13,%xmm1
movaps 0x60(%rsp),%xmm2
subss  %xmm8,%xmm2
movaps 0x160(%rsp),%xmm5
movaps %xmm5,%xmm3
mulss  %xmm2,%xmm3
movaps %xmm1,%xmm4
mulss  %xmm11,%xmm4
subss  %xmm3,%xmm4
movss  %xmm4,(%rsp)
mulss  %xmm0,%xmm11
movaps 0x150(%rsp),%xmm3
mulss  %xmm3,%xmm2
subss  %xmm11,%xmm2
movss  %xmm2,0x4(%rsp)
mulss  %xmm3,%xmm1
mulss  %xmm5,%xmm0
subss  %xmm1,%xmm0
movss  %xmm0,0x8(%rsp)
movss  0x14(%rsp),%xmm1
subss  %xmm9,%xmm1
movss  0xc(%rsp),%xmm3
subss  %xmm13,%xmm3
movss  0x10(%rsp),%xmm5
jmp    c530 <tri_tri_overlap_test_3d+0xb420>
ucomiss %xmm8,%xmm1
jbe    b6c2 <tri_tri_overlap_test_3d+0xa5b2>
movaps %xmm12,%xmm1
subss  0x30(%rsp),%xmm1
movaps %xmm11,%xmm2
subss  %xmm4,%xmm2
movaps %xmm14,%xmm3
subss  0x40(%rsp),%xmm3
movaps 0xd0(%rsp),%xmm9
movaps %xmm9,%xmm4
shufps $0x55,%xmm9,%xmm4
movaps 0xb0(%rsp),%xmm10
movaps %xmm10,%xmm5
shufps $0x55,%xmm10,%xmm5
movaps %xmm5,%xmm6
mulss  %xmm3,%xmm6
movaps 0xc0(%rsp),%xmm0
movaps %xmm0,%xmm7
shufps $0x55,%xmm0,%xmm7
mulss  %xmm7,%xmm3
mulss  %xmm2,%xmm7
mulss  %xmm4,%xmm2
subss  %xmm2,%xmm6
mulss  %xmm1,%xmm4
subss  %xmm3,%xmm4
mulss  %xmm1,%xmm5
subss  %xmm5,%xmm7
mulss  %xmm10,%xmm4
mulss  %xmm0,%xmm6
addss  %xmm4,%xmm6
mulss  %xmm9,%xmm7
addss  %xmm6,%xmm7
ucomiss %xmm8,%xmm7
movss  0x18(%rsp),%xmm3
movss  0x20(%rsp),%xmm4
movss  0x1c(%rsp),%xmm5
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0x70(%rsp),%xmm6
subss  %xmm12,%xmm6
movaps 0x50(%rsp),%xmm7
subss  %xmm11,%xmm7
movaps 0x60(%rsp),%xmm0
subss  %xmm14,%xmm0
subss  %xmm12,%xmm5
subss  %xmm11,%xmm3
subss  %xmm14,%xmm4
movaps %xmm3,%xmm1
mulss  %xmm0,%xmm1
movaps %xmm7,%xmm2
mulss  %xmm4,%xmm2
subss  %xmm1,%xmm2
movss  %xmm2,(%rsp)
mulss  %xmm6,%xmm4
mulss  %xmm5,%xmm0
subss  %xmm4,%xmm0
movss  %xmm0,0x4(%rsp)
mulss  %xmm7,%xmm5
mulss  %xmm6,%xmm3
subss  %xmm5,%xmm3
movss  %xmm3,0x8(%rsp)
movss  0x14(%rsp),%xmm4
subss  %xmm12,%xmm4
movss  0xc(%rsp),%xmm5
subss  %xmm11,%xmm5
movss  0x10(%rsp),%xmm1
subss  %xmm14,%xmm1
mulss  %xmm0,%xmm5
mulss  %xmm2,%xmm4
addss  %xmm5,%xmm4
mulss  %xmm3,%xmm1
addss  %xmm4,%xmm1
jmp    ad24 <tri_tri_overlap_test_3d+0x9c14>
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm10
jbe    b844 <tri_tri_overlap_test_3d+0xa734>
ucomiss %xmm0,%xmm1
jbe    c14e <tri_tri_overlap_test_3d+0xb03e>
movaps 0x80(%rsp),%xmm0
movss  0x18(%rsp),%xmm9
subss  %xmm9,%xmm0
movaps 0x90(%rsp),%xmm1
movss  0x20(%rsp),%xmm8
subss  %xmm8,%xmm1
movaps 0x130(%rsp),%xmm6
movaps %xmm6,%xmm2
mulss  %xmm1,%xmm2
movaps %xmm0,%xmm3
movaps 0x120(%rsp),%xmm4
mulss  %xmm4,%xmm3
subss  %xmm2,%xmm3
movaps 0xa0(%rsp),%xmm2
movss  0x1c(%rsp),%xmm7
subss  %xmm7,%xmm2
mulss  %xmm2,%xmm4
movaps 0x140(%rsp),%xmm5
mulss  %xmm5,%xmm1
subss  %xmm4,%xmm1
mulss  %xmm5,%xmm0
mulss  %xmm6,%xmm2
subss  %xmm0,%xmm2
movss  0x14(%rsp),%xmm0
subss  %xmm7,%xmm0
mulss  %xmm3,%xmm0
movss  0xc(%rsp),%xmm3
subss  %xmm9,%xmm3
mulss  %xmm1,%xmm3
addss  %xmm0,%xmm3
movss  0x10(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm2,%xmm1
addss  %xmm3,%xmm1
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm2
subss  %xmm12,%xmm2
movaps 0x80(%rsp),%xmm3
subss  %xmm11,%xmm3
movaps 0x90(%rsp),%xmm1
subss  %xmm14,%xmm1
movaps 0x30(%rsp),%xmm7
subss  %xmm12,%xmm7
movaps 0xe0(%rsp),%xmm6
subss  %xmm11,%xmm6
movaps 0x40(%rsp),%xmm5
subss  %xmm14,%xmm5
movaps %xmm6,%xmm4
mulss  %xmm1,%xmm4
mulss  %xmm7,%xmm1
mulss  %xmm3,%xmm7
mulss  %xmm5,%xmm3
subss  %xmm4,%xmm3
movss  %xmm3,(%rsp)
mulss  %xmm2,%xmm5
subss  %xmm5,%xmm1
movss  %xmm1,0x4(%rsp)
mulss  %xmm2,%xmm6
subss  %xmm7,%xmm6
movss  %xmm6,0x8(%rsp)
movaps 0x70(%rsp),%xmm2
subss  %xmm12,%xmm2
movaps 0x50(%rsp),%xmm4
subss  %xmm11,%xmm4
movaps 0x60(%rsp),%xmm5
jmp    b978 <tri_tri_overlap_test_3d+0xa868>
xorps  %xmm8,%xmm8
ucomiss %xmm1,%xmm8
ja     1686 <tri_tri_overlap_test_3d+0x576>
jmp    c6ea <tri_tri_overlap_test_3d+0xb5da>
xorps  %xmm9,%xmm9
ucomiss %xmm10,%xmm9
jbe    bafd <tri_tri_overlap_test_3d+0xa9ed>
movss  0xc(%rsp),%xmm1
subss  %xmm6,%xmm1
movss  0x10(%rsp),%xmm2
subss  %xmm8,%xmm2
movaps 0x130(%rsp),%xmm10
movaps %xmm10,%xmm3
mulss  %xmm2,%xmm3
movaps %xmm1,%xmm4
movaps 0x120(%rsp),%xmm5
mulss  %xmm5,%xmm4
subss  %xmm3,%xmm4
movss  0x14(%rsp),%xmm3
subss  %xmm15,%xmm3
mulss  %xmm3,%xmm5
movaps 0x140(%rsp),%xmm7
mulss  %xmm7,%xmm2
subss  %xmm5,%xmm2
mulss  %xmm7,%xmm1
mulss  %xmm10,%xmm3
subss  %xmm1,%xmm3
subss  %xmm15,%xmm0
mulss  %xmm4,%xmm0
movaps 0x80(%rsp),%xmm1
subss  %xmm6,%xmm1
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
movaps 0x90(%rsp),%xmm0
subss  %xmm8,%xmm0
mulss  %xmm3,%xmm0
addss  %xmm1,%xmm0
ucomiss %xmm9,%xmm0
jbe    18ed <tri_tri_overlap_test_3d+0x7dd>
jmp    14a7 <tri_tri_overlap_test_3d+0x397>
ucomiss %xmm15,%xmm10
movss  0x18(%rsp),%xmm6
movss  0x20(%rsp),%xmm7
movss  0x1c(%rsp),%xmm8
movaps 0xa0(%rsp),%xmm4
jbe    b996 <tri_tri_overlap_test_3d+0xa886>
movaps %xmm7,%xmm9
movaps %xmm12,%xmm1
subss  0x30(%rsp),%xmm1
movaps %xmm11,%xmm2
subss  0xe0(%rsp),%xmm2
movaps %xmm14,%xmm3
subss  0x40(%rsp),%xmm3
movaps %xmm2,%xmm4
movss  0x2c(%rsp),%xmm0
mulss  %xmm0,%xmm4
movss  0x24(%rsp),%xmm7
movaps %xmm7,%xmm5
mulss  %xmm3,%xmm5
subss  %xmm4,%xmm5
movss  0x28(%rsp),%xmm4
mulss  %xmm4,%xmm3
mulss  %xmm1,%xmm0
subss  %xmm3,%xmm0
mulss  %xmm7,%xmm1
mulss  %xmm4,%xmm2
subss  %xmm1,%xmm2
movaps 0xb0(%rsp),%xmm1
mulss  %xmm0,%xmm1
movaps 0xc0(%rsp),%xmm3
mulss  %xmm5,%xmm3
addss  %xmm1,%xmm3
movaps 0xd0(%rsp),%xmm1
mulss  %xmm2,%xmm1
addss  %xmm3,%xmm1
ucomiss %xmm15,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x14(%rsp),%xmm3
subss  %xmm12,%xmm3
movss  0xc(%rsp),%xmm1
subss  %xmm11,%xmm1
movss  0x10(%rsp),%xmm0
subss  %xmm14,%xmm0
subss  %xmm12,%xmm8
subss  %xmm11,%xmm6
subss  %xmm14,%xmm9
movaps %xmm6,%xmm2
mulss  %xmm0,%xmm2
mulss  %xmm8,%xmm0
mulss  %xmm1,%xmm8
mulss  %xmm9,%xmm1
subss  %xmm2,%xmm1
movss  %xmm1,(%rsp)
mulss  %xmm3,%xmm9
subss  %xmm9,%xmm0
movss  %xmm0,0x4(%rsp)
mulss  %xmm3,%xmm6
subss  %xmm8,%xmm6
movss  %xmm6,0x8(%rsp)
movaps 0x70(%rsp),%xmm4
subss  %xmm12,%xmm4
movaps 0x50(%rsp),%xmm2
subss  %xmm11,%xmm2
movaps 0x60(%rsp),%xmm3
jmp    abad <tri_tri_overlap_test_3d+0x9a9d>
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm10
movss  0x18(%rsp),%xmm14
movss  0x20(%rsp),%xmm12
movss  0x1c(%rsp),%xmm15
jbe    bb16 <tri_tri_overlap_test_3d+0xaa06>
movss  0xc(%rsp),%xmm3
movaps 0x100(%rsp),%xmm0
subss  %xmm0,%xmm3
movss  0x10(%rsp),%xmm2
movaps 0x110(%rsp),%xmm9
subss  %xmm9,%xmm2
movaps %xmm15,%xmm4
movaps 0xf0(%rsp),%xmm7
subss  %xmm7,%xmm4
movaps %xmm14,%xmm1
subss  %xmm0,%xmm1
movaps %xmm12,%xmm5
subss  %xmm9,%xmm5
movaps %xmm1,%xmm6
mulss  %xmm2,%xmm6
mulss  %xmm4,%xmm2
mulss  %xmm3,%xmm4
mulss  %xmm5,%xmm3
subss  %xmm6,%xmm3
movss  0x14(%rsp),%xmm6
subss  %xmm7,%xmm6
mulss  %xmm6,%xmm5
subss  %xmm5,%xmm2
mulss  %xmm6,%xmm1
subss  %xmm4,%xmm1
movaps 0xa0(%rsp),%xmm4
subss  %xmm7,%xmm4
mulss  %xmm3,%xmm4
movaps 0x80(%rsp),%xmm3
subss  %xmm0,%xmm3
mulss  %xmm2,%xmm3
addss  %xmm4,%xmm3
movaps 0x90(%rsp),%xmm0
subss  %xmm9,%xmm0
mulss  %xmm1,%xmm0
addss  %xmm3,%xmm0
ucomiss %xmm8,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x14(%rsp),%xmm3
subss  %xmm15,%xmm3
movss  0xc(%rsp),%xmm4
subss  %xmm14,%xmm4
movss  0x10(%rsp),%xmm0
subss  %xmm12,%xmm0
movaps 0x160(%rsp),%xmm5
movaps %xmm5,%xmm1
mulss  %xmm0,%xmm1
movaps %xmm4,%xmm2
mulss  %xmm11,%xmm2
subss  %xmm1,%xmm2
movss  %xmm2,(%rsp)
mulss  %xmm3,%xmm11
movaps 0x150(%rsp),%xmm1
mulss  %xmm1,%xmm0
subss  %xmm11,%xmm0
movss  %xmm0,0x4(%rsp)
mulss  %xmm1,%xmm4
mulss  %xmm5,%xmm3
subss  %xmm4,%xmm3
movss  %xmm3,0x8(%rsp)
movaps 0x70(%rsp),%xmm4
subss  %xmm15,%xmm4
movaps 0x50(%rsp),%xmm5
subss  %xmm14,%xmm5
movaps 0x60(%rsp),%xmm1
subss  %xmm12,%xmm1
jmp    9d68 <tri_tri_overlap_test_3d+0x8c58>
xorps  %xmm8,%xmm8
ucomiss %xmm1,%xmm8
ja     1e17 <tri_tri_overlap_test_3d+0xd07>
jmp    b6a9 <tri_tri_overlap_test_3d+0xa599>
movaps 0x80(%rsp),%xmm1
movss  0x18(%rsp),%xmm10
subss  %xmm10,%xmm1
movaps 0x90(%rsp),%xmm2
movss  0x20(%rsp),%xmm9
subss  %xmm9,%xmm2
movaps 0x130(%rsp),%xmm7
movaps %xmm7,%xmm3
mulss  %xmm2,%xmm3
movaps %xmm1,%xmm4
movaps 0x120(%rsp),%xmm6
mulss  %xmm6,%xmm4
subss  %xmm3,%xmm4
movaps 0xa0(%rsp),%xmm3
movss  0x1c(%rsp),%xmm0
subss  %xmm0,%xmm3
mulss  %xmm3,%xmm6
movaps 0x140(%rsp),%xmm5
mulss  %xmm5,%xmm2
subss  %xmm6,%xmm2
mulss  %xmm5,%xmm1
mulss  %xmm7,%xmm3
subss  %xmm1,%xmm3
movss  0x14(%rsp),%xmm1
subss  %xmm0,%xmm1
mulss  %xmm4,%xmm1
movss  0xc(%rsp),%xmm4
subss  %xmm10,%xmm4
mulss  %xmm2,%xmm4
addss  %xmm1,%xmm4
movss  0x10(%rsp),%xmm0
subss  %xmm9,%xmm0
mulss  %xmm3,%xmm0
addss  %xmm4,%xmm0
ucomiss %xmm8,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm1
subss  %xmm12,%xmm1
movaps 0x80(%rsp),%xmm2
subss  %xmm11,%xmm2
movaps 0x90(%rsp),%xmm0
subss  %xmm14,%xmm0
movaps 0x30(%rsp),%xmm6
subss  %xmm12,%xmm6
movaps 0xe0(%rsp),%xmm5
subss  %xmm11,%xmm5
movaps 0x40(%rsp),%xmm4
subss  %xmm14,%xmm4
movaps %xmm5,%xmm3
mulss  %xmm0,%xmm3
mulss  %xmm6,%xmm0
mulss  %xmm2,%xmm6
mulss  %xmm4,%xmm2
subss  %xmm3,%xmm2
movss  %xmm2,(%rsp)
mulss  %xmm1,%xmm4
subss  %xmm4,%xmm0
movss  %xmm0,0x4(%rsp)
mulss  %xmm1,%xmm5
subss  %xmm6,%xmm5
movss  %xmm5,0x8(%rsp)
movaps 0x70(%rsp),%xmm1
subss  %xmm12,%xmm1
movaps 0x50(%rsp),%xmm3
subss  %xmm11,%xmm3
movaps 0x60(%rsp),%xmm4
jmp    aa68 <tri_tri_overlap_test_3d+0x9958>
movss  0x1c(%rsp),%xmm8
movaps %xmm8,%xmm1
subss  0x30(%rsp),%xmm1
movss  0x18(%rsp),%xmm10
movaps %xmm10,%xmm2
subss  %xmm4,%xmm2
movss  0x20(%rsp),%xmm7
movaps %xmm7,%xmm3
subss  0x40(%rsp),%xmm3
movaps 0xd0(%rsp),%xmm0
shufps $0x55,%xmm0,%xmm0
movaps 0xb0(%rsp),%xmm4
shufps $0x55,%xmm4,%xmm4
movaps %xmm4,%xmm6
mulss  %xmm3,%xmm6
movaps 0xc0(%rsp),%xmm5
shufps $0x55,%xmm5,%xmm5
mulss  %xmm5,%xmm3
mulss  %xmm2,%xmm5
mulss  %xmm0,%xmm2
subss  %xmm2,%xmm6
mulss  %xmm1,%xmm0
subss  %xmm3,%xmm0
mulss  %xmm1,%xmm4
subss  %xmm4,%xmm5
movss  0x24(%rsp),%xmm2
mulss  %xmm0,%xmm2
movss  0x28(%rsp),%xmm1
mulss  %xmm6,%xmm1
addss  %xmm2,%xmm1
movss  0x2c(%rsp),%xmm0
mulss  %xmm5,%xmm0
addss  %xmm1,%xmm0
ucomiss %xmm14,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0x70(%rsp),%xmm0
subss  %xmm8,%xmm0
movaps 0x50(%rsp),%xmm1
subss  %xmm10,%xmm1
movaps 0x60(%rsp),%xmm2
subss  %xmm7,%xmm2
movaps 0x130(%rsp),%xmm5
movaps %xmm5,%xmm3
mulss  %xmm2,%xmm3
movaps %xmm1,%xmm4
movaps 0x120(%rsp),%xmm6
mulss  %xmm6,%xmm4
subss  %xmm3,%xmm4
movss  %xmm4,(%rsp)
mulss  %xmm0,%xmm6
movaps 0x140(%rsp),%xmm3
mulss  %xmm3,%xmm2
subss  %xmm6,%xmm2
movss  %xmm2,0x4(%rsp)
mulss  %xmm3,%xmm1
mulss  %xmm5,%xmm0
subss  %xmm1,%xmm0
movss  %xmm0,0x8(%rsp)
movaps 0xa0(%rsp),%xmm1
subss  %xmm8,%xmm1
movaps 0x80(%rsp),%xmm3
subss  %xmm10,%xmm3
movaps 0x90(%rsp),%xmm5
subss  %xmm7,%xmm5
jmp    c535 <tri_tri_overlap_test_3d+0xb425>
movaps 0xf0(%rsp),%xmm7
movss  0x14(%rsp),%xmm0
subss  %xmm7,%xmm0
movaps 0x100(%rsp),%xmm10
movss  0xc(%rsp),%xmm6
subss  %xmm10,%xmm6
movaps 0x110(%rsp),%xmm9
movss  0x10(%rsp),%xmm5
subss  %xmm9,%xmm5
movaps 0xe0(%rsp),%xmm1
subss  %xmm10,%xmm1
movaps 0x40(%rsp),%xmm2
subss  %xmm9,%xmm2
movaps %xmm1,%xmm3
mulss  %xmm5,%xmm3
movaps %xmm6,%xmm4
mulss  %xmm2,%xmm4
subss  %xmm3,%xmm4
movaps 0x30(%rsp),%xmm3
subss  %xmm7,%xmm3
mulss  %xmm0,%xmm2
mulss  %xmm3,%xmm5
subss  %xmm2,%xmm5
mulss  %xmm6,%xmm3
mulss  %xmm0,%xmm1
subss  %xmm3,%xmm1
movaps 0x70(%rsp),%xmm0
subss  %xmm7,%xmm0
mulss  %xmm4,%xmm0
movaps 0x50(%rsp),%xmm2
subss  %xmm10,%xmm2
mulss  %xmm5,%xmm2
addss  %xmm0,%xmm2
movaps 0x60(%rsp),%xmm0
subss  %xmm9,%xmm0
mulss  %xmm1,%xmm0
addss  %xmm2,%xmm0
ucomiss %xmm8,%xmm0
movss  0x18(%rsp),%xmm2
movss  0x20(%rsp),%xmm3
movss  0x1c(%rsp),%xmm4
ja     14a7 <tri_tri_overlap_test_3d+0x397>
subss  0x30(%rsp),%xmm4
subss  0xe0(%rsp),%xmm2
subss  0x40(%rsp),%xmm3
movaps %xmm2,%xmm0
movss  0x2c(%rsp),%xmm5
mulss  %xmm5,%xmm0
movss  0x24(%rsp),%xmm6
movaps %xmm6,%xmm1
mulss  %xmm3,%xmm1
subss  %xmm0,%xmm1
movss  %xmm1,(%rsp)
movss  0x28(%rsp),%xmm0
mulss  %xmm0,%xmm3
mulss  %xmm4,%xmm5
subss  %xmm3,%xmm5
movss  %xmm5,0x4(%rsp)
mulss  %xmm6,%xmm4
mulss  %xmm0,%xmm2
subss  %xmm4,%xmm2
movss  %xmm2,0x8(%rsp)
movaps 0xb0(%rsp),%xmm3
mulss  %xmm5,%xmm3
movaps 0xc0(%rsp),%xmm0
mulss  %xmm1,%xmm0
addss  %xmm3,%xmm0
movaps 0xd0(%rsp),%xmm1
mulss  %xmm2,%xmm1
jmp    5867 <tri_tri_overlap_test_3d+0x4757>
movss  0xc(%rsp),%xmm3
movaps 0x100(%rsp),%xmm7
subss  %xmm7,%xmm3
movss  0x10(%rsp),%xmm2
movaps 0x110(%rsp),%xmm15
subss  %xmm15,%xmm2
movss  0x1c(%rsp),%xmm9
movaps %xmm9,%xmm4
movaps 0xf0(%rsp),%xmm0
subss  %xmm0,%xmm4
movss  0x18(%rsp),%xmm13
movaps %xmm13,%xmm1
subss  %xmm7,%xmm1
movss  0x20(%rsp),%xmm8
movaps %xmm8,%xmm5
subss  %xmm15,%xmm5
movaps %xmm1,%xmm6
mulss  %xmm2,%xmm6
mulss  %xmm4,%xmm2
mulss  %xmm3,%xmm4
mulss  %xmm5,%xmm3
subss  %xmm6,%xmm3
movss  0x14(%rsp),%xmm6
subss  %xmm0,%xmm6
mulss  %xmm6,%xmm5
subss  %xmm5,%xmm2
mulss  %xmm6,%xmm1
subss  %xmm4,%xmm1
movaps 0x70(%rsp),%xmm4
subss  %xmm0,%xmm4
mulss  %xmm3,%xmm4
movaps 0x50(%rsp),%xmm3
subss  %xmm7,%xmm3
mulss  %xmm2,%xmm3
addss  %xmm4,%xmm3
movaps 0x60(%rsp),%xmm0
subss  %xmm15,%xmm0
mulss  %xmm1,%xmm0
addss  %xmm3,%xmm0
ucomiss %xmm14,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x14(%rsp),%xmm0
subss  %xmm9,%xmm0
movss  0xc(%rsp),%xmm1
subss  %xmm13,%xmm1
movss  0x10(%rsp),%xmm2
subss  %xmm8,%xmm2
movaps 0x160(%rsp),%xmm5
movaps %xmm5,%xmm3
mulss  %xmm2,%xmm3
movaps %xmm1,%xmm4
mulss  %xmm11,%xmm4
subss  %xmm3,%xmm4
movss  %xmm4,(%rsp)
mulss  %xmm0,%xmm11
movaps 0x150(%rsp),%xmm3
mulss  %xmm3,%xmm2
subss  %xmm11,%xmm2
movss  %xmm2,0x4(%rsp)
mulss  %xmm3,%xmm1
mulss  %xmm5,%xmm0
subss  %xmm1,%xmm0
movss  %xmm0,0x8(%rsp)
movaps 0xa0(%rsp),%xmm1
subss  %xmm9,%xmm1
movaps 0x80(%rsp),%xmm3
subss  %xmm13,%xmm3
movaps 0x90(%rsp),%xmm5
jmp    c530 <tri_tri_overlap_test_3d+0xb420>
movaps %xmm12,%xmm2
subss  0x30(%rsp),%xmm2
movaps %xmm11,%xmm1
subss  %xmm4,%xmm1
movaps %xmm14,%xmm3
subss  0x40(%rsp),%xmm3
movaps %xmm1,%xmm4
movss  0x2c(%rsp),%xmm6
mulss  %xmm6,%xmm4
movss  0x24(%rsp),%xmm7
movaps %xmm7,%xmm5
mulss  %xmm3,%xmm5
subss  %xmm4,%xmm5
movss  0x28(%rsp),%xmm0
mulss  %xmm0,%xmm3
mulss  %xmm2,%xmm6
subss  %xmm3,%xmm6
mulss  %xmm7,%xmm2
mulss  %xmm0,%xmm1
subss  %xmm2,%xmm1
movaps 0xb0(%rsp),%xmm0
shufps $0x55,%xmm0,%xmm0
mulss  %xmm6,%xmm0
movaps 0xc0(%rsp),%xmm2
shufps $0x55,%xmm2,%xmm2
mulss  %xmm5,%xmm2
addss  %xmm0,%xmm2
movaps 0xd0(%rsp),%xmm0
shufps $0x55,%xmm0,%xmm0
mulss  %xmm1,%xmm0
addss  %xmm2,%xmm0
ucomiss %xmm8,%xmm0
movss  0x18(%rsp),%xmm3
movss  0x20(%rsp),%xmm4
movss  0x1c(%rsp),%xmm5
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x14(%rsp),%xmm6
subss  %xmm12,%xmm6
movss  0xc(%rsp),%xmm7
subss  %xmm11,%xmm7
movss  0x10(%rsp),%xmm0
subss  %xmm14,%xmm0
subss  %xmm12,%xmm5
subss  %xmm11,%xmm3
subss  %xmm14,%xmm4
movaps %xmm3,%xmm1
mulss  %xmm0,%xmm1
movaps %xmm7,%xmm2
mulss  %xmm4,%xmm2
subss  %xmm1,%xmm2
movss  %xmm2,(%rsp)
mulss  %xmm6,%xmm4
mulss  %xmm5,%xmm0
subss  %xmm4,%xmm0
movss  %xmm0,0x4(%rsp)
mulss  %xmm7,%xmm5
mulss  %xmm6,%xmm3
subss  %xmm5,%xmm3
movss  %xmm3,0x8(%rsp)
movaps 0xa0(%rsp),%xmm4
subss  %xmm12,%xmm4
movaps 0x80(%rsp),%xmm5
subss  %xmm11,%xmm5
movaps 0x90(%rsp),%xmm1
jmp    9d63 <tri_tri_overlap_test_3d+0x8c53>
movss  0xc(%rsp),%xmm1
movss  0x18(%rsp),%xmm10
subss  %xmm10,%xmm1
movss  0x10(%rsp),%xmm2
movss  0x20(%rsp),%xmm9
subss  %xmm9,%xmm2
movaps 0x130(%rsp),%xmm7
movaps %xmm7,%xmm3
mulss  %xmm2,%xmm3
movaps %xmm1,%xmm4
movaps 0x120(%rsp),%xmm6
mulss  %xmm6,%xmm4
subss  %xmm3,%xmm4
movss  0x14(%rsp),%xmm3
movss  0x1c(%rsp),%xmm0
subss  %xmm0,%xmm3
mulss  %xmm3,%xmm6
movaps 0x140(%rsp),%xmm5
mulss  %xmm5,%xmm2
subss  %xmm6,%xmm2
mulss  %xmm5,%xmm1
mulss  %xmm7,%xmm3
subss  %xmm1,%xmm3
movaps 0x70(%rsp),%xmm1
subss  %xmm0,%xmm1
mulss  %xmm4,%xmm1
movaps 0x50(%rsp),%xmm4
subss  %xmm10,%xmm4
mulss  %xmm2,%xmm4
addss  %xmm1,%xmm4
movaps 0x60(%rsp),%xmm0
subss  %xmm9,%xmm0
mulss  %xmm3,%xmm0
addss  %xmm4,%xmm0
ucomiss %xmm8,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x14(%rsp),%xmm1
subss  %xmm12,%xmm1
movss  0xc(%rsp),%xmm2
subss  %xmm11,%xmm2
movss  0x10(%rsp),%xmm0
subss  %xmm14,%xmm0
movaps 0x30(%rsp),%xmm6
subss  %xmm12,%xmm6
movaps 0xe0(%rsp),%xmm5
subss  %xmm11,%xmm5
movaps 0x40(%rsp),%xmm4
subss  %xmm14,%xmm4
movaps %xmm5,%xmm3
mulss  %xmm0,%xmm3
mulss  %xmm6,%xmm0
mulss  %xmm2,%xmm6
mulss  %xmm4,%xmm2
subss  %xmm3,%xmm2
movss  %xmm2,(%rsp)
mulss  %xmm1,%xmm4
subss  %xmm4,%xmm0
movss  %xmm0,0x4(%rsp)
mulss  %xmm1,%xmm5
subss  %xmm6,%xmm5
movss  %xmm5,0x8(%rsp)
movaps 0xa0(%rsp),%xmm1
subss  %xmm12,%xmm1
movaps 0x80(%rsp),%xmm3
subss  %xmm11,%xmm3
movaps 0x90(%rsp),%xmm4
subss  %xmm14,%xmm4
mulss  %xmm0,%xmm3
mulss  %xmm2,%xmm1
addss  %xmm3,%xmm1
mulss  %xmm5,%xmm4
addss  %xmm1,%xmm4
xorps  %xmm0,%xmm0
jmp    baf0 <tri_tri_overlap_test_3d+0xa9e0>
movaps %xmm12,%xmm1
subss  0x30(%rsp),%xmm1
movaps %xmm11,%xmm2
subss  %xmm4,%xmm2
movaps %xmm14,%xmm3
subss  0x40(%rsp),%xmm3
movaps 0xd0(%rsp),%xmm5
shufps $0x55,%xmm5,%xmm5
movaps 0xb0(%rsp),%xmm4
shufps $0x55,%xmm4,%xmm4
movaps %xmm4,%xmm7
mulss  %xmm3,%xmm7
movaps 0xc0(%rsp),%xmm0
shufps $0x55,%xmm0,%xmm0
mulss  %xmm0,%xmm3
mulss  %xmm2,%xmm0
mulss  %xmm5,%xmm2
subss  %xmm2,%xmm7
mulss  %xmm1,%xmm5
subss  %xmm3,%xmm5
mulss  %xmm1,%xmm4
subss  %xmm4,%xmm0
movss  0x24(%rsp),%xmm1
mulss  %xmm5,%xmm1
movss  0x28(%rsp),%xmm2
mulss  %xmm7,%xmm2
addss  %xmm1,%xmm2
movss  0x2c(%rsp),%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
ucomiss %xmm15,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0x70(%rsp),%xmm3
subss  %xmm12,%xmm3
movaps 0x50(%rsp),%xmm1
subss  %xmm11,%xmm1
movaps 0x60(%rsp),%xmm0
subss  %xmm14,%xmm0
subss  %xmm12,%xmm10
subss  %xmm11,%xmm6
subss  %xmm14,%xmm8
movaps %xmm6,%xmm2
mulss  %xmm0,%xmm2
mulss  %xmm10,%xmm0
mulss  %xmm1,%xmm10
mulss  %xmm8,%xmm1
subss  %xmm2,%xmm1
movss  %xmm1,(%rsp)
mulss  %xmm3,%xmm8
subss  %xmm8,%xmm0
movss  %xmm0,0x4(%rsp)
mulss  %xmm3,%xmm6
subss  %xmm10,%xmm6
movss  %xmm6,0x8(%rsp)
movaps 0xa0(%rsp),%xmm4
subss  %xmm12,%xmm4
movaps 0x80(%rsp),%xmm2
subss  %xmm11,%xmm2
movaps 0x90(%rsp),%xmm3
subss  %xmm14,%xmm3
mulss  %xmm0,%xmm2
mulss  %xmm1,%xmm4
addss  %xmm2,%xmm4
mulss  %xmm6,%xmm3
addss  %xmm4,%xmm3
jmp    6ede <tri_tri_overlap_test_3d+0x5dce>
movaps 0x50(%rsp),%xmm3
movaps 0x100(%rsp),%xmm7
subss  %xmm7,%xmm3
movaps 0x60(%rsp),%xmm2
movaps 0x110(%rsp),%xmm9
subss  %xmm9,%xmm2
movaps %xmm15,%xmm4
movaps 0xf0(%rsp),%xmm0
subss  %xmm0,%xmm4
movaps %xmm14,%xmm1
subss  %xmm7,%xmm1
movaps %xmm8,%xmm5
subss  %xmm9,%xmm5
movaps %xmm1,%xmm6
mulss  %xmm2,%xmm6
mulss  %xmm4,%xmm2
mulss  %xmm3,%xmm4
mulss  %xmm5,%xmm3
subss  %xmm6,%xmm3
movaps 0x70(%rsp),%xmm6
subss  %xmm0,%xmm6
mulss  %xmm6,%xmm5
subss  %xmm5,%xmm2
mulss  %xmm6,%xmm1
subss  %xmm4,%xmm1
movss  0x14(%rsp),%xmm4
subss  %xmm0,%xmm4
mulss  %xmm3,%xmm4
movss  0xc(%rsp),%xmm3
subss  %xmm7,%xmm3
mulss  %xmm2,%xmm3
addss  %xmm4,%xmm3
movss  0x10(%rsp),%xmm0
subss  %xmm9,%xmm0
mulss  %xmm1,%xmm0
addss  %xmm3,%xmm0
ucomiss %xmm12,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0x70(%rsp),%xmm4
subss  %xmm15,%xmm4
movaps 0x50(%rsp),%xmm3
subss  %xmm14,%xmm3
movaps 0x60(%rsp),%xmm0
subss  %xmm8,%xmm0
movaps 0x160(%rsp),%xmm5
movaps %xmm5,%xmm1
mulss  %xmm0,%xmm1
movaps %xmm3,%xmm2
mulss  %xmm11,%xmm2
subss  %xmm1,%xmm2
movss  %xmm2,(%rsp)
mulss  %xmm4,%xmm11
movaps 0x150(%rsp),%xmm1
mulss  %xmm1,%xmm0
subss  %xmm11,%xmm0
movss  %xmm0,0x4(%rsp)
mulss  %xmm1,%xmm3
mulss  %xmm5,%xmm4
subss  %xmm3,%xmm4
movss  %xmm4,0x8(%rsp)
movaps 0xa0(%rsp),%xmm3
subss  %xmm15,%xmm3
movaps 0x80(%rsp),%xmm5
subss  %xmm14,%xmm5
movaps 0x90(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm0,%xmm5
mulss  %xmm2,%xmm3
addss  %xmm5,%xmm3
mulss  %xmm4,%xmm1
addss  %xmm3,%xmm1
xorps  %xmm0,%xmm0
xor    %eax,%eax
ucomiss %xmm0,%xmm1
setbe  %al
jmp    14a7 <tri_tri_overlap_test_3d+0x397>
subss  %xmm13,%xmm0
movaps 0x80(%rsp),%xmm4
subss  %xmm9,%xmm4
movaps 0x90(%rsp),%xmm3
subss  %xmm14,%xmm3
movaps 0x160(%rsp),%xmm5
movaps %xmm5,%xmm1
mulss  %xmm3,%xmm1
movaps %xmm4,%xmm2
mulss  %xmm11,%xmm2
subss  %xmm1,%xmm2
mulss  %xmm0,%xmm11
movaps 0x150(%rsp),%xmm1
mulss  %xmm1,%xmm3
subss  %xmm11,%xmm3
mulss  %xmm1,%xmm4
mulss  %xmm5,%xmm0
subss  %xmm4,%xmm0
movaps 0x70(%rsp),%xmm1
subss  %xmm13,%xmm1
mulss  %xmm2,%xmm1
movaps 0x50(%rsp),%xmm2
subss  %xmm9,%xmm2
mulss  %xmm3,%xmm2
addss  %xmm1,%xmm2
movaps 0x60(%rsp),%xmm1
subss  %xmm14,%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
ucomiss %xmm8,%xmm1
movaps 0x110(%rsp),%xmm2
movaps 0x100(%rsp),%xmm3
movaps 0xf0(%rsp),%xmm4
ja     14a7 <tri_tri_overlap_test_3d+0x397>
subss  0x30(%rsp),%xmm4
subss  0xe0(%rsp),%xmm3
subss  0x40(%rsp),%xmm2
movaps %xmm3,%xmm0
movaps 0xd0(%rsp),%xmm5
mulss  %xmm5,%xmm0
movaps 0xb0(%rsp),%xmm7
movaps %xmm7,%xmm1
mulss  %xmm2,%xmm1
subss  %xmm0,%xmm1
movss  %xmm1,(%rsp)
movaps 0xc0(%rsp),%xmm6
mulss  %xmm6,%xmm2
movaps %xmm5,%xmm0
mulss  %xmm4,%xmm0
subss  %xmm2,%xmm0
movss  %xmm0,0x4(%rsp)
mulss  %xmm7,%xmm4
mulss  %xmm6,%xmm3
subss  %xmm4,%xmm3
movss  %xmm3,0x8(%rsp)
movss  0x24(%rsp),%xmm2
mulss  %xmm0,%xmm2
jmp    3661 <tri_tri_overlap_test_3d+0x2551>
movaps %xmm15,%xmm1
subss  0x30(%rsp),%xmm1
movaps %xmm14,%xmm2
subss  %xmm4,%xmm2
movaps %xmm8,%xmm3
subss  0x40(%rsp),%xmm3
movaps 0xc0(%rsp),%xmm5
movaps %xmm5,%xmm4
mulss  %xmm2,%xmm4
movaps 0xd0(%rsp),%xmm0
mulss  %xmm0,%xmm2
movaps 0xb0(%rsp),%xmm7
movaps %xmm7,%xmm6
mulss  %xmm3,%xmm6
subss  %xmm2,%xmm6
mulss  %xmm5,%xmm3
movaps %xmm0,%xmm2
mulss  %xmm1,%xmm2
subss  %xmm3,%xmm2
mulss  %xmm7,%xmm1
subss  %xmm1,%xmm4
shufps $0x55,%xmm7,%xmm7
mulss  %xmm2,%xmm7
shufps $0x55,%xmm5,%xmm5
mulss  %xmm6,%xmm5
addss  %xmm7,%xmm5
shufps $0x55,%xmm0,%xmm0
mulss  %xmm4,%xmm0
addss  %xmm5,%xmm0
ucomiss %xmm12,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xa0(%rsp),%xmm0
subss  %xmm15,%xmm0
movaps 0x80(%rsp),%xmm1
subss  %xmm14,%xmm1
movaps 0x90(%rsp),%xmm2
subss  %xmm8,%xmm2
movaps 0x130(%rsp),%xmm5
movaps %xmm5,%xmm3
mulss  %xmm2,%xmm3
movaps %xmm1,%xmm4
movaps 0x120(%rsp),%xmm6
mulss  %xmm6,%xmm4
subss  %xmm3,%xmm4
movss  %xmm4,(%rsp)
mulss  %xmm0,%xmm6
movaps 0x140(%rsp),%xmm3
mulss  %xmm3,%xmm2
subss  %xmm6,%xmm2
movss  %xmm2,0x4(%rsp)
mulss  %xmm3,%xmm1
mulss  %xmm5,%xmm0
subss  %xmm1,%xmm0
movss  %xmm0,0x8(%rsp)
movss  0x14(%rsp),%xmm1
subss  %xmm15,%xmm1
movss  0xc(%rsp),%xmm3
subss  %xmm14,%xmm3
movss  0x10(%rsp),%xmm5
jmp    c530 <tri_tri_overlap_test_3d+0xb420>
movaps 0xf0(%rsp),%xmm7
movaps 0xa0(%rsp),%xmm0
subss  %xmm7,%xmm0
movaps 0x100(%rsp),%xmm10
movaps 0x80(%rsp),%xmm6
subss  %xmm10,%xmm6
movaps 0x110(%rsp),%xmm9
movaps 0x90(%rsp),%xmm5
subss  %xmm9,%xmm5
movaps 0xe0(%rsp),%xmm1
subss  %xmm10,%xmm1
movaps 0x40(%rsp),%xmm2
subss  %xmm9,%xmm2
movaps %xmm1,%xmm3
mulss  %xmm5,%xmm3
movaps %xmm6,%xmm4
mulss  %xmm2,%xmm4
subss  %xmm3,%xmm4
movaps 0x30(%rsp),%xmm3
subss  %xmm7,%xmm3
mulss  %xmm0,%xmm2
mulss  %xmm3,%xmm5
subss  %xmm2,%xmm5
mulss  %xmm6,%xmm3
mulss  %xmm0,%xmm1
subss  %xmm3,%xmm1
movss  0x14(%rsp),%xmm0
subss  %xmm7,%xmm0
mulss  %xmm4,%xmm0
movss  0xc(%rsp),%xmm2
subss  %xmm10,%xmm2
mulss  %xmm5,%xmm2
addss  %xmm0,%xmm2
movss  0x10(%rsp),%xmm0
subss  %xmm9,%xmm0
mulss  %xmm1,%xmm0
addss  %xmm2,%xmm0
ucomiss %xmm8,%xmm0
movss  0x18(%rsp),%xmm2
movss  0x20(%rsp),%xmm3
movss  0x1c(%rsp),%xmm4
ja     14a7 <tri_tri_overlap_test_3d+0x397>
subss  0x30(%rsp),%xmm4
subss  0xe0(%rsp),%xmm2
subss  0x40(%rsp),%xmm3
movaps 0xc0(%rsp),%xmm6
movaps %xmm6,%xmm0
mulss  %xmm2,%xmm0
movaps 0xd0(%rsp),%xmm5
mulss  %xmm5,%xmm2
movaps 0xb0(%rsp),%xmm7
movaps %xmm7,%xmm1
mulss  %xmm3,%xmm1
subss  %xmm2,%xmm1
movss  %xmm1,(%rsp)
mulss  %xmm6,%xmm3
movaps %xmm5,%xmm2
mulss  %xmm4,%xmm2
subss  %xmm3,%xmm2
movss  %xmm2,0x4(%rsp)
mulss  %xmm7,%xmm4
subss  %xmm4,%xmm0
movss  %xmm0,0x8(%rsp)
shufps $0x55,%xmm7,%xmm7
mulss  %xmm2,%xmm7
shufps $0x55,%xmm6,%xmm6
mulss  %xmm1,%xmm6
addss  %xmm7,%xmm6
shufps $0x55,%xmm5,%xmm5
mulss  %xmm0,%xmm5
addss  %xmm6,%xmm5
jmp    c549 <tri_tri_overlap_test_3d+0xb439>
xorps  %xmm8,%xmm8
ucomiss %xmm0,%xmm1
jbe    c28b <tri_tri_overlap_test_3d+0xb17b>
ucomiss %xmm8,%xmm10
movss  0x18(%rsp),%xmm14
movss  0x20(%rsp),%xmm9
movss  0x1c(%rsp),%xmm13
jbe    c879 <tri_tri_overlap_test_3d+0xb769>
movaps 0xf0(%rsp),%xmm7
movaps 0xa0(%rsp),%xmm5
subss  %xmm7,%xmm5
movaps 0x100(%rsp),%xmm11
movaps 0x80(%rsp),%xmm6
subss  %xmm11,%xmm6
movaps 0x110(%rsp),%xmm10
movaps 0x90(%rsp),%xmm0
subss  %xmm10,%xmm0
movaps 0xe0(%rsp),%xmm1
subss  %xmm11,%xmm1
movaps 0x40(%rsp),%xmm2
subss  %xmm10,%xmm2
movaps %xmm1,%xmm3
mulss  %xmm0,%xmm3
movaps %xmm6,%xmm4
mulss  %xmm2,%xmm4
subss  %xmm3,%xmm4
movaps 0x30(%rsp),%xmm3
subss  %xmm7,%xmm3
mulss  %xmm5,%xmm2
mulss  %xmm3,%xmm0
subss  %xmm2,%xmm0
mulss  %xmm6,%xmm3
mulss  %xmm5,%xmm1
subss  %xmm3,%xmm1
movaps 0x70(%rsp),%xmm2
subss  %xmm7,%xmm2
mulss  %xmm4,%xmm2
movaps 0x50(%rsp),%xmm3
subss  %xmm11,%xmm3
mulss  %xmm0,%xmm3
addss  %xmm2,%xmm3
movaps 0x60(%rsp),%xmm0
subss  %xmm10,%xmm0
mulss  %xmm1,%xmm0
addss  %xmm3,%xmm0
ucomiss %xmm8,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
subss  0x30(%rsp),%xmm13
subss  0xe0(%rsp),%xmm14
subss  0x40(%rsp),%xmm9
movaps %xmm14,%xmm0
movaps 0xd0(%rsp),%xmm2
mulss  %xmm2,%xmm0
movaps 0xb0(%rsp),%xmm4
movaps %xmm4,%xmm1
mulss  %xmm9,%xmm1
subss  %xmm0,%xmm1
movss  %xmm1,(%rsp)
movaps 0xc0(%rsp),%xmm3
mulss  %xmm3,%xmm9
movaps %xmm2,%xmm0
mulss  %xmm13,%xmm0
subss  %xmm9,%xmm0
movss  %xmm0,0x4(%rsp)
mulss  %xmm4,%xmm13
mulss  %xmm3,%xmm14
subss  %xmm13,%xmm14
movss  %xmm14,0x8(%rsp)
movss  0x24(%rsp),%xmm2
mulss  %xmm0,%xmm2
movss  0x28(%rsp),%xmm0
mulss  %xmm1,%xmm0
addss  %xmm2,%xmm0
jmp    3b98 <tri_tri_overlap_test_3d+0x2a88>
ucomiss %xmm0,%xmm10
movss  0x18(%rsp),%xmm14
movss  0x20(%rsp),%xmm8
movss  0x1c(%rsp),%xmm15
jbe    c409 <tri_tri_overlap_test_3d+0xb2f9>
movss  0xc(%rsp),%xmm2
movaps 0x100(%rsp),%xmm7
subss  %xmm7,%xmm2
movss  0x10(%rsp),%xmm1
movaps 0x110(%rsp),%xmm9
subss  %xmm9,%xmm1
movaps %xmm15,%xmm3
movaps 0xf0(%rsp),%xmm6
subss  %xmm6,%xmm3
movaps %xmm14,%xmm0
subss  %xmm7,%xmm0
movaps %xmm8,%xmm4
subss  %xmm9,%xmm4
movaps %xmm0,%xmm5
mulss  %xmm1,%xmm5
mulss  %xmm3,%xmm1
mulss  %xmm2,%xmm3
mulss  %xmm4,%xmm2
subss  %xmm5,%xmm2
movss  0x14(%rsp),%xmm5
subss  %xmm6,%xmm5
mulss  %xmm5,%xmm4
subss  %xmm4,%xmm1
mulss  %xmm5,%xmm0
subss  %xmm3,%xmm0
movaps 0xa0(%rsp),%xmm3
subss  %xmm6,%xmm3
mulss  %xmm2,%xmm3
movaps 0x80(%rsp),%xmm2
subss  %xmm7,%xmm2
mulss  %xmm1,%xmm2
addss  %xmm3,%xmm2
movaps 0x90(%rsp),%xmm1
subss  %xmm9,%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x14(%rsp),%xmm1
subss  %xmm15,%xmm1
movss  0xc(%rsp),%xmm2
subss  %xmm14,%xmm2
movss  0x10(%rsp),%xmm3
subss  %xmm8,%xmm3
movaps 0x160(%rsp),%xmm6
movaps %xmm6,%xmm4
mulss  %xmm3,%xmm4
movaps %xmm2,%xmm5
mulss  %xmm11,%xmm5
subss  %xmm4,%xmm5
movss  %xmm5,(%rsp)
mulss  %xmm1,%xmm11
movaps 0x150(%rsp),%xmm4
mulss  %xmm4,%xmm3
subss  %xmm11,%xmm3
movss  %xmm3,0x4(%rsp)
mulss  %xmm4,%xmm2
mulss  %xmm6,%xmm1
subss  %xmm2,%xmm1
movss  %xmm1,0x8(%rsp)
movaps 0x70(%rsp),%xmm2
subss  %xmm15,%xmm2
movaps 0x50(%rsp),%xmm4
subss  %xmm14,%xmm4
movaps 0x60(%rsp),%xmm6
jmp    bfd2 <tri_tri_overlap_test_3d+0xaec2>
ucomiss %xmm0,%xmm1
jbe    c56f <tri_tri_overlap_test_3d+0xb45f>
movss  0x1c(%rsp),%xmm4
movaps 0x70(%rsp),%xmm5
subss  %xmm4,%xmm5
movss  0x18(%rsp),%xmm2
movaps 0x50(%rsp),%xmm7
subss  %xmm2,%xmm7
movss  0x20(%rsp),%xmm8
movaps 0x60(%rsp),%xmm6
subss  %xmm8,%xmm6
movaps 0x160(%rsp),%xmm3
movaps %xmm3,%xmm0
mulss  %xmm6,%xmm0
movaps %xmm7,%xmm1
mulss  %xmm11,%xmm1
subss  %xmm0,%xmm1
mulss  %xmm5,%xmm11
movaps 0x150(%rsp),%xmm0
mulss  %xmm0,%xmm6
subss  %xmm11,%xmm6
mulss  %xmm0,%xmm7
mulss  %xmm3,%xmm5
subss  %xmm7,%xmm5
movaps 0xa0(%rsp),%xmm0
subss  %xmm4,%xmm0
mulss  %xmm1,%xmm0
movaps 0x80(%rsp),%xmm4
subss  %xmm2,%xmm4
mulss  %xmm6,%xmm4
addss  %xmm0,%xmm4
movaps 0x90(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm5,%xmm1
addss  %xmm4,%xmm1
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm1
movaps 0x110(%rsp),%xmm3
movaps 0x100(%rsp),%xmm4
movaps 0xf0(%rsp),%xmm5
ja     14a7 <tri_tri_overlap_test_3d+0x397>
subss  0x30(%rsp),%xmm5
subss  0xe0(%rsp),%xmm4
subss  0x40(%rsp),%xmm3
movaps 0xd0(%rsp),%xmm6
shufps $0x55,%xmm6,%xmm6
movaps %xmm4,%xmm1
mulss  %xmm6,%xmm1
movaps 0xb0(%rsp),%xmm2
shufps $0x55,%xmm2,%xmm2
movaps %xmm2,%xmm0
mulss  %xmm3,%xmm0
subss  %xmm1,%xmm0
movss  %xmm0,(%rsp)
movaps 0xc0(%rsp),%xmm7
shufps $0x55,%xmm7,%xmm7
mulss  %xmm7,%xmm3
mulss  %xmm5,%xmm6
movaps %xmm6,%xmm1
subss  %xmm3,%xmm1
movss  %xmm1,0x4(%rsp)
mulss  %xmm5,%xmm2
mulss  %xmm4,%xmm7
subss  %xmm2,%xmm7
movss  %xmm7,0x8(%rsp)
movss  0x24(%rsp),%xmm2
mulss  %xmm1,%xmm2
movss  0x28(%rsp),%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
movss  0x2c(%rsp),%xmm0
mulss  %xmm7,%xmm0
addss  %xmm1,%xmm0
xor    %eax,%eax
ucomiss %xmm8,%xmm0
setbe  %al
jmp    14a7 <tri_tri_overlap_test_3d+0x397>
ucomiss %xmm1,%xmm14
jbe    b6a9 <tri_tri_overlap_test_3d+0xa599>
movss  0x1c(%rsp),%xmm11
movaps %xmm11,%xmm0
subss  0x30(%rsp),%xmm0
movss  0x18(%rsp),%xmm8
movaps %xmm8,%xmm1
subss  %xmm4,%xmm1
movss  0x20(%rsp),%xmm10
movaps %xmm10,%xmm2
subss  0x40(%rsp),%xmm2
movaps 0xd0(%rsp),%xmm12
movaps %xmm12,%xmm3
shufps $0x55,%xmm12,%xmm3
movaps 0xb0(%rsp),%xmm14
movaps %xmm14,%xmm4
shufps $0x55,%xmm14,%xmm4
movaps %xmm4,%xmm6
mulss  %xmm2,%xmm6
movaps 0xc0(%rsp),%xmm5
movaps %xmm5,%xmm7
shufps $0x55,%xmm5,%xmm7
mulss  %xmm7,%xmm2
mulss  %xmm1,%xmm7
mulss  %xmm3,%xmm1
subss  %xmm1,%xmm6
mulss  %xmm0,%xmm3
subss  %xmm2,%xmm3
mulss  %xmm0,%xmm4
subss  %xmm4,%xmm7
mulss  %xmm14,%xmm3
mulss  %xmm5,%xmm6
addss  %xmm3,%xmm6
mulss  %xmm12,%xmm7
addss  %xmm6,%xmm7
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm7
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0x70(%rsp),%xmm1
subss  %xmm11,%xmm1
movaps 0x50(%rsp),%xmm2
subss  %xmm8,%xmm2
movaps 0x60(%rsp),%xmm3
subss  %xmm10,%xmm3
movaps 0x130(%rsp),%xmm5
movaps %xmm5,%xmm4
mulss  %xmm3,%xmm4
movaps %xmm2,%xmm6
movaps 0x120(%rsp),%xmm7
mulss  %xmm7,%xmm6
subss  %xmm4,%xmm6
movss  %xmm6,(%rsp)
mulss  %xmm1,%xmm7
movaps 0x140(%rsp),%xmm4
mulss  %xmm4,%xmm3
subss  %xmm7,%xmm3
movss  %xmm3,0x4(%rsp)
mulss  %xmm4,%xmm2
mulss  %xmm5,%xmm1
subss  %xmm2,%xmm1
movss  %xmm1,0x8(%rsp)
movss  0x14(%rsp),%xmm2
subss  %xmm11,%xmm2
movss  0xc(%rsp),%xmm4
subss  %xmm8,%xmm4
movss  0x10(%rsp),%xmm5
subss  %xmm10,%xmm5
jmp    9923 <tri_tri_overlap_test_3d+0x8813>
lea    0x17c(%rsp),%rbx
mov    %rsp,%r14
mov    %r11,%rdi
mov    %r8,%rsi
mov    %r10,%r8
jmp    c997 <tri_tri_overlap_test_3d+0xb887>
ucomiss %xmm1,%xmm8
jbe    c860 <tri_tri_overlap_test_3d+0xb750>
movaps 0x50(%rsp),%xmm0
movss  0x18(%rsp),%xmm9
subss  %xmm9,%xmm0
movaps 0x60(%rsp),%xmm1
movss  0x20(%rsp),%xmm8
subss  %xmm8,%xmm1
movaps 0x130(%rsp),%xmm6
movaps %xmm6,%xmm2
mulss  %xmm1,%xmm2
movaps %xmm0,%xmm3
movaps 0x120(%rsp),%xmm4
mulss  %xmm4,%xmm3
subss  %xmm2,%xmm3
movaps 0x70(%rsp),%xmm2
movss  0x1c(%rsp),%xmm7
subss  %xmm7,%xmm2
mulss  %xmm2,%xmm4
movaps 0x140(%rsp),%xmm5
mulss  %xmm5,%xmm1
subss  %xmm4,%xmm1
mulss  %xmm5,%xmm0
mulss  %xmm6,%xmm2
subss  %xmm0,%xmm2
movaps 0xa0(%rsp),%xmm0
subss  %xmm7,%xmm0
mulss  %xmm3,%xmm0
movaps 0x80(%rsp),%xmm3
subss  %xmm9,%xmm3
mulss  %xmm1,%xmm3
addss  %xmm0,%xmm3
movaps 0x90(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm2,%xmm1
addss  %xmm3,%xmm1
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0x70(%rsp),%xmm4
subss  %xmm12,%xmm4
movaps 0x50(%rsp),%xmm5
subss  %xmm11,%xmm5
movaps 0x60(%rsp),%xmm1
subss  %xmm14,%xmm1
movaps 0x30(%rsp),%xmm0
subss  %xmm12,%xmm0
movaps 0xe0(%rsp),%xmm6
subss  %xmm11,%xmm6
movaps 0x40(%rsp),%xmm7
subss  %xmm14,%xmm7
movaps %xmm6,%xmm2
mulss  %xmm1,%xmm2
movaps %xmm5,%xmm3
mulss  %xmm7,%xmm3
subss  %xmm2,%xmm3
movss  %xmm3,(%rsp)
mulss  %xmm4,%xmm7
mulss  %xmm0,%xmm1
subss  %xmm7,%xmm1
movss  %xmm1,0x4(%rsp)
mulss  %xmm5,%xmm0
mulss  %xmm4,%xmm6
subss  %xmm0,%xmm6
movss  %xmm6,0x8(%rsp)
movss  0x14(%rsp),%xmm4
subss  %xmm12,%xmm4
movss  0xc(%rsp),%xmm5
subss  %xmm11,%xmm5
movss  0x10(%rsp),%xmm2
subss  %xmm14,%xmm2
mulss  %xmm1,%xmm5
mulss  %xmm3,%xmm4
addss  %xmm5,%xmm4
mulss  %xmm6,%xmm2
addss  %xmm4,%xmm2
xor    %eax,%eax
ucomiss %xmm8,%xmm2
setbe  %al
jmp    14a7 <tri_tri_overlap_test_3d+0x397>
ucomiss %xmm0,%xmm1
jbe    c703 <tri_tri_overlap_test_3d+0xb5f3>
movaps %xmm12,%xmm0
subss  0x30(%rsp),%xmm0
movaps %xmm11,%xmm1
subss  %xmm4,%xmm1
movaps %xmm14,%xmm2
subss  0x40(%rsp),%xmm2
movaps 0xd0(%rsp),%xmm8
movaps %xmm8,%xmm3
shufps $0x55,%xmm8,%xmm3
movaps 0xb0(%rsp),%xmm9
movaps %xmm9,%xmm4
shufps $0x55,%xmm9,%xmm4
movaps %xmm4,%xmm5
mulss  %xmm2,%xmm5
movaps 0xc0(%rsp),%xmm7
movaps %xmm7,%xmm6
shufps $0x55,%xmm7,%xmm6
mulss  %xmm6,%xmm2
mulss  %xmm1,%xmm6
mulss  %xmm3,%xmm1
subss  %xmm1,%xmm5
mulss  %xmm0,%xmm3
subss  %xmm2,%xmm3
mulss  %xmm0,%xmm4
subss  %xmm4,%xmm6
mulss  %xmm9,%xmm3
mulss  %xmm7,%xmm5
addss  %xmm3,%xmm5
mulss  %xmm8,%xmm6
addss  %xmm5,%xmm6
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm6
movss  0x18(%rsp),%xmm6
movss  0x20(%rsp),%xmm5
movss  0x1c(%rsp),%xmm7
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0x70(%rsp),%xmm2
subss  %xmm12,%xmm2
movaps 0x50(%rsp),%xmm3
subss  %xmm11,%xmm3
movaps 0x60(%rsp),%xmm1
subss  %xmm14,%xmm1
subss  %xmm12,%xmm7
subss  %xmm11,%xmm6
subss  %xmm14,%xmm5
movaps %xmm6,%xmm4
mulss  %xmm1,%xmm4
mulss  %xmm7,%xmm1
mulss  %xmm3,%xmm7
mulss  %xmm5,%xmm3
subss  %xmm4,%xmm3
movss  %xmm3,(%rsp)
mulss  %xmm2,%xmm5
subss  %xmm5,%xmm1
movss  %xmm1,0x4(%rsp)
mulss  %xmm2,%xmm6
subss  %xmm7,%xmm6
movss  %xmm6,0x8(%rsp)
movss  0x14(%rsp),%xmm2
subss  %xmm12,%xmm2
movss  0xc(%rsp),%xmm4
subss  %xmm11,%xmm4
movss  0x10(%rsp),%xmm5
subss  %xmm14,%xmm5
mulss  %xmm1,%xmm4
mulss  %xmm3,%xmm2
addss  %xmm4,%xmm2
mulss  %xmm6,%xmm5
addss  %xmm2,%xmm5
jmp    c54c <tri_tri_overlap_test_3d+0xb43c>
ucomiss %xmm10,%xmm15
jbe    bafd <tri_tri_overlap_test_3d+0xa9ed>
movss  0xc(%rsp),%xmm0
subss  %xmm6,%xmm0
movss  0x10(%rsp),%xmm1
subss  %xmm7,%xmm1
movaps 0x130(%rsp),%xmm9
movaps %xmm9,%xmm2
mulss  %xmm1,%xmm2
movaps %xmm0,%xmm3
movaps 0x120(%rsp),%xmm5
mulss  %xmm5,%xmm3
subss  %xmm2,%xmm3
movss  0x14(%rsp),%xmm2
subss  %xmm8,%xmm2
mulss  %xmm2,%xmm5
movaps 0x140(%rsp),%xmm10
mulss  %xmm10,%xmm1
subss  %xmm5,%xmm1
mulss  %xmm10,%xmm0
mulss  %xmm9,%xmm2
subss  %xmm0,%xmm2
subss  %xmm8,%xmm4
mulss  %xmm3,%xmm4
movaps 0x80(%rsp),%xmm0
subss  %xmm6,%xmm0
mulss  %xmm1,%xmm0
addss  %xmm4,%xmm0
movaps 0x90(%rsp),%xmm1
subss  %xmm7,%xmm1
mulss  %xmm2,%xmm1
addss  %xmm0,%xmm1
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x14(%rsp),%xmm4
subss  %xmm12,%xmm4
movss  0xc(%rsp),%xmm2
subss  %xmm11,%xmm2
movss  0x10(%rsp),%xmm1
subss  %xmm14,%xmm1
movaps 0x30(%rsp),%xmm7
subss  %xmm12,%xmm7
movaps 0xe0(%rsp),%xmm6
subss  %xmm11,%xmm6
movaps 0x40(%rsp),%xmm5
subss  %xmm14,%xmm5
movaps %xmm6,%xmm3
mulss  %xmm1,%xmm3
mulss  %xmm7,%xmm1
mulss  %xmm2,%xmm7
mulss  %xmm5,%xmm2
subss  %xmm3,%xmm2
movss  %xmm2,(%rsp)
mulss  %xmm4,%xmm5
subss  %xmm5,%xmm1
movss  %xmm1,0x4(%rsp)
mulss  %xmm4,%xmm6
subss  %xmm7,%xmm6
movss  %xmm6,0x8(%rsp)
movaps 0x70(%rsp),%xmm5
subss  %xmm12,%xmm5
movaps 0x50(%rsp),%xmm3
subss  %xmm11,%xmm3
movaps 0x60(%rsp),%xmm4
subss  %xmm14,%xmm4
mulss  %xmm1,%xmm3
mulss  %xmm2,%xmm5
addss  %xmm3,%xmm5
mulss  %xmm6,%xmm4
addss  %xmm5,%xmm4
xor    %eax,%eax
ucomiss %xmm0,%xmm4
setbe  %al
jmp    14a7 <tri_tri_overlap_test_3d+0x397>
lea    0x17c(%rsp),%rbx
mov    %rsp,%r14
mov    %r8,%rdi
mov    %rdx,%rsi
mov    %r11,%rdx
jmp    c991 <tri_tri_overlap_test_3d+0xb881>
ucomiss %xmm10,%xmm8
jbe    c559 <tri_tri_overlap_test_3d+0xb449>
movaps %xmm15,%xmm0
subss  0x30(%rsp),%xmm0
movaps %xmm14,%xmm1
subss  %xmm4,%xmm1
movaps %xmm12,%xmm2
subss  0x40(%rsp),%xmm2
movaps %xmm1,%xmm3
movss  0x2c(%rsp),%xmm5
mulss  %xmm5,%xmm3
movss  0x24(%rsp),%xmm6
movaps %xmm6,%xmm4
mulss  %xmm2,%xmm4
subss  %xmm3,%xmm4
movss  0x28(%rsp),%xmm3
mulss  %xmm3,%xmm2
mulss  %xmm0,%xmm5
subss  %xmm2,%xmm5
mulss  %xmm6,%xmm0
mulss  %xmm3,%xmm1
subss  %xmm0,%xmm1
movaps 0xb0(%rsp),%xmm2
mulss  %xmm5,%xmm2
movaps 0xc0(%rsp),%xmm0
mulss  %xmm4,%xmm0
addss  %xmm2,%xmm0
movaps 0xd0(%rsp),%xmm2
mulss  %xmm1,%xmm2
addss  %xmm0,%xmm2
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm2
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x14(%rsp),%xmm4
subss  %xmm15,%xmm4
movss  0xc(%rsp),%xmm6
subss  %xmm14,%xmm6
movss  0x10(%rsp),%xmm1
subss  %xmm12,%xmm1
movaps 0x130(%rsp),%xmm5
movaps %xmm5,%xmm2
mulss  %xmm1,%xmm2
movaps %xmm6,%xmm3
movaps 0x120(%rsp),%xmm7
mulss  %xmm7,%xmm3
subss  %xmm2,%xmm3
movss  %xmm3,(%rsp)
mulss  %xmm4,%xmm7
movaps 0x140(%rsp),%xmm2
mulss  %xmm2,%xmm1
subss  %xmm7,%xmm1
movss  %xmm1,0x4(%rsp)
mulss  %xmm2,%xmm6
mulss  %xmm5,%xmm4
subss  %xmm6,%xmm4
movss  %xmm4,0x8(%rsp)
movaps 0x70(%rsp),%xmm5
subss  %xmm15,%xmm5
movaps 0x50(%rsp),%xmm6
subss  %xmm14,%xmm6
movaps 0x60(%rsp),%xmm2
subss  %xmm12,%xmm2
mulss  %xmm1,%xmm6
mulss  %xmm3,%xmm5
addss  %xmm6,%xmm5
mulss  %xmm4,%xmm2
addss  %xmm5,%xmm2
xor    %eax,%eax
ucomiss %xmm0,%xmm2
setbe  %al
jmp    14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0xf0(%rsp),%xmm6
subss  %xmm6,%xmm4
movaps 0x100(%rsp),%xmm11
movaps 0x80(%rsp),%xmm5
subss  %xmm11,%xmm5
movaps 0x110(%rsp),%xmm10
movaps 0x90(%rsp),%xmm7
subss  %xmm10,%xmm7
movaps 0xe0(%rsp),%xmm0
subss  %xmm11,%xmm0
movaps 0x40(%rsp),%xmm1
subss  %xmm10,%xmm1
movaps %xmm0,%xmm2
mulss  %xmm7,%xmm2
movaps %xmm5,%xmm3
mulss  %xmm1,%xmm3
subss  %xmm2,%xmm3
movaps 0x30(%rsp),%xmm2
subss  %xmm6,%xmm2
mulss  %xmm4,%xmm1
mulss  %xmm2,%xmm7
subss  %xmm1,%xmm7
mulss  %xmm5,%xmm2
mulss  %xmm4,%xmm0
subss  %xmm2,%xmm0
movaps 0x70(%rsp),%xmm1
subss  %xmm6,%xmm1
mulss  %xmm3,%xmm1
movaps 0x50(%rsp),%xmm2
subss  %xmm11,%xmm2
mulss  %xmm7,%xmm2
addss  %xmm1,%xmm2
movaps 0x60(%rsp),%xmm1
subss  %xmm10,%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
subss  0x30(%rsp),%xmm9
subss  0xe0(%rsp),%xmm13
subss  0x40(%rsp),%xmm8
movaps %xmm13,%xmm1
movaps 0xd0(%rsp),%xmm3
mulss  %xmm3,%xmm1
movaps 0xb0(%rsp),%xmm5
movaps %xmm5,%xmm2
mulss  %xmm8,%xmm2
subss  %xmm1,%xmm2
movss  %xmm2,(%rsp)
movaps 0xc0(%rsp),%xmm4
mulss  %xmm4,%xmm8
movaps %xmm3,%xmm1
mulss  %xmm9,%xmm1
subss  %xmm8,%xmm1
movss  %xmm1,0x4(%rsp)
mulss  %xmm5,%xmm9
mulss  %xmm4,%xmm13
subss  %xmm9,%xmm13
movss  %xmm13,0x8(%rsp)
movss  0x24(%rsp),%xmm4
mulss  %xmm1,%xmm4
movss  0x28(%rsp),%xmm3
mulss  %xmm2,%xmm3
addss  %xmm4,%xmm3
jmp    4efb <tri_tri_overlap_test_3d+0x3deb>
movaps 0xf0(%rsp),%xmm6
movaps 0x70(%rsp),%xmm7
subss  %xmm6,%xmm7
movaps 0x100(%rsp),%xmm9
movaps 0x50(%rsp),%xmm5
subss  %xmm9,%xmm5
movaps 0x110(%rsp),%xmm8
movaps 0x60(%rsp),%xmm4
subss  %xmm8,%xmm4
movaps 0xe0(%rsp),%xmm0
subss  %xmm9,%xmm0
movaps 0x40(%rsp),%xmm1
subss  %xmm8,%xmm1
movaps %xmm0,%xmm2
mulss  %xmm4,%xmm2
movaps %xmm5,%xmm3
mulss  %xmm1,%xmm3
subss  %xmm2,%xmm3
movaps 0x30(%rsp),%xmm2
subss  %xmm6,%xmm2
mulss  %xmm7,%xmm1
mulss  %xmm2,%xmm4
subss  %xmm1,%xmm4
mulss  %xmm5,%xmm2
mulss  %xmm7,%xmm0
subss  %xmm2,%xmm0
movss  0x14(%rsp),%xmm1
subss  %xmm6,%xmm1
mulss  %xmm3,%xmm1
movss  0xc(%rsp),%xmm2
subss  %xmm9,%xmm2
mulss  %xmm4,%xmm2
addss  %xmm1,%xmm2
movss  0x10(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
xorps  %xmm8,%xmm8
ucomiss %xmm8,%xmm1
movss  0x18(%rsp),%xmm5
movss  0x20(%rsp),%xmm6
movss  0x1c(%rsp),%xmm7
ja     14a7 <tri_tri_overlap_test_3d+0x397>
jmp    4788 <tri_tri_overlap_test_3d+0x3678>
movaps 0x50(%rsp),%xmm2
movaps 0x100(%rsp),%xmm7
subss  %xmm7,%xmm2
movaps 0x60(%rsp),%xmm1
movaps 0x110(%rsp),%xmm9
subss  %xmm9,%xmm1
movaps %xmm15,%xmm3
movaps 0xf0(%rsp),%xmm6
subss  %xmm6,%xmm3
movaps %xmm14,%xmm0
subss  %xmm7,%xmm0
movaps %xmm8,%xmm4
subss  %xmm9,%xmm4
movaps %xmm0,%xmm5
mulss  %xmm1,%xmm5
mulss  %xmm3,%xmm1
mulss  %xmm2,%xmm3
mulss  %xmm4,%xmm2
subss  %xmm5,%xmm2
movaps 0x70(%rsp),%xmm5
subss  %xmm6,%xmm5
mulss  %xmm5,%xmm4
subss  %xmm4,%xmm1
mulss  %xmm5,%xmm0
subss  %xmm3,%xmm0
movss  0x14(%rsp),%xmm3
subss  %xmm6,%xmm3
mulss  %xmm2,%xmm3
movss  0xc(%rsp),%xmm2
subss  %xmm7,%xmm2
mulss  %xmm1,%xmm2
addss  %xmm3,%xmm2
movss  0x10(%rsp),%xmm1
subss  %xmm9,%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0x70(%rsp),%xmm1
subss  %xmm15,%xmm1
movaps 0x50(%rsp),%xmm2
subss  %xmm14,%xmm2
movaps 0x60(%rsp),%xmm3
subss  %xmm8,%xmm3
movaps 0x160(%rsp),%xmm6
movaps %xmm6,%xmm4
mulss  %xmm3,%xmm4
movaps %xmm2,%xmm5
mulss  %xmm11,%xmm5
subss  %xmm4,%xmm5
movss  %xmm5,(%rsp)
mulss  %xmm1,%xmm11
movaps 0x150(%rsp),%xmm4
mulss  %xmm4,%xmm3
subss  %xmm11,%xmm3
movss  %xmm3,0x4(%rsp)
mulss  %xmm4,%xmm2
mulss  %xmm6,%xmm1
subss  %xmm2,%xmm1
movss  %xmm1,0x8(%rsp)
movaps 0xa0(%rsp),%xmm2
subss  %xmm15,%xmm2
movaps 0x80(%rsp),%xmm4
subss  %xmm14,%xmm4
movaps 0x90(%rsp),%xmm6
subss  %xmm8,%xmm6
mulss  %xmm3,%xmm4
mulss  %xmm5,%xmm2
addss  %xmm4,%xmm2
mulss  %xmm1,%xmm6
addss  %xmm2,%xmm6
xor    %eax,%eax
ucomiss %xmm0,%xmm6
setbe  %al
jmp    14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x1c(%rsp),%xmm4
movss  0x14(%rsp),%xmm5
subss  %xmm4,%xmm5
movss  0x18(%rsp),%xmm2
movss  0xc(%rsp),%xmm7
subss  %xmm2,%xmm7
movss  0x20(%rsp),%xmm8
movss  0x10(%rsp),%xmm6
subss  %xmm8,%xmm6
movaps 0x160(%rsp),%xmm3
movaps %xmm3,%xmm0
mulss  %xmm6,%xmm0
movaps %xmm7,%xmm1
mulss  %xmm11,%xmm1
subss  %xmm0,%xmm1
mulss  %xmm5,%xmm11
movaps 0x150(%rsp),%xmm0
mulss  %xmm0,%xmm6
subss  %xmm11,%xmm6
mulss  %xmm0,%xmm7
mulss  %xmm3,%xmm5
subss  %xmm7,%xmm5
movaps 0x70(%rsp),%xmm0
subss  %xmm4,%xmm0
mulss  %xmm1,%xmm0
movaps 0x50(%rsp),%xmm4
subss  %xmm2,%xmm4
mulss  %xmm6,%xmm4
addss  %xmm0,%xmm4
movaps 0x60(%rsp),%xmm1
subss  %xmm8,%xmm1
mulss  %xmm5,%xmm1
addss  %xmm4,%xmm1
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
movaps 0x110(%rsp),%xmm3
movaps 0x100(%rsp),%xmm4
movaps 0xf0(%rsp),%xmm5
ja     14a7 <tri_tri_overlap_test_3d+0x397>
subss  0x30(%rsp),%xmm5
subss  0xe0(%rsp),%xmm4
subss  0x40(%rsp),%xmm3
movaps %xmm4,%xmm1
movss  0x2c(%rsp),%xmm6
mulss  %xmm6,%xmm1
movss  0x24(%rsp),%xmm7
movaps %xmm7,%xmm2
mulss  %xmm3,%xmm2
subss  %xmm1,%xmm2
movss  %xmm2,(%rsp)
movss  0x28(%rsp),%xmm1
mulss  %xmm1,%xmm3
mulss  %xmm5,%xmm6
subss  %xmm3,%xmm6
movss  %xmm6,0x4(%rsp)
mulss  %xmm7,%xmm5
mulss  %xmm1,%xmm4
subss  %xmm5,%xmm4
movss  %xmm4,0x8(%rsp)
movaps 0xb0(%rsp),%xmm1
mulss  %xmm6,%xmm1
movaps 0xc0(%rsp),%xmm3
mulss  %xmm2,%xmm3
addss  %xmm1,%xmm3
movaps 0xd0(%rsp),%xmm1
mulss  %xmm4,%xmm1
addss  %xmm3,%xmm1
jmp    ad27 <tri_tri_overlap_test_3d+0x9c17>
movaps %xmm12,%xmm1
subss  0x30(%rsp),%xmm1
movaps %xmm11,%xmm0
subss  %xmm4,%xmm0
movaps %xmm14,%xmm2
subss  0x40(%rsp),%xmm2
movaps %xmm0,%xmm3
movss  0x2c(%rsp),%xmm5
mulss  %xmm5,%xmm3
movss  0x24(%rsp),%xmm6
movaps %xmm6,%xmm4
mulss  %xmm2,%xmm4
subss  %xmm3,%xmm4
movss  0x28(%rsp),%xmm3
mulss  %xmm3,%xmm2
mulss  %xmm1,%xmm5
subss  %xmm2,%xmm5
mulss  %xmm6,%xmm1
mulss  %xmm3,%xmm0
subss  %xmm1,%xmm0
movaps 0xb0(%rsp),%xmm1
shufps $0x55,%xmm1,%xmm1
mulss  %xmm5,%xmm1
movaps 0xc0(%rsp),%xmm2
shufps $0x55,%xmm2,%xmm2
mulss  %xmm4,%xmm2
addss  %xmm1,%xmm2
movaps 0xd0(%rsp),%xmm1
shufps $0x55,%xmm1,%xmm1
mulss  %xmm0,%xmm1
addss  %xmm2,%xmm1
xorps  %xmm0,%xmm0
ucomiss %xmm0,%xmm1
movss  0x18(%rsp),%xmm6
movss  0x20(%rsp),%xmm5
movss  0x1c(%rsp),%xmm7
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x14(%rsp),%xmm2
subss  %xmm12,%xmm2
movss  0xc(%rsp),%xmm3
subss  %xmm11,%xmm3
movss  0x10(%rsp),%xmm1
subss  %xmm14,%xmm1
subss  %xmm12,%xmm7
subss  %xmm11,%xmm6
subss  %xmm14,%xmm5
movaps %xmm6,%xmm4
mulss  %xmm1,%xmm4
mulss  %xmm7,%xmm1
mulss  %xmm3,%xmm7
mulss  %xmm5,%xmm3
subss  %xmm4,%xmm3
movss  %xmm3,(%rsp)
mulss  %xmm2,%xmm5
subss  %xmm5,%xmm1
movss  %xmm1,0x4(%rsp)
mulss  %xmm2,%xmm6
subss  %xmm7,%xmm6
movss  %xmm6,0x8(%rsp)
movaps 0xa0(%rsp),%xmm2
subss  %xmm12,%xmm2
movaps 0x80(%rsp),%xmm4
subss  %xmm11,%xmm4
movaps 0x90(%rsp),%xmm5
jmp    b978 <tri_tri_overlap_test_3d+0xa868>
ucomiss %xmm8,%xmm10
jbe    c930 <tri_tri_overlap_test_3d+0xb820>
movss  0x1c(%rsp),%xmm5
movss  0x14(%rsp),%xmm6
subss  %xmm5,%xmm6
movss  0x18(%rsp),%xmm3
movss  0xc(%rsp),%xmm2
subss  %xmm3,%xmm2
movss  0x20(%rsp),%xmm9
movss  0x10(%rsp),%xmm7
subss  %xmm9,%xmm7
movaps 0x160(%rsp),%xmm4
movaps %xmm4,%xmm1
mulss  %xmm7,%xmm1
movaps %xmm2,%xmm0
mulss  %xmm11,%xmm0
subss  %xmm1,%xmm0
mulss  %xmm6,%xmm11
movaps 0x150(%rsp),%xmm1
mulss  %xmm1,%xmm7
subss  %xmm11,%xmm7
mulss  %xmm1,%xmm2
mulss  %xmm4,%xmm6
subss  %xmm2,%xmm6
movaps 0xa0(%rsp),%xmm1
subss  %xmm5,%xmm1
mulss  %xmm0,%xmm1
movaps 0x80(%rsp),%xmm0
subss  %xmm3,%xmm0
mulss  %xmm7,%xmm0
addss  %xmm1,%xmm0
movaps 0x90(%rsp),%xmm1
subss  %xmm9,%xmm1
mulss  %xmm6,%xmm1
addss  %xmm0,%xmm1
ucomiss %xmm8,%xmm1
movaps 0x110(%rsp),%xmm2
movaps 0x100(%rsp),%xmm3
movaps 0xf0(%rsp),%xmm4
ja     14a7 <tri_tri_overlap_test_3d+0x397>
subss  0x30(%rsp),%xmm4
subss  0xe0(%rsp),%xmm3
subss  0x40(%rsp),%xmm2
movaps %xmm3,%xmm0
movss  0x2c(%rsp),%xmm5
mulss  %xmm5,%xmm0
movss  0x24(%rsp),%xmm6
movaps %xmm6,%xmm1
mulss  %xmm2,%xmm1
subss  %xmm0,%xmm1
movss  %xmm1,(%rsp)
movss  0x28(%rsp),%xmm0
mulss  %xmm0,%xmm2
mulss  %xmm4,%xmm5
subss  %xmm2,%xmm5
movss  %xmm5,0x4(%rsp)
mulss  %xmm6,%xmm4
mulss  %xmm0,%xmm3
subss  %xmm4,%xmm3
movss  %xmm3,0x8(%rsp)
movaps 0xb0(%rsp),%xmm0
shufps $0x55,%xmm0,%xmm0
mulss  %xmm5,%xmm0
movaps 0xc0(%rsp),%xmm2
shufps $0x55,%xmm2,%xmm2
mulss  %xmm1,%xmm2
addss  %xmm0,%xmm2
movaps 0xd0(%rsp),%xmm0
shufps $0x55,%xmm0,%xmm0
mulss  %xmm3,%xmm0
addss  %xmm2,%xmm0
xorps  %xmm1,%xmm1
xor    %eax,%eax
ucomiss %xmm1,%xmm0
setbe  %al
jmp    14a7 <tri_tri_overlap_test_3d+0x397>
xorps  %xmm0,%xmm0
ucomiss %xmm10,%xmm0
jbe    c559 <tri_tri_overlap_test_3d+0xb449>
movaps %xmm15,%xmm1
subss  0x30(%rsp),%xmm1
movaps %xmm14,%xmm2
subss  %xmm4,%xmm2
movaps %xmm8,%xmm3
subss  0x40(%rsp),%xmm3
movaps %xmm2,%xmm4
movss  0x2c(%rsp),%xmm5
mulss  %xmm5,%xmm4
movss  0x24(%rsp),%xmm7
movaps %xmm7,%xmm6
mulss  %xmm3,%xmm6
subss  %xmm4,%xmm6
movss  0x28(%rsp),%xmm4
mulss  %xmm4,%xmm3
mulss  %xmm1,%xmm5
subss  %xmm3,%xmm5
mulss  %xmm7,%xmm1
mulss  %xmm4,%xmm2
subss  %xmm1,%xmm2
movaps 0xb0(%rsp),%xmm1
mulss  %xmm5,%xmm1
movaps 0xc0(%rsp),%xmm3
mulss  %xmm6,%xmm3
addss  %xmm1,%xmm3
movaps 0xd0(%rsp),%xmm1
mulss  %xmm2,%xmm1
addss  %xmm3,%xmm1
ucomiss %xmm0,%xmm1
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movss  0x14(%rsp),%xmm0
subss  %xmm15,%xmm0
movss  0xc(%rsp),%xmm1
subss  %xmm14,%xmm1
movss  0x10(%rsp),%xmm2
subss  %xmm8,%xmm2
movaps 0x130(%rsp),%xmm5
movaps %xmm5,%xmm3
mulss  %xmm2,%xmm3
movaps %xmm1,%xmm4
movaps 0x120(%rsp),%xmm6
mulss  %xmm6,%xmm4
subss  %xmm3,%xmm4
movss  %xmm4,(%rsp)
mulss  %xmm0,%xmm6
movaps 0x140(%rsp),%xmm3
mulss  %xmm3,%xmm2
subss  %xmm6,%xmm2
movss  %xmm2,0x4(%rsp)
mulss  %xmm3,%xmm1
mulss  %xmm5,%xmm0
subss  %xmm1,%xmm0
movss  %xmm0,0x8(%rsp)
movaps 0x70(%rsp),%xmm1
subss  %xmm15,%xmm1
movaps 0x50(%rsp),%xmm3
subss  %xmm14,%xmm3
movaps 0x60(%rsp),%xmm5
subss  %xmm8,%xmm5
mulss  %xmm2,%xmm3
mulss  %xmm4,%xmm1
addss  %xmm3,%xmm1
mulss  %xmm0,%xmm5
addss  %xmm1,%xmm5
xorps  %xmm0,%xmm0
xor    %eax,%eax
ucomiss %xmm0,%xmm5
setbe  %al
jmp    14a7 <tri_tri_overlap_test_3d+0x397>
lea    0x17c(%rsp),%rbx
mov    %rsp,%r14
mov    %r11,%rdi
mov    %r8,%rsi
jmp    c991 <tri_tri_overlap_test_3d+0xb881>
xorps  %xmm8,%xmm8
ucomiss %xmm1,%xmm8
jbe    c6ea <tri_tri_overlap_test_3d+0xb5da>
movaps %xmm4,%xmm1
movaps 0xf0(%rsp),%xmm7
movaps 0x70(%rsp),%xmm0
subss  %xmm7,%xmm0
movaps 0x100(%rsp),%xmm10
movaps 0x50(%rsp),%xmm6
subss  %xmm10,%xmm6
movaps 0x110(%rsp),%xmm9
movaps 0x60(%rsp),%xmm5
subss  %xmm9,%xmm5
subss  %xmm10,%xmm1
movaps 0x40(%rsp),%xmm2
subss  %xmm9,%xmm2
movaps %xmm1,%xmm3
mulss  %xmm5,%xmm3
movaps %xmm6,%xmm4
mulss  %xmm2,%xmm4
subss  %xmm3,%xmm4
movaps 0x30(%rsp),%xmm3
subss  %xmm7,%xmm3
mulss  %xmm0,%xmm2
mulss  %xmm3,%xmm5
subss  %xmm2,%xmm5
mulss  %xmm6,%xmm3
mulss  %xmm0,%xmm1
subss  %xmm3,%xmm1
movaps 0xa0(%rsp),%xmm2
subss  %xmm7,%xmm2
mulss  %xmm4,%xmm2
movaps 0x80(%rsp),%xmm3
subss  %xmm10,%xmm3
mulss  %xmm5,%xmm3
addss  %xmm2,%xmm3
movaps 0x90(%rsp),%xmm0
subss  %xmm9,%xmm0
mulss  %xmm1,%xmm0
addss  %xmm3,%xmm0
ucomiss %xmm8,%xmm0
movss  0x18(%rsp),%xmm3
movss  0x20(%rsp),%xmm4
movss  0x1c(%rsp),%xmm5
ja     14a7 <tri_tri_overlap_test_3d+0x397>
subss  0x30(%rsp),%xmm5
subss  0xe0(%rsp),%xmm3
subss  0x40(%rsp),%xmm4
movaps 0xd0(%rsp),%xmm0
shufps $0x55,%xmm0,%xmm0
movaps %xmm3,%xmm1
mulss  %xmm0,%xmm1
movaps 0xb0(%rsp),%xmm6
shufps $0x55,%xmm6,%xmm6
movaps %xmm6,%xmm2
mulss  %xmm4,%xmm2
subss  %xmm1,%xmm2
movss  %xmm2,(%rsp)
movaps 0xc0(%rsp),%xmm1
shufps $0x55,%xmm1,%xmm1
mulss  %xmm1,%xmm4
mulss  %xmm5,%xmm0
subss  %xmm4,%xmm0
movss  %xmm0,0x4(%rsp)
mulss  %xmm5,%xmm6
mulss  %xmm3,%xmm1
subss  %xmm6,%xmm1
movss  %xmm1,0x8(%rsp)
movss  0x24(%rsp),%xmm3
mulss  %xmm0,%xmm3
movss  0x28(%rsp),%xmm0
mulss  %xmm2,%xmm0
addss  %xmm3,%xmm0
movss  0x2c(%rsp),%xmm2
mulss  %xmm1,%xmm2
jmp    1998 <tri_tri_overlap_test_3d+0x888>
lea    0x17c(%rsp),%rbx
mov    %rsp,%r14
mov    %rdx,%rdi
mov    %r11,%rsi
mov    %r8,%rdx
jmp    b6ba <tri_tri_overlap_test_3d+0xa5aa>
xorps  %xmm8,%xmm8
ucomiss %xmm1,%xmm8
jbe    c860 <tri_tri_overlap_test_3d+0xb750>
movaps 0x50(%rsp),%xmm1
movss  0x18(%rsp),%xmm10
subss  %xmm10,%xmm1
movaps 0x60(%rsp),%xmm2
movss  0x20(%rsp),%xmm9
subss  %xmm9,%xmm2
movaps 0x130(%rsp),%xmm7
movaps %xmm7,%xmm3
mulss  %xmm2,%xmm3
movaps %xmm1,%xmm4
movaps 0x120(%rsp),%xmm6
mulss  %xmm6,%xmm4
subss  %xmm3,%xmm4
movaps 0x70(%rsp),%xmm3
movss  0x1c(%rsp),%xmm0
subss  %xmm0,%xmm3
mulss  %xmm3,%xmm6
movaps 0x140(%rsp),%xmm5
mulss  %xmm5,%xmm2
subss  %xmm6,%xmm2
mulss  %xmm5,%xmm1
mulss  %xmm7,%xmm3
subss  %xmm1,%xmm3
movaps 0xa0(%rsp),%xmm1
subss  %xmm0,%xmm1
mulss  %xmm4,%xmm1
movaps 0x80(%rsp),%xmm4
subss  %xmm10,%xmm4
mulss  %xmm2,%xmm4
addss  %xmm1,%xmm4
movaps 0x90(%rsp),%xmm0
subss  %xmm9,%xmm0
mulss  %xmm3,%xmm0
addss  %xmm4,%xmm0
ucomiss %xmm8,%xmm0
ja     14a7 <tri_tri_overlap_test_3d+0x397>
movaps 0x70(%rsp),%xmm1
subss  %xmm12,%xmm1
movaps 0x50(%rsp),%xmm2
subss  %xmm11,%xmm2
movaps 0x60(%rsp),%xmm0
subss  %xmm14,%xmm0
movaps 0x30(%rsp),%xmm6
subss  %xmm12,%xmm6
movaps 0xe0(%rsp),%xmm5
subss  %xmm11,%xmm5
movaps 0x40(%rsp),%xmm4
subss  %xmm14,%xmm4
movaps %xmm5,%xmm3
mulss  %xmm0,%xmm3
mulss  %xmm6,%xmm0
mulss  %xmm2,%xmm6
mulss  %xmm4,%xmm2
subss  %xmm3,%xmm2
movss  %xmm2,(%rsp)
mulss  %xmm1,%xmm4
subss  %xmm4,%xmm0
movss  %xmm0,0x4(%rsp)
mulss  %xmm1,%xmm5
subss  %xmm6,%xmm5
movss  %xmm5,0x8(%rsp)
movss  0x14(%rsp),%xmm1
subss  %xmm12,%xmm1
movss  0xc(%rsp),%xmm3
subss  %xmm11,%xmm3
movss  0x10(%rsp),%xmm4
jmp    aa68 <tri_tri_overlap_test_3d+0x9958>
lea    0x17c(%rsp),%rbx
mov    %rsp,%r14
mov    %r8,%rdi
mov    %rdx,%rsi
mov    %r11,%rdx
jmp    b6ba <tri_tri_overlap_test_3d+0xa5aa>
movaps 0x70(%rsp),%xmm3
subss  %xmm13,%xmm3
movaps 0x50(%rsp),%xmm0
subss  %xmm14,%xmm0
movaps 0x60(%rsp),%xmm4
subss  %xmm9,%xmm4
movaps 0x160(%rsp),%xmm5
movaps %xmm5,%xmm1
mulss  %xmm4,%xmm1
movaps %xmm0,%xmm2
mulss  %xmm11,%xmm2
subss  %xmm1,%xmm2
mulss  %xmm3,%xmm11
movaps 0x150(%rsp),%xmm1
mulss  %xmm1,%xmm4
subss  %xmm11,%xmm4
mulss  %xmm1,%xmm0
mulss  %xmm5,%xmm3
subss  %xmm0,%xmm3
movss  0x14(%rsp),%xmm0
subss  %xmm13,%xmm0
mulss  %xmm2,%xmm0
movss  0xc(%rsp),%xmm1
subss  %xmm14,%xmm1
mulss  %xmm4,%xmm1
addss  %xmm0,%xmm1
movss  0x10(%rsp),%xmm0
subss  %xmm9,%xmm0
mulss  %xmm3,%xmm0
addss  %xmm1,%xmm0
ucomiss %xmm8,%xmm0
movaps 0x110(%rsp),%xmm4
movaps 0x100(%rsp),%xmm5
movaps 0xf0(%rsp),%xmm6
ja     14a7 <tri_tri_overlap_test_3d+0x397>
jmp    6738 <tri_tri_overlap_test_3d+0x5628>
ucomiss %xmm10,%xmm8
jbe    c97d <tri_tri_overlap_test_3d+0xb86d>
movaps 0xf0(%rsp),%xmm6
movss  0x14(%rsp),%xmm7
subss  %xmm6,%xmm7
movaps 0x100(%rsp),%xmm9
movss  0xc(%rsp),%xmm5
subss  %xmm9,%xmm5
movaps 0x110(%rsp),%xmm8
movss  0x10(%rsp),%xmm4
subss  %xmm8,%xmm4
movaps 0xe0(%rsp),%xmm0
jmp    3ef4 <tri_tri_overlap_test_3d+0x2de4>
lea    0x17c(%rsp),%rbx
mov    %rsp,%r14
mov    %rdx,%rdi
mov    %r11,%rsi
mov    %r8,%rdx
mov    %r9,%r8
mov    %r10,%r9
xor    %eax,%eax
push   %rbx
push   %r14
call   1030 <coplanar_tri_tri3d@plt>
add    $0x10,%rsp
jmp    14a7 <tri_tri_overlap_test_3d+0x397>

LLVM IR (-O0):
define i32 @tri_tri_overlap_test_3d(float* %0, float* %1, float* %2, float* %3, float* %4, float* %5) {
%7 = alloca i32
%8 = alloca float*
%9 = alloca float*
%10 = alloca float*
%11 = alloca float*
%12 = alloca float*
%13 = alloca float*
%14 = alloca float
%15 = alloca float
%16 = alloca float
%17 = alloca float
%18 = alloca float
%19 = alloca float
%20 = alloca [3 x float]
%21 = alloca [3 x float]
%22 = alloca [3 x float]
%23 = alloca [3 x float]
store float* %0, float** %8
store float* %1, float** %9
store float* %2, float** %10
store float* %3, float** %11
store float* %4, float** %12
store float* %5, float** %13
%24 = load float*, float** %11
%25 = getelementptr inbounds float, float* %24, i64 0
%26 = load float, float* %25
%27 = load float*, float** %13
%28 = getelementptr inbounds float, float* %27, i64 0
%29 = load float, float* %28
%30 = fsub float %26, %29
%31 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %30, float* %31
%32 = load float*, float** %11
%33 = getelementptr inbounds float, float* %32, i64 1
%34 = load float, float* %33
%35 = load float*, float** %13
%36 = getelementptr inbounds float, float* %35, i64 1
%37 = load float, float* %36
%38 = fsub float %34, %37
%39 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %38, float* %39
%40 = load float*, float** %11
%41 = getelementptr inbounds float, float* %40, i64 2
%42 = load float, float* %41
%43 = load float*, float** %13
%44 = getelementptr inbounds float, float* %43, i64 2
%45 = load float, float* %44
%46 = fsub float %42, %45
%47 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %46, float* %47
%48 = load float*, float** %12
%49 = getelementptr inbounds float, float* %48, i64 0
%50 = load float, float* %49
%51 = load float*, float** %13
%52 = getelementptr inbounds float, float* %51, i64 0
%53 = load float, float* %52
%54 = fsub float %50, %53
%55 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %54, float* %55
%56 = load float*, float** %12
%57 = getelementptr inbounds float, float* %56, i64 1
%58 = load float, float* %57
%59 = load float*, float** %13
%60 = getelementptr inbounds float, float* %59, i64 1
%61 = load float, float* %60
%62 = fsub float %58, %61
%63 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %62, float* %63
%64 = load float*, float** %12
%65 = getelementptr inbounds float, float* %64, i64 2
%66 = load float, float* %65
%67 = load float*, float** %13
%68 = getelementptr inbounds float, float* %67, i64 2
%69 = load float, float* %68
%70 = fsub float %66, %69
%71 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %70, float* %71
%72 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%73 = load float, float* %72
%74 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%75 = load float, float* %74
%76 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%77 = load float, float* %76
%78 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%79 = load float, float* %78
%80 = fmul float %77, %79
%81 = fneg float %80
%82 = call float @llvm.fmuladd.f32(float %73, float %75, float %81)
%83 = getelementptr inbounds [3 x float], [3 x float]* %23, i64 0, i64 0
store float %82, float* %83
%84 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%85 = load float, float* %84
%86 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%87 = load float, float* %86
%88 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%89 = load float, float* %88
%90 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%91 = load float, float* %90
%92 = fmul float %89, %91
%93 = fneg float %92
%94 = call float @llvm.fmuladd.f32(float %85, float %87, float %93)
%95 = getelementptr inbounds [3 x float], [3 x float]* %23, i64 0, i64 1
store float %94, float* %95
%96 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%97 = load float, float* %96
%98 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%99 = load float, float* %98
%100 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%101 = load float, float* %100
%102 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%103 = load float, float* %102
%104 = fmul float %101, %103
%105 = fneg float %104
%106 = call float @llvm.fmuladd.f32(float %97, float %99, float %105)
%107 = getelementptr inbounds [3 x float], [3 x float]* %23, i64 0, i64 2
store float %106, float* %107
%108 = load float*, float** %8
%109 = getelementptr inbounds float, float* %108, i64 0
%110 = load float, float* %109
%111 = load float*, float** %13
%112 = getelementptr inbounds float, float* %111, i64 0
%113 = load float, float* %112
%114 = fsub float %110, %113
%115 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %114, float* %115
%116 = load float*, float** %8
%117 = getelementptr inbounds float, float* %116, i64 1
%118 = load float, float* %117
%119 = load float*, float** %13
%120 = getelementptr inbounds float, float* %119, i64 1
%121 = load float, float* %120
%122 = fsub float %118, %121
%123 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %122, float* %123
%124 = load float*, float** %8
%125 = getelementptr inbounds float, float* %124, i64 2
%126 = load float, float* %125
%127 = load float*, float** %13
%128 = getelementptr inbounds float, float* %127, i64 2
%129 = load float, float* %128
%130 = fsub float %126, %129
%131 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %130, float* %131
%132 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%133 = load float, float* %132
%134 = getelementptr inbounds [3 x float], [3 x float]* %23, i64 0, i64 0
%135 = load float, float* %134
%136 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%137 = load float, float* %136
%138 = getelementptr inbounds [3 x float], [3 x float]* %23, i64 0, i64 1
%139 = load float, float* %138
%140 = fmul float %137, %139
%141 = call float @llvm.fmuladd.f32(float %133, float %135, float %140)
%142 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%143 = load float, float* %142
%144 = getelementptr inbounds [3 x float], [3 x float]* %23, i64 0, i64 2
%145 = load float, float* %144
%146 = call float @llvm.fmuladd.f32(float %143, float %145, float %141)
store float %146, float* %14
%147 = load float*, float** %9
%148 = getelementptr inbounds float, float* %147, i64 0
%149 = load float, float* %148
%150 = load float*, float** %13
%151 = getelementptr inbounds float, float* %150, i64 0
%152 = load float, float* %151
%153 = fsub float %149, %152
%154 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %153, float* %154
%155 = load float*, float** %9
%156 = getelementptr inbounds float, float* %155, i64 1
%157 = load float, float* %156
%158 = load float*, float** %13
%159 = getelementptr inbounds float, float* %158, i64 1
%160 = load float, float* %159
%161 = fsub float %157, %160
%162 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %161, float* %162
%163 = load float*, float** %9
%164 = getelementptr inbounds float, float* %163, i64 2
%165 = load float, float* %164
%166 = load float*, float** %13
%167 = getelementptr inbounds float, float* %166, i64 2
%168 = load float, float* %167
%169 = fsub float %165, %168
%170 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %169, float* %170
%171 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%172 = load float, float* %171
%173 = getelementptr inbounds [3 x float], [3 x float]* %23, i64 0, i64 0
%174 = load float, float* %173
%175 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%176 = load float, float* %175
%177 = getelementptr inbounds [3 x float], [3 x float]* %23, i64 0, i64 1
%178 = load float, float* %177
%179 = fmul float %176, %178
%180 = call float @llvm.fmuladd.f32(float %172, float %174, float %179)
%181 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%182 = load float, float* %181
%183 = getelementptr inbounds [3 x float], [3 x float]* %23, i64 0, i64 2
%184 = load float, float* %183
%185 = call float @llvm.fmuladd.f32(float %182, float %184, float %180)
store float %185, float* %15
%186 = load float*, float** %10
%187 = getelementptr inbounds float, float* %186, i64 0
%188 = load float, float* %187
%189 = load float*, float** %13
%190 = getelementptr inbounds float, float* %189, i64 0
%191 = load float, float* %190
%192 = fsub float %188, %191
%193 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %192, float* %193
%194 = load float*, float** %10
%195 = getelementptr inbounds float, float* %194, i64 1
%196 = load float, float* %195
%197 = load float*, float** %13
%198 = getelementptr inbounds float, float* %197, i64 1
%199 = load float, float* %198
%200 = fsub float %196, %199
%201 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %200, float* %201
%202 = load float*, float** %10
%203 = getelementptr inbounds float, float* %202, i64 2
%204 = load float, float* %203
%205 = load float*, float** %13
%206 = getelementptr inbounds float, float* %205, i64 2
%207 = load float, float* %206
%208 = fsub float %204, %207
%209 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %208, float* %209
%210 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%211 = load float, float* %210
%212 = getelementptr inbounds [3 x float], [3 x float]* %23, i64 0, i64 0
%213 = load float, float* %212
%214 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%215 = load float, float* %214
%216 = getelementptr inbounds [3 x float], [3 x float]* %23, i64 0, i64 1
%217 = load float, float* %216
%218 = fmul float %215, %217
%219 = call float @llvm.fmuladd.f32(float %211, float %213, float %218)
%220 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%221 = load float, float* %220
%222 = getelementptr inbounds [3 x float], [3 x float]* %23, i64 0, i64 2
%223 = load float, float* %222
%224 = call float @llvm.fmuladd.f32(float %221, float %223, float %219)
store float %224, float* %16
%225 = load float, float* %14
%226 = load float, float* %15
%227 = fmul float %225, %226
%228 = fcmp ogt float %227, 0.000000e+00
br i1 %228, label %229, label %235
229: ; preds = %6
%230 = load float, float* %14
%231 = load float, float* %16
%232 = fmul float %230, %231
%233 = fcmp ogt float %232, 0.000000e+00
br i1 %233, label %234, label %235
234: ; preds = %229
store i32 0, i32* %7
br label %37477
235: ; preds = %229, %6
%236 = load float*, float** %9
%237 = getelementptr inbounds float, float* %236, i64 0
%238 = load float, float* %237
%239 = load float*, float** %8
%240 = getelementptr inbounds float, float* %239, i64 0
%241 = load float, float* %240
%242 = fsub float %238, %241
%243 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %242, float* %243
%244 = load float*, float** %9
%245 = getelementptr inbounds float, float* %244, i64 1
%246 = load float, float* %245
%247 = load float*, float** %8
%248 = getelementptr inbounds float, float* %247, i64 1
%249 = load float, float* %248
%250 = fsub float %246, %249
%251 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %250, float* %251
%252 = load float*, float** %9
%253 = getelementptr inbounds float, float* %252, i64 2
%254 = load float, float* %253
%255 = load float*, float** %8
%256 = getelementptr inbounds float, float* %255, i64 2
%257 = load float, float* %256
%258 = fsub float %254, %257
%259 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %258, float* %259
%260 = load float*, float** %10
%261 = getelementptr inbounds float, float* %260, i64 0
%262 = load float, float* %261
%263 = load float*, float** %8
%264 = getelementptr inbounds float, float* %263, i64 0
%265 = load float, float* %264
%266 = fsub float %262, %265
%267 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %266, float* %267
%268 = load float*, float** %10
%269 = getelementptr inbounds float, float* %268, i64 1
%270 = load float, float* %269
%271 = load float*, float** %8
%272 = getelementptr inbounds float, float* %271, i64 1
%273 = load float, float* %272
%274 = fsub float %270, %273
%275 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %274, float* %275
%276 = load float*, float** %10
%277 = getelementptr inbounds float, float* %276, i64 2
%278 = load float, float* %277
%279 = load float*, float** %8
%280 = getelementptr inbounds float, float* %279, i64 2
%281 = load float, float* %280
%282 = fsub float %278, %281
%283 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %282, float* %283
%284 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%285 = load float, float* %284
%286 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%287 = load float, float* %286
%288 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%289 = load float, float* %288
%290 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%291 = load float, float* %290
%292 = fmul float %289, %291
%293 = fneg float %292
%294 = call float @llvm.fmuladd.f32(float %285, float %287, float %293)
%295 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %294, float* %295
%296 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%297 = load float, float* %296
%298 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%299 = load float, float* %298
%300 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%301 = load float, float* %300
%302 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%303 = load float, float* %302
%304 = fmul float %301, %303
%305 = fneg float %304
%306 = call float @llvm.fmuladd.f32(float %297, float %299, float %305)
%307 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %306, float* %307
%308 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%309 = load float, float* %308
%310 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%311 = load float, float* %310
%312 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%313 = load float, float* %312
%314 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%315 = load float, float* %314
%316 = fmul float %313, %315
%317 = fneg float %316
%318 = call float @llvm.fmuladd.f32(float %309, float %311, float %317)
%319 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %318, float* %319
%320 = load float*, float** %11
%321 = getelementptr inbounds float, float* %320, i64 0
%322 = load float, float* %321
%323 = load float*, float** %10
%324 = getelementptr inbounds float, float* %323, i64 0
%325 = load float, float* %324
%326 = fsub float %322, %325
%327 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %326, float* %327
%328 = load float*, float** %11
%329 = getelementptr inbounds float, float* %328, i64 1
%330 = load float, float* %329
%331 = load float*, float** %10
%332 = getelementptr inbounds float, float* %331, i64 1
%333 = load float, float* %332
%334 = fsub float %330, %333
%335 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %334, float* %335
%336 = load float*, float** %11
%337 = getelementptr inbounds float, float* %336, i64 2
%338 = load float, float* %337
%339 = load float*, float** %10
%340 = getelementptr inbounds float, float* %339, i64 2
%341 = load float, float* %340
%342 = fsub float %338, %341
%343 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %342, float* %343
%344 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%345 = load float, float* %344
%346 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%347 = load float, float* %346
%348 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%349 = load float, float* %348
%350 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%351 = load float, float* %350
%352 = fmul float %349, %351
%353 = call float @llvm.fmuladd.f32(float %345, float %347, float %352)
%354 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%355 = load float, float* %354
%356 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%357 = load float, float* %356
%358 = call float @llvm.fmuladd.f32(float %355, float %357, float %353)
store float %358, float* %17
%359 = load float*, float** %12
%360 = getelementptr inbounds float, float* %359, i64 0
%361 = load float, float* %360
%362 = load float*, float** %10
%363 = getelementptr inbounds float, float* %362, i64 0
%364 = load float, float* %363
%365 = fsub float %361, %364
%366 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %365, float* %366
%367 = load float*, float** %12
%368 = getelementptr inbounds float, float* %367, i64 1
%369 = load float, float* %368
%370 = load float*, float** %10
%371 = getelementptr inbounds float, float* %370, i64 1
%372 = load float, float* %371
%373 = fsub float %369, %372
%374 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %373, float* %374
%375 = load float*, float** %12
%376 = getelementptr inbounds float, float* %375, i64 2
%377 = load float, float* %376
%378 = load float*, float** %10
%379 = getelementptr inbounds float, float* %378, i64 2
%380 = load float, float* %379
%381 = fsub float %377, %380
%382 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %381, float* %382
%383 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%384 = load float, float* %383
%385 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%386 = load float, float* %385
%387 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%388 = load float, float* %387
%389 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%390 = load float, float* %389
%391 = fmul float %388, %390
%392 = call float @llvm.fmuladd.f32(float %384, float %386, float %391)
%393 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%394 = load float, float* %393
%395 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%396 = load float, float* %395
%397 = call float @llvm.fmuladd.f32(float %394, float %396, float %392)
store float %397, float* %18
%398 = load float*, float** %13
%399 = getelementptr inbounds float, float* %398, i64 0
%400 = load float, float* %399
%401 = load float*, float** %10
%402 = getelementptr inbounds float, float* %401, i64 0
%403 = load float, float* %402
%404 = fsub float %400, %403
%405 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %404, float* %405
%406 = load float*, float** %13
%407 = getelementptr inbounds float, float* %406, i64 1
%408 = load float, float* %407
%409 = load float*, float** %10
%410 = getelementptr inbounds float, float* %409, i64 1
%411 = load float, float* %410
%412 = fsub float %408, %411
%413 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %412, float* %413
%414 = load float*, float** %13
%415 = getelementptr inbounds float, float* %414, i64 2
%416 = load float, float* %415
%417 = load float*, float** %10
%418 = getelementptr inbounds float, float* %417, i64 2
%419 = load float, float* %418
%420 = fsub float %416, %419
%421 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %420, float* %421
%422 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%423 = load float, float* %422
%424 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%425 = load float, float* %424
%426 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%427 = load float, float* %426
%428 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%429 = load float, float* %428
%430 = fmul float %427, %429
%431 = call float @llvm.fmuladd.f32(float %423, float %425, float %430)
%432 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%433 = load float, float* %432
%434 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%435 = load float, float* %434
%436 = call float @llvm.fmuladd.f32(float %433, float %435, float %431)
store float %436, float* %19
%437 = load float, float* %17
%438 = load float, float* %18
%439 = fmul float %437, %438
%440 = fcmp ogt float %439, 0.000000e+00
br i1 %440, label %441, label %447
441: ; preds = %235
%442 = load float, float* %17
%443 = load float, float* %19
%444 = fmul float %442, %443
%445 = fcmp ogt float %444, 0.000000e+00
br i1 %445, label %446, label %447
446: ; preds = %441
store i32 0, i32* %7
br label %37477
447: ; preds = %441, %235
%448 = load float, float* %14
%449 = fcmp ogt float %448, 0.000000e+00
br i1 %449, label %450, label %9702
450: ; preds = %447
%451 = load float, float* %15
%452 = fcmp ogt float %451, 0.000000e+00
br i1 %452, label %453, label %3535
453: ; preds = %450
%454 = load float, float* %17
%455 = fcmp ogt float %454, 0.000000e+00
br i1 %455, label %456, label %1221
456: ; preds = %453
%457 = load float, float* %19
%458 = fcmp ogt float %457, 0.000000e+00
br i1 %458, label %459, label %712
459: ; preds = %456
%460 = load float*, float** %12
%461 = getelementptr inbounds float, float* %460, i64 0
%462 = load float, float* %461
%463 = load float*, float** %9
%464 = getelementptr inbounds float, float* %463, i64 0
%465 = load float, float* %464
%466 = fsub float %462, %465
%467 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %466, float* %467
%468 = load float*, float** %12
%469 = getelementptr inbounds float, float* %468, i64 1
%470 = load float, float* %469
%471 = load float*, float** %9
%472 = getelementptr inbounds float, float* %471, i64 1
%473 = load float, float* %472
%474 = fsub float %470, %473
%475 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %474, float* %475
%476 = load float*, float** %12
%477 = getelementptr inbounds float, float* %476, i64 2
%478 = load float, float* %477
%479 = load float*, float** %9
%480 = getelementptr inbounds float, float* %479, i64 2
%481 = load float, float* %480
%482 = fsub float %478, %481
%483 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %482, float* %483
%484 = load float*, float** %10
%485 = getelementptr inbounds float, float* %484, i64 0
%486 = load float, float* %485
%487 = load float*, float** %9
%488 = getelementptr inbounds float, float* %487, i64 0
%489 = load float, float* %488
%490 = fsub float %486, %489
%491 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %490, float* %491
%492 = load float*, float** %10
%493 = getelementptr inbounds float, float* %492, i64 1
%494 = load float, float* %493
%495 = load float*, float** %9
%496 = getelementptr inbounds float, float* %495, i64 1
%497 = load float, float* %496
%498 = fsub float %494, %497
%499 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %498, float* %499
%500 = load float*, float** %10
%501 = getelementptr inbounds float, float* %500, i64 2
%502 = load float, float* %501
%503 = load float*, float** %9
%504 = getelementptr inbounds float, float* %503, i64 2
%505 = load float, float* %504
%506 = fsub float %502, %505
%507 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %506, float* %507
%508 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%509 = load float, float* %508
%510 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%511 = load float, float* %510
%512 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%513 = load float, float* %512
%514 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%515 = load float, float* %514
%516 = fmul float %513, %515
%517 = fneg float %516
%518 = call float @llvm.fmuladd.f32(float %509, float %511, float %517)
%519 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %518, float* %519
%520 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%521 = load float, float* %520
%522 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%523 = load float, float* %522
%524 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%525 = load float, float* %524
%526 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%527 = load float, float* %526
%528 = fmul float %525, %527
%529 = fneg float %528
%530 = call float @llvm.fmuladd.f32(float %521, float %523, float %529)
%531 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %530, float* %531
%532 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%533 = load float, float* %532
%534 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%535 = load float, float* %534
%536 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%537 = load float, float* %536
%538 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%539 = load float, float* %538
%540 = fmul float %537, %539
%541 = fneg float %540
%542 = call float @llvm.fmuladd.f32(float %533, float %535, float %541)
%543 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %542, float* %543
%544 = load float*, float** %11
%545 = getelementptr inbounds float, float* %544, i64 0
%546 = load float, float* %545
%547 = load float*, float** %9
%548 = getelementptr inbounds float, float* %547, i64 0
%549 = load float, float* %548
%550 = fsub float %546, %549
%551 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %550, float* %551
%552 = load float*, float** %11
%553 = getelementptr inbounds float, float* %552, i64 1
%554 = load float, float* %553
%555 = load float*, float** %9
%556 = getelementptr inbounds float, float* %555, i64 1
%557 = load float, float* %556
%558 = fsub float %554, %557
%559 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %558, float* %559
%560 = load float*, float** %11
%561 = getelementptr inbounds float, float* %560, i64 2
%562 = load float, float* %561
%563 = load float*, float** %9
%564 = getelementptr inbounds float, float* %563, i64 2
%565 = load float, float* %564
%566 = fsub float %562, %565
%567 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %566, float* %567
%568 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%569 = load float, float* %568
%570 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%571 = load float, float* %570
%572 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%573 = load float, float* %572
%574 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%575 = load float, float* %574
%576 = fmul float %573, %575
%577 = call float @llvm.fmuladd.f32(float %569, float %571, float %576)
%578 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%579 = load float, float* %578
%580 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%581 = load float, float* %580
%582 = call float @llvm.fmuladd.f32(float %579, float %581, float %577)
%583 = fcmp ogt float %582, 0.000000e+00
br i1 %583, label %584, label %585
584: ; preds = %459
store i32 0, i32* %7
br label %37477
585: ; preds = %459
%586 = load float*, float** %12
%587 = getelementptr inbounds float, float* %586, i64 0
%588 = load float, float* %587
%589 = load float*, float** %10
%590 = getelementptr inbounds float, float* %589, i64 0
%591 = load float, float* %590
%592 = fsub float %588, %591
%593 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %592, float* %593
%594 = load float*, float** %12
%595 = getelementptr inbounds float, float* %594, i64 1
%596 = load float, float* %595
%597 = load float*, float** %10
%598 = getelementptr inbounds float, float* %597, i64 1
%599 = load float, float* %598
%600 = fsub float %596, %599
%601 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %600, float* %601
%602 = load float*, float** %12
%603 = getelementptr inbounds float, float* %602, i64 2
%604 = load float, float* %603
%605 = load float*, float** %10
%606 = getelementptr inbounds float, float* %605, i64 2
%607 = load float, float* %606
%608 = fsub float %604, %607
%609 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %608, float* %609
%610 = load float*, float** %8
%611 = getelementptr inbounds float, float* %610, i64 0
%612 = load float, float* %611
%613 = load float*, float** %10
%614 = getelementptr inbounds float, float* %613, i64 0
%615 = load float, float* %614
%616 = fsub float %612, %615
%617 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %616, float* %617
%618 = load float*, float** %8
%619 = getelementptr inbounds float, float* %618, i64 1
%620 = load float, float* %619
%621 = load float*, float** %10
%622 = getelementptr inbounds float, float* %621, i64 1
%623 = load float, float* %622
%624 = fsub float %620, %623
%625 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %624, float* %625
%626 = load float*, float** %8
%627 = getelementptr inbounds float, float* %626, i64 2
%628 = load float, float* %627
%629 = load float*, float** %10
%630 = getelementptr inbounds float, float* %629, i64 2
%631 = load float, float* %630
%632 = fsub float %628, %631
%633 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %632, float* %633
%634 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%635 = load float, float* %634
%636 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%637 = load float, float* %636
%638 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%639 = load float, float* %638
%640 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%641 = load float, float* %640
%642 = fmul float %639, %641
%643 = fneg float %642
%644 = call float @llvm.fmuladd.f32(float %635, float %637, float %643)
%645 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %644, float* %645
%646 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%647 = load float, float* %646
%648 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%649 = load float, float* %648
%650 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%651 = load float, float* %650
%652 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%653 = load float, float* %652
%654 = fmul float %651, %653
%655 = fneg float %654
%656 = call float @llvm.fmuladd.f32(float %647, float %649, float %655)
%657 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %656, float* %657
%658 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%659 = load float, float* %658
%660 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%661 = load float, float* %660
%662 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%663 = load float, float* %662
%664 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%665 = load float, float* %664
%666 = fmul float %663, %665
%667 = fneg float %666
%668 = call float @llvm.fmuladd.f32(float %659, float %661, float %667)
%669 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %668, float* %669
%670 = load float*, float** %13
%671 = getelementptr inbounds float, float* %670, i64 0
%672 = load float, float* %671
%673 = load float*, float** %10
%674 = getelementptr inbounds float, float* %673, i64 0
%675 = load float, float* %674
%676 = fsub float %672, %675
%677 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %676, float* %677
%678 = load float*, float** %13
%679 = getelementptr inbounds float, float* %678, i64 1
%680 = load float, float* %679
%681 = load float*, float** %10
%682 = getelementptr inbounds float, float* %681, i64 1
%683 = load float, float* %682
%684 = fsub float %680, %683
%685 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %684, float* %685
%686 = load float*, float** %13
%687 = getelementptr inbounds float, float* %686, i64 2
%688 = load float, float* %687
%689 = load float*, float** %10
%690 = getelementptr inbounds float, float* %689, i64 2
%691 = load float, float* %690
%692 = fsub float %688, %691
%693 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %692, float* %693
%694 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%695 = load float, float* %694
%696 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%697 = load float, float* %696
%698 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%699 = load float, float* %698
%700 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%701 = load float, float* %700
%702 = fmul float %699, %701
%703 = call float @llvm.fmuladd.f32(float %695, float %697, float %702)
%704 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%705 = load float, float* %704
%706 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%707 = load float, float* %706
%708 = call float @llvm.fmuladd.f32(float %705, float %707, float %703)
%709 = fcmp ogt float %708, 0.000000e+00
br i1 %709, label %710, label %711
710: ; preds = %585
store i32 0, i32* %7
br label %37477
711: ; preds = %585
store i32 1, i32* %7
br label %37477
712: ; preds = %456
%713 = load float, float* %18
%714 = fcmp ogt float %713, 0.000000e+00
br i1 %714, label %715, label %968
715: ; preds = %712
%716 = load float*, float** %13
%717 = getelementptr inbounds float, float* %716, i64 0
%718 = load float, float* %717
%719 = load float*, float** %9
%720 = getelementptr inbounds float, float* %719, i64 0
%721 = load float, float* %720
%722 = fsub float %718, %721
%723 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %722, float* %723
%724 = load float*, float** %13
%725 = getelementptr inbounds float, float* %724, i64 1
%726 = load float, float* %725
%727 = load float*, float** %9
%728 = getelementptr inbounds float, float* %727, i64 1
%729 = load float, float* %728
%730 = fsub float %726, %729
%731 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %730, float* %731
%732 = load float*, float** %13
%733 = getelementptr inbounds float, float* %732, i64 2
%734 = load float, float* %733
%735 = load float*, float** %9
%736 = getelementptr inbounds float, float* %735, i64 2
%737 = load float, float* %736
%738 = fsub float %734, %737
%739 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %738, float* %739
%740 = load float*, float** %10
%741 = getelementptr inbounds float, float* %740, i64 0
%742 = load float, float* %741
%743 = load float*, float** %9
%744 = getelementptr inbounds float, float* %743, i64 0
%745 = load float, float* %744
%746 = fsub float %742, %745
%747 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %746, float* %747
%748 = load float*, float** %10
%749 = getelementptr inbounds float, float* %748, i64 1
%750 = load float, float* %749
%751 = load float*, float** %9
%752 = getelementptr inbounds float, float* %751, i64 1
%753 = load float, float* %752
%754 = fsub float %750, %753
%755 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %754, float* %755
%756 = load float*, float** %10
%757 = getelementptr inbounds float, float* %756, i64 2
%758 = load float, float* %757
%759 = load float*, float** %9
%760 = getelementptr inbounds float, float* %759, i64 2
%761 = load float, float* %760
%762 = fsub float %758, %761
%763 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %762, float* %763
%764 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%765 = load float, float* %764
%766 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%767 = load float, float* %766
%768 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%769 = load float, float* %768
%770 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%771 = load float, float* %770
%772 = fmul float %769, %771
%773 = fneg float %772
%774 = call float @llvm.fmuladd.f32(float %765, float %767, float %773)
%775 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %774, float* %775
%776 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%777 = load float, float* %776
%778 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%779 = load float, float* %778
%780 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%781 = load float, float* %780
%782 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%783 = load float, float* %782
%784 = fmul float %781, %783
%785 = fneg float %784
%786 = call float @llvm.fmuladd.f32(float %777, float %779, float %785)
%787 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %786, float* %787
%788 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%789 = load float, float* %788
%790 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%791 = load float, float* %790
%792 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%793 = load float, float* %792
%794 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%795 = load float, float* %794
%796 = fmul float %793, %795
%797 = fneg float %796
%798 = call float @llvm.fmuladd.f32(float %789, float %791, float %797)
%799 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %798, float* %799
%800 = load float*, float** %12
%801 = getelementptr inbounds float, float* %800, i64 0
%802 = load float, float* %801
%803 = load float*, float** %9
%804 = getelementptr inbounds float, float* %803, i64 0
%805 = load float, float* %804
%806 = fsub float %802, %805
%807 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %806, float* %807
%808 = load float*, float** %12
%809 = getelementptr inbounds float, float* %808, i64 1
%810 = load float, float* %809
%811 = load float*, float** %9
%812 = getelementptr inbounds float, float* %811, i64 1
%813 = load float, float* %812
%814 = fsub float %810, %813
%815 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %814, float* %815
%816 = load float*, float** %12
%817 = getelementptr inbounds float, float* %816, i64 2
%818 = load float, float* %817
%819 = load float*, float** %9
%820 = getelementptr inbounds float, float* %819, i64 2
%821 = load float, float* %820
%822 = fsub float %818, %821
%823 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %822, float* %823
%824 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%825 = load float, float* %824
%826 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%827 = load float, float* %826
%828 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%829 = load float, float* %828
%830 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%831 = load float, float* %830
%832 = fmul float %829, %831
%833 = call float @llvm.fmuladd.f32(float %825, float %827, float %832)
%834 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%835 = load float, float* %834
%836 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%837 = load float, float* %836
%838 = call float @llvm.fmuladd.f32(float %835, float %837, float %833)
%839 = fcmp ogt float %838, 0.000000e+00
br i1 %839, label %840, label %841
840: ; preds = %715
store i32 0, i32* %7
br label %37477
841: ; preds = %715
%842 = load float*, float** %13
%843 = getelementptr inbounds float, float* %842, i64 0
%844 = load float, float* %843
%845 = load float*, float** %10
%846 = getelementptr inbounds float, float* %845, i64 0
%847 = load float, float* %846
%848 = fsub float %844, %847
%849 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %848, float* %849
%850 = load float*, float** %13
%851 = getelementptr inbounds float, float* %850, i64 1
%852 = load float, float* %851
%853 = load float*, float** %10
%854 = getelementptr inbounds float, float* %853, i64 1
%855 = load float, float* %854
%856 = fsub float %852, %855
%857 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %856, float* %857
%858 = load float*, float** %13
%859 = getelementptr inbounds float, float* %858, i64 2
%860 = load float, float* %859
%861 = load float*, float** %10
%862 = getelementptr inbounds float, float* %861, i64 2
%863 = load float, float* %862
%864 = fsub float %860, %863
%865 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %864, float* %865
%866 = load float*, float** %8
%867 = getelementptr inbounds float, float* %866, i64 0
%868 = load float, float* %867
%869 = load float*, float** %10
%870 = getelementptr inbounds float, float* %869, i64 0
%871 = load float, float* %870
%872 = fsub float %868, %871
%873 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %872, float* %873
%874 = load float*, float** %8
%875 = getelementptr inbounds float, float* %874, i64 1
%876 = load float, float* %875
%877 = load float*, float** %10
%878 = getelementptr inbounds float, float* %877, i64 1
%879 = load float, float* %878
%880 = fsub float %876, %879
%881 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %880, float* %881
%882 = load float*, float** %8
%883 = getelementptr inbounds float, float* %882, i64 2
%884 = load float, float* %883
%885 = load float*, float** %10
%886 = getelementptr inbounds float, float* %885, i64 2
%887 = load float, float* %886
%888 = fsub float %884, %887
%889 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %888, float* %889
%890 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%891 = load float, float* %890
%892 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%893 = load float, float* %892
%894 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%895 = load float, float* %894
%896 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%897 = load float, float* %896
%898 = fmul float %895, %897
%899 = fneg float %898
%900 = call float @llvm.fmuladd.f32(float %891, float %893, float %899)
%901 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %900, float* %901
%902 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%903 = load float, float* %902
%904 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%905 = load float, float* %904
%906 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%907 = load float, float* %906
%908 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%909 = load float, float* %908
%910 = fmul float %907, %909
%911 = fneg float %910
%912 = call float @llvm.fmuladd.f32(float %903, float %905, float %911)
%913 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %912, float* %913
%914 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%915 = load float, float* %914
%916 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%917 = load float, float* %916
%918 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%919 = load float, float* %918
%920 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%921 = load float, float* %920
%922 = fmul float %919, %921
%923 = fneg float %922
%924 = call float @llvm.fmuladd.f32(float %915, float %917, float %923)
%925 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %924, float* %925
%926 = load float*, float** %11
%927 = getelementptr inbounds float, float* %926, i64 0
%928 = load float, float* %927
%929 = load float*, float** %10
%930 = getelementptr inbounds float, float* %929, i64 0
%931 = load float, float* %930
%932 = fsub float %928, %931
%933 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %932, float* %933
%934 = load float*, float** %11
%935 = getelementptr inbounds float, float* %934, i64 1
%936 = load float, float* %935
%937 = load float*, float** %10
%938 = getelementptr inbounds float, float* %937, i64 1
%939 = load float, float* %938
%940 = fsub float %936, %939
%941 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %940, float* %941
%942 = load float*, float** %11
%943 = getelementptr inbounds float, float* %942, i64 2
%944 = load float, float* %943
%945 = load float*, float** %10
%946 = getelementptr inbounds float, float* %945, i64 2
%947 = load float, float* %946
%948 = fsub float %944, %947
%949 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %948, float* %949
%950 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%951 = load float, float* %950
%952 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%953 = load float, float* %952
%954 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%955 = load float, float* %954
%956 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%957 = load float, float* %956
%958 = fmul float %955, %957
%959 = call float @llvm.fmuladd.f32(float %951, float %953, float %958)
%960 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%961 = load float, float* %960
%962 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%963 = load float, float* %962
%964 = call float @llvm.fmuladd.f32(float %961, float %963, float %959)
%965 = fcmp ogt float %964, 0.000000e+00
br i1 %965, label %966, label %967
966: ; preds = %841
store i32 0, i32* %7
br label %37477
967: ; preds = %841
store i32 1, i32* %7
br label %37477
968: ; preds = %712
%969 = load float*, float** %11
%970 = getelementptr inbounds float, float* %969, i64 0
%971 = load float, float* %970
%972 = load float*, float** %8
%973 = getelementptr inbounds float, float* %972, i64 0
%974 = load float, float* %973
%975 = fsub float %971, %974
%976 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %975, float* %976
%977 = load float*, float** %11
%978 = getelementptr inbounds float, float* %977, i64 1
%979 = load float, float* %978
%980 = load float*, float** %8
%981 = getelementptr inbounds float, float* %980, i64 1
%982 = load float, float* %981
%983 = fsub float %979, %982
%984 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %983, float* %984
%985 = load float*, float** %11
%986 = getelementptr inbounds float, float* %985, i64 2
%987 = load float, float* %986
%988 = load float*, float** %8
%989 = getelementptr inbounds float, float* %988, i64 2
%990 = load float, float* %989
%991 = fsub float %987, %990
%992 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %991, float* %992
%993 = load float*, float** %10
%994 = getelementptr inbounds float, float* %993, i64 0
%995 = load float, float* %994
%996 = load float*, float** %8
%997 = getelementptr inbounds float, float* %996, i64 0
%998 = load float, float* %997
%999 = fsub float %995, %998
%1000 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %999, float* %1000
%1001 = load float*, float** %10
%1002 = getelementptr inbounds float, float* %1001, i64 1
%1003 = load float, float* %1002
%1004 = load float*, float** %8
%1005 = getelementptr inbounds float, float* %1004, i64 1
%1006 = load float, float* %1005
%1007 = fsub float %1003, %1006
%1008 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %1007, float* %1008
%1009 = load float*, float** %10
%1010 = getelementptr inbounds float, float* %1009, i64 2
%1011 = load float, float* %1010
%1012 = load float*, float** %8
%1013 = getelementptr inbounds float, float* %1012, i64 2
%1014 = load float, float* %1013
%1015 = fsub float %1011, %1014
%1016 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %1015, float* %1016
%1017 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%1018 = load float, float* %1017
%1019 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%1020 = load float, float* %1019
%1021 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%1022 = load float, float* %1021
%1023 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%1024 = load float, float* %1023
%1025 = fmul float %1022, %1024
%1026 = fneg float %1025
%1027 = call float @llvm.fmuladd.f32(float %1018, float %1020, float %1026)
%1028 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %1027, float* %1028
%1029 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%1030 = load float, float* %1029
%1031 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%1032 = load float, float* %1031
%1033 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%1034 = load float, float* %1033
%1035 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%1036 = load float, float* %1035
%1037 = fmul float %1034, %1036
%1038 = fneg float %1037
%1039 = call float @llvm.fmuladd.f32(float %1030, float %1032, float %1038)
%1040 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %1039, float* %1040
%1041 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%1042 = load float, float* %1041
%1043 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%1044 = load float, float* %1043
%1045 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%1046 = load float, float* %1045
%1047 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%1048 = load float, float* %1047
%1049 = fmul float %1046, %1048
%1050 = fneg float %1049
%1051 = call float @llvm.fmuladd.f32(float %1042, float %1044, float %1050)
%1052 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %1051, float* %1052
%1053 = load float*, float** %13
%1054 = getelementptr inbounds float, float* %1053, i64 0
%1055 = load float, float* %1054
%1056 = load float*, float** %8
%1057 = getelementptr inbounds float, float* %1056, i64 0
%1058 = load float, float* %1057
%1059 = fsub float %1055, %1058
%1060 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %1059, float* %1060
%1061 = load float*, float** %13
%1062 = getelementptr inbounds float, float* %1061, i64 1
%1063 = load float, float* %1062
%1064 = load float*, float** %8
%1065 = getelementptr inbounds float, float* %1064, i64 1
%1066 = load float, float* %1065
%1067 = fsub float %1063, %1066
%1068 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %1067, float* %1068
%1069 = load float*, float** %13
%1070 = getelementptr inbounds float, float* %1069, i64 2
%1071 = load float, float* %1070
%1072 = load float*, float** %8
%1073 = getelementptr inbounds float, float* %1072, i64 2
%1074 = load float, float* %1073
%1075 = fsub float %1071, %1074
%1076 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %1075, float* %1076
%1077 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%1078 = load float, float* %1077
%1079 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%1080 = load float, float* %1079
%1081 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%1082 = load float, float* %1081
%1083 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%1084 = load float, float* %1083
%1085 = fmul float %1082, %1084
%1086 = call float @llvm.fmuladd.f32(float %1078, float %1080, float %1085)
%1087 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%1088 = load float, float* %1087
%1089 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%1090 = load float, float* %1089
%1091 = call float @llvm.fmuladd.f32(float %1088, float %1090, float %1086)
%1092 = fcmp ogt float %1091, 0.000000e+00
br i1 %1092, label %1093, label %1094
1093: ; preds = %968
store i32 0, i32* %7
br label %37477
1094: ; preds = %968
%1095 = load float*, float** %11
%1096 = getelementptr inbounds float, float* %1095, i64 0
%1097 = load float, float* %1096
%1098 = load float*, float** %10
%1099 = getelementptr inbounds float, float* %1098, i64 0
%1100 = load float, float* %1099
%1101 = fsub float %1097, %1100
%1102 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %1101, float* %1102
%1103 = load float*, float** %11
%1104 = getelementptr inbounds float, float* %1103, i64 1
%1105 = load float, float* %1104
%1106 = load float*, float** %10
%1107 = getelementptr inbounds float, float* %1106, i64 1
%1108 = load float, float* %1107
%1109 = fsub float %1105, %1108
%1110 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %1109, float* %1110
%1111 = load float*, float** %11
%1112 = getelementptr inbounds float, float* %1111, i64 2
%1113 = load float, float* %1112
%1114 = load float*, float** %10
%1115 = getelementptr inbounds float, float* %1114, i64 2
%1116 = load float, float* %1115
%1117 = fsub float %1113, %1116
%1118 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %1117, float* %1118
%1119 = load float*, float** %9
%1120 = getelementptr inbounds float, float* %1119, i64 0
%1121 = load float, float* %1120
%1122 = load float*, float** %10
%1123 = getelementptr inbounds float, float* %1122, i64 0
%1124 = load float, float* %1123
%1125 = fsub float %1121, %1124
%1126 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %1125, float* %1126
%1127 = load float*, float** %9
%1128 = getelementptr inbounds float, float* %1127, i64 1
%1129 = load float, float* %1128
%1130 = load float*, float** %10
%1131 = getelementptr inbounds float, float* %1130, i64 1
%1132 = load float, float* %1131
%1133 = fsub float %1129, %1132
%1134 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %1133, float* %1134
%1135 = load float*, float** %9
%1136 = getelementptr inbounds float, float* %1135, i64 2
%1137 = load float, float* %1136
%1138 = load float*, float** %10
%1139 = getelementptr inbounds float, float* %1138, i64 2
%1140 = load float, float* %1139
%1141 = fsub float %1137, %1140
%1142 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %1141, float* %1142
%1143 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%1144 = load float, float* %1143
%1145 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%1146 = load float, float* %1145
%1147 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%1148 = load float, float* %1147
%1149 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%1150 = load float, float* %1149
%1151 = fmul float %1148, %1150
%1152 = fneg float %1151
%1153 = call float @llvm.fmuladd.f32(float %1144, float %1146, float %1152)
%1154 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %1153, float* %1154
%1155 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%1156 = load float, float* %1155
%1157 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%1158 = load float, float* %1157
%1159 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%1160 = load float, float* %1159
%1161 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%1162 = load float, float* %1161
%1163 = fmul float %1160, %1162
%1164 = fneg float %1163
%1165 = call float @llvm.fmuladd.f32(float %1156, float %1158, float %1164)
%1166 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %1165, float* %1166
%1167 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%1168 = load float, float* %1167
%1169 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%1170 = load float, float* %1169
%1171 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%1172 = load float, float* %1171
%1173 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%1174 = load float, float* %1173
%1175 = fmul float %1172, %1174
%1176 = fneg float %1175
%1177 = call float @llvm.fmuladd.f32(float %1168, float %1170, float %1176)
%1178 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %1177, float* %1178
%1179 = load float*, float** %12
%1180 = getelementptr inbounds float, float* %1179, i64 0
%1181 = load float, float* %1180
%1182 = load float*, float** %10
%1183 = getelementptr inbounds float, float* %1182, i64 0
%1184 = load float, float* %1183
%1185 = fsub float %1181, %1184
%1186 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %1185, float* %1186
%1187 = load float*, float** %12
%1188 = getelementptr inbounds float, float* %1187, i64 1
%1189 = load float, float* %1188
%1190 = load float*, float** %10
%1191 = getelementptr inbounds float, float* %1190, i64 1
%1192 = load float, float* %1191
%1193 = fsub float %1189, %1192
%1194 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %1193, float* %1194
%1195 = load float*, float** %12
%1196 = getelementptr inbounds float, float* %1195, i64 2
%1197 = load float, float* %1196
%1198 = load float*, float** %10
%1199 = getelementptr inbounds float, float* %1198, i64 2
%1200 = load float, float* %1199
%1201 = fsub float %1197, %1200
%1202 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %1201, float* %1202
%1203 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%1204 = load float, float* %1203
%1205 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%1206 = load float, float* %1205
%1207 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%1208 = load float, float* %1207
%1209 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%1210 = load float, float* %1209
%1211 = fmul float %1208, %1210
%1212 = call float @llvm.fmuladd.f32(float %1204, float %1206, float %1211)
%1213 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%1214 = load float, float* %1213
%1215 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%1216 = load float, float* %1215
%1217 = call float @llvm.fmuladd.f32(float %1214, float %1216, float %1212)
%1218 = fcmp ogt float %1217, 0.000000e+00
br i1 %1218, label %1219, label %1220
1219: ; preds = %1094
store i32 0, i32* %7
br label %37477
1220: ; preds = %1094
store i32 1, i32* %7
br label %37477
1221: ; preds = %453
%1222 = load float, float* %17
%1223 = fcmp olt float %1222, 0.000000e+00
br i1 %1223, label %1224, label %1989
1224: ; preds = %1221
%1225 = load float, float* %19
%1226 = fcmp olt float %1225, 0.000000e+00
br i1 %1226, label %1227, label %1480
1227: ; preds = %1224
%1228 = load float*, float** %12
%1229 = getelementptr inbounds float, float* %1228, i64 0
%1230 = load float, float* %1229
%1231 = load float*, float** %8
%1232 = getelementptr inbounds float, float* %1231, i64 0
%1233 = load float, float* %1232
%1234 = fsub float %1230, %1233
%1235 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %1234, float* %1235
%1236 = load float*, float** %12
%1237 = getelementptr inbounds float, float* %1236, i64 1
%1238 = load float, float* %1237
%1239 = load float*, float** %8
%1240 = getelementptr inbounds float, float* %1239, i64 1
%1241 = load float, float* %1240
%1242 = fsub float %1238, %1241
%1243 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %1242, float* %1243
%1244 = load float*, float** %12
%1245 = getelementptr inbounds float, float* %1244, i64 2
%1246 = load float, float* %1245
%1247 = load float*, float** %8
%1248 = getelementptr inbounds float, float* %1247, i64 2
%1249 = load float, float* %1248
%1250 = fsub float %1246, %1249
%1251 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %1250, float* %1251
%1252 = load float*, float** %10
%1253 = getelementptr inbounds float, float* %1252, i64 0
%1254 = load float, float* %1253
%1255 = load float*, float** %8
%1256 = getelementptr inbounds float, float* %1255, i64 0
%1257 = load float, float* %1256
%1258 = fsub float %1254, %1257
%1259 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %1258, float* %1259
%1260 = load float*, float** %10
%1261 = getelementptr inbounds float, float* %1260, i64 1
%1262 = load float, float* %1261
%1263 = load float*, float** %8
%1264 = getelementptr inbounds float, float* %1263, i64 1
%1265 = load float, float* %1264
%1266 = fsub float %1262, %1265
%1267 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %1266, float* %1267
%1268 = load float*, float** %10
%1269 = getelementptr inbounds float, float* %1268, i64 2
%1270 = load float, float* %1269
%1271 = load float*, float** %8
%1272 = getelementptr inbounds float, float* %1271, i64 2
%1273 = load float, float* %1272
%1274 = fsub float %1270, %1273
%1275 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %1274, float* %1275
%1276 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%1277 = load float, float* %1276
%1278 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%1279 = load float, float* %1278
%1280 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%1281 = load float, float* %1280
%1282 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%1283 = load float, float* %1282
%1284 = fmul float %1281, %1283
%1285 = fneg float %1284
%1286 = call float @llvm.fmuladd.f32(float %1277, float %1279, float %1285)
%1287 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %1286, float* %1287
%1288 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%1289 = load float, float* %1288
%1290 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%1291 = load float, float* %1290
%1292 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%1293 = load float, float* %1292
%1294 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%1295 = load float, float* %1294
%1296 = fmul float %1293, %1295
%1297 = fneg float %1296
%1298 = call float @llvm.fmuladd.f32(float %1289, float %1291, float %1297)
%1299 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %1298, float* %1299
%1300 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%1301 = load float, float* %1300
%1302 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%1303 = load float, float* %1302
%1304 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%1305 = load float, float* %1304
%1306 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%1307 = load float, float* %1306
%1308 = fmul float %1305, %1307
%1309 = fneg float %1308
%1310 = call float @llvm.fmuladd.f32(float %1301, float %1303, float %1309)
%1311 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %1310, float* %1311
%1312 = load float*, float** %11
%1313 = getelementptr inbounds float, float* %1312, i64 0
%1314 = load float, float* %1313
%1315 = load float*, float** %8
%1316 = getelementptr inbounds float, float* %1315, i64 0
%1317 = load float, float* %1316
%1318 = fsub float %1314, %1317
%1319 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %1318, float* %1319
%1320 = load float*, float** %11
%1321 = getelementptr inbounds float, float* %1320, i64 1
%1322 = load float, float* %1321
%1323 = load float*, float** %8
%1324 = getelementptr inbounds float, float* %1323, i64 1
%1325 = load float, float* %1324
%1326 = fsub float %1322, %1325
%1327 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %1326, float* %1327
%1328 = load float*, float** %11
%1329 = getelementptr inbounds float, float* %1328, i64 2
%1330 = load float, float* %1329
%1331 = load float*, float** %8
%1332 = getelementptr inbounds float, float* %1331, i64 2
%1333 = load float, float* %1332
%1334 = fsub float %1330, %1333
%1335 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %1334, float* %1335
%1336 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%1337 = load float, float* %1336
%1338 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%1339 = load float, float* %1338
%1340 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%1341 = load float, float* %1340
%1342 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%1343 = load float, float* %1342
%1344 = fmul float %1341, %1343
%1345 = call float @llvm.fmuladd.f32(float %1337, float %1339, float %1344)
%1346 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%1347 = load float, float* %1346
%1348 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%1349 = load float, float* %1348
%1350 = call float @llvm.fmuladd.f32(float %1347, float %1349, float %1345)
%1351 = fcmp ogt float %1350, 0.000000e+00
br i1 %1351, label %1352, label %1353
1352: ; preds = %1227
store i32 0, i32* %7
br label %37477
1353: ; preds = %1227
%1354 = load float*, float** %12
%1355 = getelementptr inbounds float, float* %1354, i64 0
%1356 = load float, float* %1355
%1357 = load float*, float** %10
%1358 = getelementptr inbounds float, float* %1357, i64 0
%1359 = load float, float* %1358
%1360 = fsub float %1356, %1359
%1361 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %1360, float* %1361
%1362 = load float*, float** %12
%1363 = getelementptr inbounds float, float* %1362, i64 1
%1364 = load float, float* %1363
%1365 = load float*, float** %10
%1366 = getelementptr inbounds float, float* %1365, i64 1
%1367 = load float, float* %1366
%1368 = fsub float %1364, %1367
%1369 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %1368, float* %1369
%1370 = load float*, float** %12
%1371 = getelementptr inbounds float, float* %1370, i64 2
%1372 = load float, float* %1371
%1373 = load float*, float** %10
%1374 = getelementptr inbounds float, float* %1373, i64 2
%1375 = load float, float* %1374
%1376 = fsub float %1372, %1375
%1377 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %1376, float* %1377
%1378 = load float*, float** %9
%1379 = getelementptr inbounds float, float* %1378, i64 0
%1380 = load float, float* %1379
%1381 = load float*, float** %10
%1382 = getelementptr inbounds float, float* %1381, i64 0
%1383 = load float, float* %1382
%1384 = fsub float %1380, %1383
%1385 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %1384, float* %1385
%1386 = load float*, float** %9
%1387 = getelementptr inbounds float, float* %1386, i64 1
%1388 = load float, float* %1387
%1389 = load float*, float** %10
%1390 = getelementptr inbounds float, float* %1389, i64 1
%1391 = load float, float* %1390
%1392 = fsub float %1388, %1391
%1393 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %1392, float* %1393
%1394 = load float*, float** %9
%1395 = getelementptr inbounds float, float* %1394, i64 2
%1396 = load float, float* %1395
%1397 = load float*, float** %10
%1398 = getelementptr inbounds float, float* %1397, i64 2
%1399 = load float, float* %1398
%1400 = fsub float %1396, %1399
%1401 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %1400, float* %1401
%1402 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%1403 = load float, float* %1402
%1404 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%1405 = load float, float* %1404
%1406 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%1407 = load float, float* %1406
%1408 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%1409 = load float, float* %1408
%1410 = fmul float %1407, %1409
%1411 = fneg float %1410
%1412 = call float @llvm.fmuladd.f32(float %1403, float %1405, float %1411)
%1413 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %1412, float* %1413
%1414 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%1415 = load float, float* %1414
%1416 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%1417 = load float, float* %1416
%1418 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%1419 = load float, float* %1418
%1420 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%1421 = load float, float* %1420
%1422 = fmul float %1419, %1421
%1423 = fneg float %1422
%1424 = call float @llvm.fmuladd.f32(float %1415, float %1417, float %1423)
%1425 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %1424, float* %1425
%1426 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%1427 = load float, float* %1426
%1428 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%1429 = load float, float* %1428
%1430 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%1431 = load float, float* %1430
%1432 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%1433 = load float, float* %1432
%1434 = fmul float %1431, %1433
%1435 = fneg float %1434
%1436 = call float @llvm.fmuladd.f32(float %1427, float %1429, float %1435)
%1437 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %1436, float* %1437
%1438 = load float*, float** %13
%1439 = getelementptr inbounds float, float* %1438, i64 0
%1440 = load float, float* %1439
%1441 = load float*, float** %10
%1442 = getelementptr inbounds float, float* %1441, i64 0
%1443 = load float, float* %1442
%1444 = fsub float %1440, %1443
%1445 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %1444, float* %1445
%1446 = load float*, float** %13
%1447 = getelementptr inbounds float, float* %1446, i64 1
%1448 = load float, float* %1447
%1449 = load float*, float** %10
%1450 = getelementptr inbounds float, float* %1449, i64 1
%1451 = load float, float* %1450
%1452 = fsub float %1448, %1451
%1453 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %1452, float* %1453
%1454 = load float*, float** %13
%1455 = getelementptr inbounds float, float* %1454, i64 2
%1456 = load float, float* %1455
%1457 = load float*, float** %10
%1458 = getelementptr inbounds float, float* %1457, i64 2
%1459 = load float, float* %1458
%1460 = fsub float %1456, %1459
%1461 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %1460, float* %1461
%1462 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%1463 = load float, float* %1462
%1464 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%1465 = load float, float* %1464
%1466 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%1467 = load float, float* %1466
%1468 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%1469 = load float, float* %1468
%1470 = fmul float %1467, %1469
%1471 = call float @llvm.fmuladd.f32(float %1463, float %1465, float %1470)
%1472 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%1473 = load float, float* %1472
%1474 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%1475 = load float, float* %1474
%1476 = call float @llvm.fmuladd.f32(float %1473, float %1475, float %1471)
%1477 = fcmp ogt float %1476, 0.000000e+00
br i1 %1477, label %1478, label %1479
1478: ; preds = %1353
store i32 0, i32* %7
br label %37477
1479: ; preds = %1353
store i32 1, i32* %7
br label %37477
1480: ; preds = %1224
%1481 = load float, float* %18
%1482 = fcmp olt float %1481, 0.000000e+00
br i1 %1482, label %1483, label %1736
1483: ; preds = %1480
%1484 = load float*, float** %13
%1485 = getelementptr inbounds float, float* %1484, i64 0
%1486 = load float, float* %1485
%1487 = load float*, float** %8
%1488 = getelementptr inbounds float, float* %1487, i64 0
%1489 = load float, float* %1488
%1490 = fsub float %1486, %1489
%1491 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %1490, float* %1491
%1492 = load float*, float** %13
%1493 = getelementptr inbounds float, float* %1492, i64 1
%1494 = load float, float* %1493
%1495 = load float*, float** %8
%1496 = getelementptr inbounds float, float* %1495, i64 1
%1497 = load float, float* %1496
%1498 = fsub float %1494, %1497
%1499 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %1498, float* %1499
%1500 = load float*, float** %13
%1501 = getelementptr inbounds float, float* %1500, i64 2
%1502 = load float, float* %1501
%1503 = load float*, float** %8
%1504 = getelementptr inbounds float, float* %1503, i64 2
%1505 = load float, float* %1504
%1506 = fsub float %1502, %1505
%1507 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %1506, float* %1507
%1508 = load float*, float** %10
%1509 = getelementptr inbounds float, float* %1508, i64 0
%1510 = load float, float* %1509
%1511 = load float*, float** %8
%1512 = getelementptr inbounds float, float* %1511, i64 0
%1513 = load float, float* %1512
%1514 = fsub float %1510, %1513
%1515 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %1514, float* %1515
%1516 = load float*, float** %10
%1517 = getelementptr inbounds float, float* %1516, i64 1
%1518 = load float, float* %1517
%1519 = load float*, float** %8
%1520 = getelementptr inbounds float, float* %1519, i64 1
%1521 = load float, float* %1520
%1522 = fsub float %1518, %1521
%1523 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %1522, float* %1523
%1524 = load float*, float** %10
%1525 = getelementptr inbounds float, float* %1524, i64 2
%1526 = load float, float* %1525
%1527 = load float*, float** %8
%1528 = getelementptr inbounds float, float* %1527, i64 2
%1529 = load float, float* %1528
%1530 = fsub float %1526, %1529
%1531 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %1530, float* %1531
%1532 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%1533 = load float, float* %1532
%1534 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%1535 = load float, float* %1534
%1536 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%1537 = load float, float* %1536
%1538 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%1539 = load float, float* %1538
%1540 = fmul float %1537, %1539
%1541 = fneg float %1540
%1542 = call float @llvm.fmuladd.f32(float %1533, float %1535, float %1541)
%1543 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %1542, float* %1543
%1544 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%1545 = load float, float* %1544
%1546 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%1547 = load float, float* %1546
%1548 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%1549 = load float, float* %1548
%1550 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%1551 = load float, float* %1550
%1552 = fmul float %1549, %1551
%1553 = fneg float %1552
%1554 = call float @llvm.fmuladd.f32(float %1545, float %1547, float %1553)
%1555 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %1554, float* %1555
%1556 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%1557 = load float, float* %1556
%1558 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%1559 = load float, float* %1558
%1560 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%1561 = load float, float* %1560
%1562 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%1563 = load float, float* %1562
%1564 = fmul float %1561, %1563
%1565 = fneg float %1564
%1566 = call float @llvm.fmuladd.f32(float %1557, float %1559, float %1565)
%1567 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %1566, float* %1567
%1568 = load float*, float** %12
%1569 = getelementptr inbounds float, float* %1568, i64 0
%1570 = load float, float* %1569
%1571 = load float*, float** %8
%1572 = getelementptr inbounds float, float* %1571, i64 0
%1573 = load float, float* %1572
%1574 = fsub float %1570, %1573
%1575 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %1574, float* %1575
%1576 = load float*, float** %12
%1577 = getelementptr inbounds float, float* %1576, i64 1
%1578 = load float, float* %1577
%1579 = load float*, float** %8
%1580 = getelementptr inbounds float, float* %1579, i64 1
%1581 = load float, float* %1580
%1582 = fsub float %1578, %1581
%1583 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %1582, float* %1583
%1584 = load float*, float** %12
%1585 = getelementptr inbounds float, float* %1584, i64 2
%1586 = load float, float* %1585
%1587 = load float*, float** %8
%1588 = getelementptr inbounds float, float* %1587, i64 2
%1589 = load float, float* %1588
%1590 = fsub float %1586, %1589
%1591 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %1590, float* %1591
%1592 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%1593 = load float, float* %1592
%1594 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%1595 = load float, float* %1594
%1596 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%1597 = load float, float* %1596
%1598 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%1599 = load float, float* %1598
%1600 = fmul float %1597, %1599
%1601 = call float @llvm.fmuladd.f32(float %1593, float %1595, float %1600)
%1602 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%1603 = load float, float* %1602
%1604 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%1605 = load float, float* %1604
%1606 = call float @llvm.fmuladd.f32(float %1603, float %1605, float %1601)
%1607 = fcmp ogt float %1606, 0.000000e+00
br i1 %1607, label %1608, label %1609
1608: ; preds = %1483
store i32 0, i32* %7
br label %37477
1609: ; preds = %1483
%1610 = load float*, float** %13
%1611 = getelementptr inbounds float, float* %1610, i64 0
%1612 = load float, float* %1611
%1613 = load float*, float** %10
%1614 = getelementptr inbounds float, float* %1613, i64 0
%1615 = load float, float* %1614
%1616 = fsub float %1612, %1615
%1617 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %1616, float* %1617
%1618 = load float*, float** %13
%1619 = getelementptr inbounds float, float* %1618, i64 1
%1620 = load float, float* %1619
%1621 = load float*, float** %10
%1622 = getelementptr inbounds float, float* %1621, i64 1
%1623 = load float, float* %1622
%1624 = fsub float %1620, %1623
%1625 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %1624, float* %1625
%1626 = load float*, float** %13
%1627 = getelementptr inbounds float, float* %1626, i64 2
%1628 = load float, float* %1627
%1629 = load float*, float** %10
%1630 = getelementptr inbounds float, float* %1629, i64 2
%1631 = load float, float* %1630
%1632 = fsub float %1628, %1631
%1633 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %1632, float* %1633
%1634 = load float*, float** %9
%1635 = getelementptr inbounds float, float* %1634, i64 0
%1636 = load float, float* %1635
%1637 = load float*, float** %10
%1638 = getelementptr inbounds float, float* %1637, i64 0
%1639 = load float, float* %1638
%1640 = fsub float %1636, %1639
%1641 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %1640, float* %1641
%1642 = load float*, float** %9
%1643 = getelementptr inbounds float, float* %1642, i64 1
%1644 = load float, float* %1643
%1645 = load float*, float** %10
%1646 = getelementptr inbounds float, float* %1645, i64 1
%1647 = load float, float* %1646
%1648 = fsub float %1644, %1647
%1649 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %1648, float* %1649
%1650 = load float*, float** %9
%1651 = getelementptr inbounds float, float* %1650, i64 2
%1652 = load float, float* %1651
%1653 = load float*, float** %10
%1654 = getelementptr inbounds float, float* %1653, i64 2
%1655 = load float, float* %1654
%1656 = fsub float %1652, %1655
%1657 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %1656, float* %1657
%1658 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%1659 = load float, float* %1658
%1660 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%1661 = load float, float* %1660
%1662 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%1663 = load float, float* %1662
%1664 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%1665 = load float, float* %1664
%1666 = fmul float %1663, %1665
%1667 = fneg float %1666
%1668 = call float @llvm.fmuladd.f32(float %1659, float %1661, float %1667)
%1669 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %1668, float* %1669
%1670 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%1671 = load float, float* %1670
%1672 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%1673 = load float, float* %1672
%1674 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%1675 = load float, float* %1674
%1676 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%1677 = load float, float* %1676
%1678 = fmul float %1675, %1677
%1679 = fneg float %1678
%1680 = call float @llvm.fmuladd.f32(float %1671, float %1673, float %1679)
%1681 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %1680, float* %1681
%1682 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%1683 = load float, float* %1682
%1684 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%1685 = load float, float* %1684
%1686 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%1687 = load float, float* %1686
%1688 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%1689 = load float, float* %1688
%1690 = fmul float %1687, %1689
%1691 = fneg float %1690
%1692 = call float @llvm.fmuladd.f32(float %1683, float %1685, float %1691)
%1693 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %1692, float* %1693
%1694 = load float*, float** %11
%1695 = getelementptr inbounds float, float* %1694, i64 0
%1696 = load float, float* %1695
%1697 = load float*, float** %10
%1698 = getelementptr inbounds float, float* %1697, i64 0
%1699 = load float, float* %1698
%1700 = fsub float %1696, %1699
%1701 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %1700, float* %1701
%1702 = load float*, float** %11
%1703 = getelementptr inbounds float, float* %1702, i64 1
%1704 = load float, float* %1703
%1705 = load float*, float** %10
%1706 = getelementptr inbounds float, float* %1705, i64 1
%1707 = load float, float* %1706
%1708 = fsub float %1704, %1707
%1709 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %1708, float* %1709
%1710 = load float*, float** %11
%1711 = getelementptr inbounds float, float* %1710, i64 2
%1712 = load float, float* %1711
%1713 = load float*, float** %10
%1714 = getelementptr inbounds float, float* %1713, i64 2
%1715 = load float, float* %1714
%1716 = fsub float %1712, %1715
%1717 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %1716, float* %1717
%1718 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%1719 = load float, float* %1718
%1720 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%1721 = load float, float* %1720
%1722 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%1723 = load float, float* %1722
%1724 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%1725 = load float, float* %1724
%1726 = fmul float %1723, %1725
%1727 = call float @llvm.fmuladd.f32(float %1719, float %1721, float %1726)
%1728 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%1729 = load float, float* %1728
%1730 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%1731 = load float, float* %1730
%1732 = call float @llvm.fmuladd.f32(float %1729, float %1731, float %1727)
%1733 = fcmp ogt float %1732, 0.000000e+00
br i1 %1733, label %1734, label %1735
1734: ; preds = %1609
store i32 0, i32* %7
br label %37477
1735: ; preds = %1609
store i32 1, i32* %7
br label %37477
1736: ; preds = %1480
%1737 = load float*, float** %11
%1738 = getelementptr inbounds float, float* %1737, i64 0
%1739 = load float, float* %1738
%1740 = load float*, float** %9
%1741 = getelementptr inbounds float, float* %1740, i64 0
%1742 = load float, float* %1741
%1743 = fsub float %1739, %1742
%1744 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %1743, float* %1744
%1745 = load float*, float** %11
%1746 = getelementptr inbounds float, float* %1745, i64 1
%1747 = load float, float* %1746
%1748 = load float*, float** %9
%1749 = getelementptr inbounds float, float* %1748, i64 1
%1750 = load float, float* %1749
%1751 = fsub float %1747, %1750
%1752 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %1751, float* %1752
%1753 = load float*, float** %11
%1754 = getelementptr inbounds float, float* %1753, i64 2
%1755 = load float, float* %1754
%1756 = load float*, float** %9
%1757 = getelementptr inbounds float, float* %1756, i64 2
%1758 = load float, float* %1757
%1759 = fsub float %1755, %1758
%1760 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %1759, float* %1760
%1761 = load float*, float** %10
%1762 = getelementptr inbounds float, float* %1761, i64 0
%1763 = load float, float* %1762
%1764 = load float*, float** %9
%1765 = getelementptr inbounds float, float* %1764, i64 0
%1766 = load float, float* %1765
%1767 = fsub float %1763, %1766
%1768 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %1767, float* %1768
%1769 = load float*, float** %10
%1770 = getelementptr inbounds float, float* %1769, i64 1
%1771 = load float, float* %1770
%1772 = load float*, float** %9
%1773 = getelementptr inbounds float, float* %1772, i64 1
%1774 = load float, float* %1773
%1775 = fsub float %1771, %1774
%1776 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %1775, float* %1776
%1777 = load float*, float** %10
%1778 = getelementptr inbounds float, float* %1777, i64 2
%1779 = load float, float* %1778
%1780 = load float*, float** %9
%1781 = getelementptr inbounds float, float* %1780, i64 2
%1782 = load float, float* %1781
%1783 = fsub float %1779, %1782
%1784 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %1783, float* %1784
%1785 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%1786 = load float, float* %1785
%1787 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%1788 = load float, float* %1787
%1789 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%1790 = load float, float* %1789
%1791 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%1792 = load float, float* %1791
%1793 = fmul float %1790, %1792
%1794 = fneg float %1793
%1795 = call float @llvm.fmuladd.f32(float %1786, float %1788, float %1794)
%1796 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %1795, float* %1796
%1797 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%1798 = load float, float* %1797
%1799 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%1800 = load float, float* %1799
%1801 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%1802 = load float, float* %1801
%1803 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%1804 = load float, float* %1803
%1805 = fmul float %1802, %1804
%1806 = fneg float %1805
%1807 = call float @llvm.fmuladd.f32(float %1798, float %1800, float %1806)
%1808 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %1807, float* %1808
%1809 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%1810 = load float, float* %1809
%1811 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%1812 = load float, float* %1811
%1813 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%1814 = load float, float* %1813
%1815 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%1816 = load float, float* %1815
%1817 = fmul float %1814, %1816
%1818 = fneg float %1817
%1819 = call float @llvm.fmuladd.f32(float %1810, float %1812, float %1818)
%1820 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %1819, float* %1820
%1821 = load float*, float** %13
%1822 = getelementptr inbounds float, float* %1821, i64 0
%1823 = load float, float* %1822
%1824 = load float*, float** %9
%1825 = getelementptr inbounds float, float* %1824, i64 0
%1826 = load float, float* %1825
%1827 = fsub float %1823, %1826
%1828 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %1827, float* %1828
%1829 = load float*, float** %13
%1830 = getelementptr inbounds float, float* %1829, i64 1
%1831 = load float, float* %1830
%1832 = load float*, float** %9
%1833 = getelementptr inbounds float, float* %1832, i64 1
%1834 = load float, float* %1833
%1835 = fsub float %1831, %1834
%1836 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %1835, float* %1836
%1837 = load float*, float** %13
%1838 = getelementptr inbounds float, float* %1837, i64 2
%1839 = load float, float* %1838
%1840 = load float*, float** %9
%1841 = getelementptr inbounds float, float* %1840, i64 2
%1842 = load float, float* %1841
%1843 = fsub float %1839, %1842
%1844 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %1843, float* %1844
%1845 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%1846 = load float, float* %1845
%1847 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%1848 = load float, float* %1847
%1849 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%1850 = load float, float* %1849
%1851 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%1852 = load float, float* %1851
%1853 = fmul float %1850, %1852
%1854 = call float @llvm.fmuladd.f32(float %1846, float %1848, float %1853)
%1855 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%1856 = load float, float* %1855
%1857 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%1858 = load float, float* %1857
%1859 = call float @llvm.fmuladd.f32(float %1856, float %1858, float %1854)
%1860 = fcmp ogt float %1859, 0.000000e+00
br i1 %1860, label %1861, label %1862
1861: ; preds = %1736
store i32 0, i32* %7
br label %37477
1862: ; preds = %1736
%1863 = load float*, float** %11
%1864 = getelementptr inbounds float, float* %1863, i64 0
%1865 = load float, float* %1864
%1866 = load float*, float** %10
%1867 = getelementptr inbounds float, float* %1866, i64 0
%1868 = load float, float* %1867
%1869 = fsub float %1865, %1868
%1870 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %1869, float* %1870
%1871 = load float*, float** %11
%1872 = getelementptr inbounds float, float* %1871, i64 1
%1873 = load float, float* %1872
%1874 = load float*, float** %10
%1875 = getelementptr inbounds float, float* %1874, i64 1
%1876 = load float, float* %1875
%1877 = fsub float %1873, %1876
%1878 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %1877, float* %1878
%1879 = load float*, float** %11
%1880 = getelementptr inbounds float, float* %1879, i64 2
%1881 = load float, float* %1880
%1882 = load float*, float** %10
%1883 = getelementptr inbounds float, float* %1882, i64 2
%1884 = load float, float* %1883
%1885 = fsub float %1881, %1884
%1886 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %1885, float* %1886
%1887 = load float*, float** %8
%1888 = getelementptr inbounds float, float* %1887, i64 0
%1889 = load float, float* %1888
%1890 = load float*, float** %10
%1891 = getelementptr inbounds float, float* %1890, i64 0
%1892 = load float, float* %1891
%1893 = fsub float %1889, %1892
%1894 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %1893, float* %1894
%1895 = load float*, float** %8
%1896 = getelementptr inbounds float, float* %1895, i64 1
%1897 = load float, float* %1896
%1898 = load float*, float** %10
%1899 = getelementptr inbounds float, float* %1898, i64 1
%1900 = load float, float* %1899
%1901 = fsub float %1897, %1900
%1902 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %1901, float* %1902
%1903 = load float*, float** %8
%1904 = getelementptr inbounds float, float* %1903, i64 2
%1905 = load float, float* %1904
%1906 = load float*, float** %10
%1907 = getelementptr inbounds float, float* %1906, i64 2
%1908 = load float, float* %1907
%1909 = fsub float %1905, %1908
%1910 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %1909, float* %1910
%1911 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%1912 = load float, float* %1911
%1913 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%1914 = load float, float* %1913
%1915 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%1916 = load float, float* %1915
%1917 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%1918 = load float, float* %1917
%1919 = fmul float %1916, %1918
%1920 = fneg float %1919
%1921 = call float @llvm.fmuladd.f32(float %1912, float %1914, float %1920)
%1922 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %1921, float* %1922
%1923 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%1924 = load float, float* %1923
%1925 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%1926 = load float, float* %1925
%1927 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%1928 = load float, float* %1927
%1929 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%1930 = load float, float* %1929
%1931 = fmul float %1928, %1930
%1932 = fneg float %1931
%1933 = call float @llvm.fmuladd.f32(float %1924, float %1926, float %1932)
%1934 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %1933, float* %1934
%1935 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%1936 = load float, float* %1935
%1937 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%1938 = load float, float* %1937
%1939 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%1940 = load float, float* %1939
%1941 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%1942 = load float, float* %1941
%1943 = fmul float %1940, %1942
%1944 = fneg float %1943
%1945 = call float @llvm.fmuladd.f32(float %1936, float %1938, float %1944)
%1946 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %1945, float* %1946
%1947 = load float*, float** %12
%1948 = getelementptr inbounds float, float* %1947, i64 0
%1949 = load float, float* %1948
%1950 = load float*, float** %10
%1951 = getelementptr inbounds float, float* %1950, i64 0
%1952 = load float, float* %1951
%1953 = fsub float %1949, %1952
%1954 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %1953, float* %1954
%1955 = load float*, float** %12
%1956 = getelementptr inbounds float, float* %1955, i64 1
%1957 = load float, float* %1956
%1958 = load float*, float** %10
%1959 = getelementptr inbounds float, float* %1958, i64 1
%1960 = load float, float* %1959
%1961 = fsub float %1957, %1960
%1962 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %1961, float* %1962
%1963 = load float*, float** %12
%1964 = getelementptr inbounds float, float* %1963, i64 2
%1965 = load float, float* %1964
%1966 = load float*, float** %10
%1967 = getelementptr inbounds float, float* %1966, i64 2
%1968 = load float, float* %1967
%1969 = fsub float %1965, %1968
%1970 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %1969, float* %1970
%1971 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%1972 = load float, float* %1971
%1973 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%1974 = load float, float* %1973
%1975 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%1976 = load float, float* %1975
%1977 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%1978 = load float, float* %1977
%1979 = fmul float %1976, %1978
%1980 = call float @llvm.fmuladd.f32(float %1972, float %1974, float %1979)
%1981 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%1982 = load float, float* %1981
%1983 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%1984 = load float, float* %1983
%1985 = call float @llvm.fmuladd.f32(float %1982, float %1984, float %1980)
%1986 = fcmp ogt float %1985, 0.000000e+00
br i1 %1986, label %1987, label %1988
1987: ; preds = %1862
store i32 0, i32* %7
br label %37477
1988: ; preds = %1862
store i32 1, i32* %7
br label %37477
1989: ; preds = %1221
%1990 = load float, float* %19
%1991 = fcmp olt float %1990, 0.000000e+00
br i1 %1991, label %1992, label %2501
1992: ; preds = %1989
%1993 = load float, float* %18
%1994 = fcmp oge float %1993, 0.000000e+00
br i1 %1994, label %1995, label %2248
1995: ; preds = %1992
%1996 = load float*, float** %13
%1997 = getelementptr inbounds float, float* %1996, i64 0
%1998 = load float, float* %1997
%1999 = load float*, float** %9
%2000 = getelementptr inbounds float, float* %1999, i64 0
%2001 = load float, float* %2000
%2002 = fsub float %1998, %2001
%2003 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %2002, float* %2003
%2004 = load float*, float** %13
%2005 = getelementptr inbounds float, float* %2004, i64 1
%2006 = load float, float* %2005
%2007 = load float*, float** %9
%2008 = getelementptr inbounds float, float* %2007, i64 1
%2009 = load float, float* %2008
%2010 = fsub float %2006, %2009
%2011 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %2010, float* %2011
%2012 = load float*, float** %13
%2013 = getelementptr inbounds float, float* %2012, i64 2
%2014 = load float, float* %2013
%2015 = load float*, float** %9
%2016 = getelementptr inbounds float, float* %2015, i64 2
%2017 = load float, float* %2016
%2018 = fsub float %2014, %2017
%2019 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %2018, float* %2019
%2020 = load float*, float** %10
%2021 = getelementptr inbounds float, float* %2020, i64 0
%2022 = load float, float* %2021
%2023 = load float*, float** %9
%2024 = getelementptr inbounds float, float* %2023, i64 0
%2025 = load float, float* %2024
%2026 = fsub float %2022, %2025
%2027 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %2026, float* %2027
%2028 = load float*, float** %10
%2029 = getelementptr inbounds float, float* %2028, i64 1
%2030 = load float, float* %2029
%2031 = load float*, float** %9
%2032 = getelementptr inbounds float, float* %2031, i64 1
%2033 = load float, float* %2032
%2034 = fsub float %2030, %2033
%2035 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %2034, float* %2035
%2036 = load float*, float** %10
%2037 = getelementptr inbounds float, float* %2036, i64 2
%2038 = load float, float* %2037
%2039 = load float*, float** %9
%2040 = getelementptr inbounds float, float* %2039, i64 2
%2041 = load float, float* %2040
%2042 = fsub float %2038, %2041
%2043 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %2042, float* %2043
%2044 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%2045 = load float, float* %2044
%2046 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%2047 = load float, float* %2046
%2048 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%2049 = load float, float* %2048
%2050 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%2051 = load float, float* %2050
%2052 = fmul float %2049, %2051
%2053 = fneg float %2052
%2054 = call float @llvm.fmuladd.f32(float %2045, float %2047, float %2053)
%2055 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %2054, float* %2055
%2056 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%2057 = load float, float* %2056
%2058 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%2059 = load float, float* %2058
%2060 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%2061 = load float, float* %2060
%2062 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%2063 = load float, float* %2062
%2064 = fmul float %2061, %2063
%2065 = fneg float %2064
%2066 = call float @llvm.fmuladd.f32(float %2057, float %2059, float %2065)
%2067 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %2066, float* %2067
%2068 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%2069 = load float, float* %2068
%2070 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%2071 = load float, float* %2070
%2072 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%2073 = load float, float* %2072
%2074 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%2075 = load float, float* %2074
%2076 = fmul float %2073, %2075
%2077 = fneg float %2076
%2078 = call float @llvm.fmuladd.f32(float %2069, float %2071, float %2077)
%2079 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %2078, float* %2079
%2080 = load float*, float** %12
%2081 = getelementptr inbounds float, float* %2080, i64 0
%2082 = load float, float* %2081
%2083 = load float*, float** %9
%2084 = getelementptr inbounds float, float* %2083, i64 0
%2085 = load float, float* %2084
%2086 = fsub float %2082, %2085
%2087 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %2086, float* %2087
%2088 = load float*, float** %12
%2089 = getelementptr inbounds float, float* %2088, i64 1
%2090 = load float, float* %2089
%2091 = load float*, float** %9
%2092 = getelementptr inbounds float, float* %2091, i64 1
%2093 = load float, float* %2092
%2094 = fsub float %2090, %2093
%2095 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %2094, float* %2095
%2096 = load float*, float** %12
%2097 = getelementptr inbounds float, float* %2096, i64 2
%2098 = load float, float* %2097
%2099 = load float*, float** %9
%2100 = getelementptr inbounds float, float* %2099, i64 2
%2101 = load float, float* %2100
%2102 = fsub float %2098, %2101
%2103 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %2102, float* %2103
%2104 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%2105 = load float, float* %2104
%2106 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%2107 = load float, float* %2106
%2108 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%2109 = load float, float* %2108
%2110 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%2111 = load float, float* %2110
%2112 = fmul float %2109, %2111
%2113 = call float @llvm.fmuladd.f32(float %2105, float %2107, float %2112)
%2114 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%2115 = load float, float* %2114
%2116 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%2117 = load float, float* %2116
%2118 = call float @llvm.fmuladd.f32(float %2115, float %2117, float %2113)
%2119 = fcmp ogt float %2118, 0.000000e+00
br i1 %2119, label %2120, label %2121
2120: ; preds = %1995
store i32 0, i32* %7
br label %37477
2121: ; preds = %1995
%2122 = load float*, float** %13
%2123 = getelementptr inbounds float, float* %2122, i64 0
%2124 = load float, float* %2123
%2125 = load float*, float** %10
%2126 = getelementptr inbounds float, float* %2125, i64 0
%2127 = load float, float* %2126
%2128 = fsub float %2124, %2127
%2129 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %2128, float* %2129
%2130 = load float*, float** %13
%2131 = getelementptr inbounds float, float* %2130, i64 1
%2132 = load float, float* %2131
%2133 = load float*, float** %10
%2134 = getelementptr inbounds float, float* %2133, i64 1
%2135 = load float, float* %2134
%2136 = fsub float %2132, %2135
%2137 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %2136, float* %2137
%2138 = load float*, float** %13
%2139 = getelementptr inbounds float, float* %2138, i64 2
%2140 = load float, float* %2139
%2141 = load float*, float** %10
%2142 = getelementptr inbounds float, float* %2141, i64 2
%2143 = load float, float* %2142
%2144 = fsub float %2140, %2143
%2145 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %2144, float* %2145
%2146 = load float*, float** %8
%2147 = getelementptr inbounds float, float* %2146, i64 0
%2148 = load float, float* %2147
%2149 = load float*, float** %10
%2150 = getelementptr inbounds float, float* %2149, i64 0
%2151 = load float, float* %2150
%2152 = fsub float %2148, %2151
%2153 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %2152, float* %2153
%2154 = load float*, float** %8
%2155 = getelementptr inbounds float, float* %2154, i64 1
%2156 = load float, float* %2155
%2157 = load float*, float** %10
%2158 = getelementptr inbounds float, float* %2157, i64 1
%2159 = load float, float* %2158
%2160 = fsub float %2156, %2159
%2161 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %2160, float* %2161
%2162 = load float*, float** %8
%2163 = getelementptr inbounds float, float* %2162, i64 2
%2164 = load float, float* %2163
%2165 = load float*, float** %10
%2166 = getelementptr inbounds float, float* %2165, i64 2
%2167 = load float, float* %2166
%2168 = fsub float %2164, %2167
%2169 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %2168, float* %2169
%2170 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%2171 = load float, float* %2170
%2172 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%2173 = load float, float* %2172
%2174 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%2175 = load float, float* %2174
%2176 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%2177 = load float, float* %2176
%2178 = fmul float %2175, %2177
%2179 = fneg float %2178
%2180 = call float @llvm.fmuladd.f32(float %2171, float %2173, float %2179)
%2181 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %2180, float* %2181
%2182 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%2183 = load float, float* %2182
%2184 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%2185 = load float, float* %2184
%2186 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%2187 = load float, float* %2186
%2188 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%2189 = load float, float* %2188
%2190 = fmul float %2187, %2189
%2191 = fneg float %2190
%2192 = call float @llvm.fmuladd.f32(float %2183, float %2185, float %2191)
%2193 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %2192, float* %2193
%2194 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%2195 = load float, float* %2194
%2196 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%2197 = load float, float* %2196
%2198 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%2199 = load float, float* %2198
%2200 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%2201 = load float, float* %2200
%2202 = fmul float %2199, %2201
%2203 = fneg float %2202
%2204 = call float @llvm.fmuladd.f32(float %2195, float %2197, float %2203)
%2205 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %2204, float* %2205
%2206 = load float*, float** %11
%2207 = getelementptr inbounds float, float* %2206, i64 0
%2208 = load float, float* %2207
%2209 = load float*, float** %10
%2210 = getelementptr inbounds float, float* %2209, i64 0
%2211 = load float, float* %2210
%2212 = fsub float %2208, %2211
%2213 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %2212, float* %2213
%2214 = load float*, float** %11
%2215 = getelementptr inbounds float, float* %2214, i64 1
%2216 = load float, float* %2215
%2217 = load float*, float** %10
%2218 = getelementptr inbounds float, float* %2217, i64 1
%2219 = load float, float* %2218
%2220 = fsub float %2216, %2219
%2221 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %2220, float* %2221
%2222 = load float*, float** %11
%2223 = getelementptr inbounds float, float* %2222, i64 2
%2224 = load float, float* %2223
%2225 = load float*, float** %10
%2226 = getelementptr inbounds float, float* %2225, i64 2
%2227 = load float, float* %2226
%2228 = fsub float %2224, %2227
%2229 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %2228, float* %2229
%2230 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%2231 = load float, float* %2230
%2232 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%2233 = load float, float* %2232
%2234 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%2235 = load float, float* %2234
%2236 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%2237 = load float, float* %2236
%2238 = fmul float %2235, %2237
%2239 = call float @llvm.fmuladd.f32(float %2231, float %2233, float %2238)
%2240 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%2241 = load float, float* %2240
%2242 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%2243 = load float, float* %2242
%2244 = call float @llvm.fmuladd.f32(float %2241, float %2243, float %2239)
%2245 = fcmp ogt float %2244, 0.000000e+00
br i1 %2245, label %2246, label %2247
2246: ; preds = %2121
store i32 0, i32* %7
br label %37477
2247: ; preds = %2121
store i32 1, i32* %7
br label %37477
2248: ; preds = %1992
%2249 = load float*, float** %11
%2250 = getelementptr inbounds float, float* %2249, i64 0
%2251 = load float, float* %2250
%2252 = load float*, float** %8
%2253 = getelementptr inbounds float, float* %2252, i64 0
%2254 = load float, float* %2253
%2255 = fsub float %2251, %2254
%2256 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %2255, float* %2256
%2257 = load float*, float** %11
%2258 = getelementptr inbounds float, float* %2257, i64 1
%2259 = load float, float* %2258
%2260 = load float*, float** %8
%2261 = getelementptr inbounds float, float* %2260, i64 1
%2262 = load float, float* %2261
%2263 = fsub float %2259, %2262
%2264 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %2263, float* %2264
%2265 = load float*, float** %11
%2266 = getelementptr inbounds float, float* %2265, i64 2
%2267 = load float, float* %2266
%2268 = load float*, float** %8
%2269 = getelementptr inbounds float, float* %2268, i64 2
%2270 = load float, float* %2269
%2271 = fsub float %2267, %2270
%2272 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %2271, float* %2272
%2273 = load float*, float** %10
%2274 = getelementptr inbounds float, float* %2273, i64 0
%2275 = load float, float* %2274
%2276 = load float*, float** %8
%2277 = getelementptr inbounds float, float* %2276, i64 0
%2278 = load float, float* %2277
%2279 = fsub float %2275, %2278
%2280 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %2279, float* %2280
%2281 = load float*, float** %10
%2282 = getelementptr inbounds float, float* %2281, i64 1
%2283 = load float, float* %2282
%2284 = load float*, float** %8
%2285 = getelementptr inbounds float, float* %2284, i64 1
%2286 = load float, float* %2285
%2287 = fsub float %2283, %2286
%2288 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %2287, float* %2288
%2289 = load float*, float** %10
%2290 = getelementptr inbounds float, float* %2289, i64 2
%2291 = load float, float* %2290
%2292 = load float*, float** %8
%2293 = getelementptr inbounds float, float* %2292, i64 2
%2294 = load float, float* %2293
%2295 = fsub float %2291, %2294
%2296 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %2295, float* %2296
%2297 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%2298 = load float, float* %2297
%2299 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%2300 = load float, float* %2299
%2301 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%2302 = load float, float* %2301
%2303 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%2304 = load float, float* %2303
%2305 = fmul float %2302, %2304
%2306 = fneg float %2305
%2307 = call float @llvm.fmuladd.f32(float %2298, float %2300, float %2306)
%2308 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %2307, float* %2308
%2309 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%2310 = load float, float* %2309
%2311 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%2312 = load float, float* %2311
%2313 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%2314 = load float, float* %2313
%2315 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%2316 = load float, float* %2315
%2317 = fmul float %2314, %2316
%2318 = fneg float %2317
%2319 = call float @llvm.fmuladd.f32(float %2310, float %2312, float %2318)
%2320 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %2319, float* %2320
%2321 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%2322 = load float, float* %2321
%2323 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%2324 = load float, float* %2323
%2325 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%2326 = load float, float* %2325
%2327 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%2328 = load float, float* %2327
%2329 = fmul float %2326, %2328
%2330 = fneg float %2329
%2331 = call float @llvm.fmuladd.f32(float %2322, float %2324, float %2330)
%2332 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %2331, float* %2332
%2333 = load float*, float** %13
%2334 = getelementptr inbounds float, float* %2333, i64 0
%2335 = load float, float* %2334
%2336 = load float*, float** %8
%2337 = getelementptr inbounds float, float* %2336, i64 0
%2338 = load float, float* %2337
%2339 = fsub float %2335, %2338
%2340 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %2339, float* %2340
%2341 = load float*, float** %13
%2342 = getelementptr inbounds float, float* %2341, i64 1
%2343 = load float, float* %2342
%2344 = load float*, float** %8
%2345 = getelementptr inbounds float, float* %2344, i64 1
%2346 = load float, float* %2345
%2347 = fsub float %2343, %2346
%2348 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %2347, float* %2348
%2349 = load float*, float** %13
%2350 = getelementptr inbounds float, float* %2349, i64 2
%2351 = load float, float* %2350
%2352 = load float*, float** %8
%2353 = getelementptr inbounds float, float* %2352, i64 2
%2354 = load float, float* %2353
%2355 = fsub float %2351, %2354
%2356 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %2355, float* %2356
%2357 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%2358 = load float, float* %2357
%2359 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%2360 = load float, float* %2359
%2361 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%2362 = load float, float* %2361
%2363 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%2364 = load float, float* %2363
%2365 = fmul float %2362, %2364
%2366 = call float @llvm.fmuladd.f32(float %2358, float %2360, float %2365)
%2367 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%2368 = load float, float* %2367
%2369 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%2370 = load float, float* %2369
%2371 = call float @llvm.fmuladd.f32(float %2368, float %2370, float %2366)
%2372 = fcmp ogt float %2371, 0.000000e+00
br i1 %2372, label %2373, label %2374
2373: ; preds = %2248
store i32 0, i32* %7
br label %37477
2374: ; preds = %2248
%2375 = load float*, float** %11
%2376 = getelementptr inbounds float, float* %2375, i64 0
%2377 = load float, float* %2376
%2378 = load float*, float** %10
%2379 = getelementptr inbounds float, float* %2378, i64 0
%2380 = load float, float* %2379
%2381 = fsub float %2377, %2380
%2382 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %2381, float* %2382
%2383 = load float*, float** %11
%2384 = getelementptr inbounds float, float* %2383, i64 1
%2385 = load float, float* %2384
%2386 = load float*, float** %10
%2387 = getelementptr inbounds float, float* %2386, i64 1
%2388 = load float, float* %2387
%2389 = fsub float %2385, %2388
%2390 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %2389, float* %2390
%2391 = load float*, float** %11
%2392 = getelementptr inbounds float, float* %2391, i64 2
%2393 = load float, float* %2392
%2394 = load float*, float** %10
%2395 = getelementptr inbounds float, float* %2394, i64 2
%2396 = load float, float* %2395
%2397 = fsub float %2393, %2396
%2398 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %2397, float* %2398
%2399 = load float*, float** %9
%2400 = getelementptr inbounds float, float* %2399, i64 0
%2401 = load float, float* %2400
%2402 = load float*, float** %10
%2403 = getelementptr inbounds float, float* %2402, i64 0
%2404 = load float, float* %2403
%2405 = fsub float %2401, %2404
%2406 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %2405, float* %2406
%2407 = load float*, float** %9
%2408 = getelementptr inbounds float, float* %2407, i64 1
%2409 = load float, float* %2408
%2410 = load float*, float** %10
%2411 = getelementptr inbounds float, float* %2410, i64 1
%2412 = load float, float* %2411
%2413 = fsub float %2409, %2412
%2414 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %2413, float* %2414
%2415 = load float*, float** %9
%2416 = getelementptr inbounds float, float* %2415, i64 2
%2417 = load float, float* %2416
%2418 = load float*, float** %10
%2419 = getelementptr inbounds float, float* %2418, i64 2
%2420 = load float, float* %2419
%2421 = fsub float %2417, %2420
%2422 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %2421, float* %2422
%2423 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%2424 = load float, float* %2423
%2425 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%2426 = load float, float* %2425
%2427 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%2428 = load float, float* %2427
%2429 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%2430 = load float, float* %2429
%2431 = fmul float %2428, %2430
%2432 = fneg float %2431
%2433 = call float @llvm.fmuladd.f32(float %2424, float %2426, float %2432)
%2434 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %2433, float* %2434
%2435 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%2436 = load float, float* %2435
%2437 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%2438 = load float, float* %2437
%2439 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%2440 = load float, float* %2439
%2441 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%2442 = load float, float* %2441
%2443 = fmul float %2440, %2442
%2444 = fneg float %2443
%2445 = call float @llvm.fmuladd.f32(float %2436, float %2438, float %2444)
%2446 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %2445, float* %2446
%2447 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%2448 = load float, float* %2447
%2449 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%2450 = load float, float* %2449
%2451 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%2452 = load float, float* %2451
%2453 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%2454 = load float, float* %2453
%2455 = fmul float %2452, %2454
%2456 = fneg float %2455
%2457 = call float @llvm.fmuladd.f32(float %2448, float %2450, float %2456)
%2458 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %2457, float* %2458
%2459 = load float*, float** %12
%2460 = getelementptr inbounds float, float* %2459, i64 0
%2461 = load float, float* %2460
%2462 = load float*, float** %10
%2463 = getelementptr inbounds float, float* %2462, i64 0
%2464 = load float, float* %2463
%2465 = fsub float %2461, %2464
%2466 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %2465, float* %2466
%2467 = load float*, float** %12
%2468 = getelementptr inbounds float, float* %2467, i64 1
%2469 = load float, float* %2468
%2470 = load float*, float** %10
%2471 = getelementptr inbounds float, float* %2470, i64 1
%2472 = load float, float* %2471
%2473 = fsub float %2469, %2472
%2474 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %2473, float* %2474
%2475 = load float*, float** %12
%2476 = getelementptr inbounds float, float* %2475, i64 2
%2477 = load float, float* %2476
%2478 = load float*, float** %10
%2479 = getelementptr inbounds float, float* %2478, i64 2
%2480 = load float, float* %2479
%2481 = fsub float %2477, %2480
%2482 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %2481, float* %2482
%2483 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%2484 = load float, float* %2483
%2485 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%2486 = load float, float* %2485
%2487 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%2488 = load float, float* %2487
%2489 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%2490 = load float, float* %2489
%2491 = fmul float %2488, %2490
%2492 = call float @llvm.fmuladd.f32(float %2484, float %2486, float %2491)
%2493 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%2494 = load float, float* %2493
%2495 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%2496 = load float, float* %2495
%2497 = call float @llvm.fmuladd.f32(float %2494, float %2496, float %2492)
%2498 = fcmp ogt float %2497, 0.000000e+00
br i1 %2498, label %2499, label %2500
2499: ; preds = %2374
store i32 0, i32* %7
br label %37477
2500: ; preds = %2374
store i32 1, i32* %7
br label %37477
2501: ; preds = %1989
%2502 = load float, float* %19
%2503 = fcmp ogt float %2502, 0.000000e+00
br i1 %2503, label %2504, label %3013
2504: ; preds = %2501
%2505 = load float, float* %18
%2506 = fcmp ogt float %2505, 0.000000e+00
br i1 %2506, label %2507, label %2760
2507: ; preds = %2504
%2508 = load float*, float** %11
%2509 = getelementptr inbounds float, float* %2508, i64 0
%2510 = load float, float* %2509
%2511 = load float*, float** %9
%2512 = getelementptr inbounds float, float* %2511, i64 0
%2513 = load float, float* %2512
%2514 = fsub float %2510, %2513
%2515 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %2514, float* %2515
%2516 = load float*, float** %11
%2517 = getelementptr inbounds float, float* %2516, i64 1
%2518 = load float, float* %2517
%2519 = load float*, float** %9
%2520 = getelementptr inbounds float, float* %2519, i64 1
%2521 = load float, float* %2520
%2522 = fsub float %2518, %2521
%2523 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %2522, float* %2523
%2524 = load float*, float** %11
%2525 = getelementptr inbounds float, float* %2524, i64 2
%2526 = load float, float* %2525
%2527 = load float*, float** %9
%2528 = getelementptr inbounds float, float* %2527, i64 2
%2529 = load float, float* %2528
%2530 = fsub float %2526, %2529
%2531 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %2530, float* %2531
%2532 = load float*, float** %10
%2533 = getelementptr inbounds float, float* %2532, i64 0
%2534 = load float, float* %2533
%2535 = load float*, float** %9
%2536 = getelementptr inbounds float, float* %2535, i64 0
%2537 = load float, float* %2536
%2538 = fsub float %2534, %2537
%2539 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %2538, float* %2539
%2540 = load float*, float** %10
%2541 = getelementptr inbounds float, float* %2540, i64 1
%2542 = load float, float* %2541
%2543 = load float*, float** %9
%2544 = getelementptr inbounds float, float* %2543, i64 1
%2545 = load float, float* %2544
%2546 = fsub float %2542, %2545
%2547 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %2546, float* %2547
%2548 = load float*, float** %10
%2549 = getelementptr inbounds float, float* %2548, i64 2
%2550 = load float, float* %2549
%2551 = load float*, float** %9
%2552 = getelementptr inbounds float, float* %2551, i64 2
%2553 = load float, float* %2552
%2554 = fsub float %2550, %2553
%2555 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %2554, float* %2555
%2556 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%2557 = load float, float* %2556
%2558 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%2559 = load float, float* %2558
%2560 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%2561 = load float, float* %2560
%2562 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%2563 = load float, float* %2562
%2564 = fmul float %2561, %2563
%2565 = fneg float %2564
%2566 = call float @llvm.fmuladd.f32(float %2557, float %2559, float %2565)
%2567 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %2566, float* %2567
%2568 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%2569 = load float, float* %2568
%2570 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%2571 = load float, float* %2570
%2572 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%2573 = load float, float* %2572
%2574 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%2575 = load float, float* %2574
%2576 = fmul float %2573, %2575
%2577 = fneg float %2576
%2578 = call float @llvm.fmuladd.f32(float %2569, float %2571, float %2577)
%2579 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %2578, float* %2579
%2580 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%2581 = load float, float* %2580
%2582 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%2583 = load float, float* %2582
%2584 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%2585 = load float, float* %2584
%2586 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%2587 = load float, float* %2586
%2588 = fmul float %2585, %2587
%2589 = fneg float %2588
%2590 = call float @llvm.fmuladd.f32(float %2581, float %2583, float %2589)
%2591 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %2590, float* %2591
%2592 = load float*, float** %13
%2593 = getelementptr inbounds float, float* %2592, i64 0
%2594 = load float, float* %2593
%2595 = load float*, float** %9
%2596 = getelementptr inbounds float, float* %2595, i64 0
%2597 = load float, float* %2596
%2598 = fsub float %2594, %2597
%2599 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %2598, float* %2599
%2600 = load float*, float** %13
%2601 = getelementptr inbounds float, float* %2600, i64 1
%2602 = load float, float* %2601
%2603 = load float*, float** %9
%2604 = getelementptr inbounds float, float* %2603, i64 1
%2605 = load float, float* %2604
%2606 = fsub float %2602, %2605
%2607 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %2606, float* %2607
%2608 = load float*, float** %13
%2609 = getelementptr inbounds float, float* %2608, i64 2
%2610 = load float, float* %2609
%2611 = load float*, float** %9
%2612 = getelementptr inbounds float, float* %2611, i64 2
%2613 = load float, float* %2612
%2614 = fsub float %2610, %2613
%2615 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %2614, float* %2615
%2616 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%2617 = load float, float* %2616
%2618 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%2619 = load float, float* %2618
%2620 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%2621 = load float, float* %2620
%2622 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%2623 = load float, float* %2622
%2624 = fmul float %2621, %2623
%2625 = call float @llvm.fmuladd.f32(float %2617, float %2619, float %2624)
%2626 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%2627 = load float, float* %2626
%2628 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%2629 = load float, float* %2628
%2630 = call float @llvm.fmuladd.f32(float %2627, float %2629, float %2625)
%2631 = fcmp ogt float %2630, 0.000000e+00
br i1 %2631, label %2632, label %2633
2632: ; preds = %2507
store i32 0, i32* %7
br label %37477
2633: ; preds = %2507
%2634 = load float*, float** %11
%2635 = getelementptr inbounds float, float* %2634, i64 0
%2636 = load float, float* %2635
%2637 = load float*, float** %10
%2638 = getelementptr inbounds float, float* %2637, i64 0
%2639 = load float, float* %2638
%2640 = fsub float %2636, %2639
%2641 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %2640, float* %2641
%2642 = load float*, float** %11
%2643 = getelementptr inbounds float, float* %2642, i64 1
%2644 = load float, float* %2643
%2645 = load float*, float** %10
%2646 = getelementptr inbounds float, float* %2645, i64 1
%2647 = load float, float* %2646
%2648 = fsub float %2644, %2647
%2649 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %2648, float* %2649
%2650 = load float*, float** %11
%2651 = getelementptr inbounds float, float* %2650, i64 2
%2652 = load float, float* %2651
%2653 = load float*, float** %10
%2654 = getelementptr inbounds float, float* %2653, i64 2
%2655 = load float, float* %2654
%2656 = fsub float %2652, %2655
%2657 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %2656, float* %2657
%2658 = load float*, float** %8
%2659 = getelementptr inbounds float, float* %2658, i64 0
%2660 = load float, float* %2659
%2661 = load float*, float** %10
%2662 = getelementptr inbounds float, float* %2661, i64 0
%2663 = load float, float* %2662
%2664 = fsub float %2660, %2663
%2665 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %2664, float* %2665
%2666 = load float*, float** %8
%2667 = getelementptr inbounds float, float* %2666, i64 1
%2668 = load float, float* %2667
%2669 = load float*, float** %10
%2670 = getelementptr inbounds float, float* %2669, i64 1
%2671 = load float, float* %2670
%2672 = fsub float %2668, %2671
%2673 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %2672, float* %2673
%2674 = load float*, float** %8
%2675 = getelementptr inbounds float, float* %2674, i64 2
%2676 = load float, float* %2675
%2677 = load float*, float** %10
%2678 = getelementptr inbounds float, float* %2677, i64 2
%2679 = load float, float* %2678
%2680 = fsub float %2676, %2679
%2681 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %2680, float* %2681
%2682 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%2683 = load float, float* %2682
%2684 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%2685 = load float, float* %2684
%2686 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%2687 = load float, float* %2686
%2688 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%2689 = load float, float* %2688
%2690 = fmul float %2687, %2689
%2691 = fneg float %2690
%2692 = call float @llvm.fmuladd.f32(float %2683, float %2685, float %2691)
%2693 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %2692, float* %2693
%2694 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%2695 = load float, float* %2694
%2696 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%2697 = load float, float* %2696
%2698 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%2699 = load float, float* %2698
%2700 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%2701 = load float, float* %2700
%2702 = fmul float %2699, %2701
%2703 = fneg float %2702
%2704 = call float @llvm.fmuladd.f32(float %2695, float %2697, float %2703)
%2705 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %2704, float* %2705
%2706 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%2707 = load float, float* %2706
%2708 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%2709 = load float, float* %2708
%2710 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%2711 = load float, float* %2710
%2712 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%2713 = load float, float* %2712
%2714 = fmul float %2711, %2713
%2715 = fneg float %2714
%2716 = call float @llvm.fmuladd.f32(float %2707, float %2709, float %2715)
%2717 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %2716, float* %2717
%2718 = load float*, float** %12
%2719 = getelementptr inbounds float, float* %2718, i64 0
%2720 = load float, float* %2719
%2721 = load float*, float** %10
%2722 = getelementptr inbounds float, float* %2721, i64 0
%2723 = load float, float* %2722
%2724 = fsub float %2720, %2723
%2725 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %2724, float* %2725
%2726 = load float*, float** %12
%2727 = getelementptr inbounds float, float* %2726, i64 1
%2728 = load float, float* %2727
%2729 = load float*, float** %10
%2730 = getelementptr inbounds float, float* %2729, i64 1
%2731 = load float, float* %2730
%2732 = fsub float %2728, %2731
%2733 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %2732, float* %2733
%2734 = load float*, float** %12
%2735 = getelementptr inbounds float, float* %2734, i64 2
%2736 = load float, float* %2735
%2737 = load float*, float** %10
%2738 = getelementptr inbounds float, float* %2737, i64 2
%2739 = load float, float* %2738
%2740 = fsub float %2736, %2739
%2741 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %2740, float* %2741
%2742 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%2743 = load float, float* %2742
%2744 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%2745 = load float, float* %2744
%2746 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%2747 = load float, float* %2746
%2748 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%2749 = load float, float* %2748
%2750 = fmul float %2747, %2749
%2751 = call float @llvm.fmuladd.f32(float %2743, float %2745, float %2750)
%2752 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%2753 = load float, float* %2752
%2754 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%2755 = load float, float* %2754
%2756 = call float @llvm.fmuladd.f32(float %2753, float %2755, float %2751)
%2757 = fcmp ogt float %2756, 0.000000e+00
br i1 %2757, label %2758, label %2759
2758: ; preds = %2633
store i32 0, i32* %7
br label %37477
2759: ; preds = %2633
store i32 1, i32* %7
br label %37477
2760: ; preds = %2504
%2761 = load float*, float** %13
%2762 = getelementptr inbounds float, float* %2761, i64 0
%2763 = load float, float* %2762
%2764 = load float*, float** %8
%2765 = getelementptr inbounds float, float* %2764, i64 0
%2766 = load float, float* %2765
%2767 = fsub float %2763, %2766
%2768 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %2767, float* %2768
%2769 = load float*, float** %13
%2770 = getelementptr inbounds float, float* %2769, i64 1
%2771 = load float, float* %2770
%2772 = load float*, float** %8
%2773 = getelementptr inbounds float, float* %2772, i64 1
%2774 = load float, float* %2773
%2775 = fsub float %2771, %2774
%2776 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %2775, float* %2776
%2777 = load float*, float** %13
%2778 = getelementptr inbounds float, float* %2777, i64 2
%2779 = load float, float* %2778
%2780 = load float*, float** %8
%2781 = getelementptr inbounds float, float* %2780, i64 2
%2782 = load float, float* %2781
%2783 = fsub float %2779, %2782
%2784 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %2783, float* %2784
%2785 = load float*, float** %10
%2786 = getelementptr inbounds float, float* %2785, i64 0
%2787 = load float, float* %2786
%2788 = load float*, float** %8
%2789 = getelementptr inbounds float, float* %2788, i64 0
%2790 = load float, float* %2789
%2791 = fsub float %2787, %2790
%2792 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %2791, float* %2792
%2793 = load float*, float** %10
%2794 = getelementptr inbounds float, float* %2793, i64 1
%2795 = load float, float* %2794
%2796 = load float*, float** %8
%2797 = getelementptr inbounds float, float* %2796, i64 1
%2798 = load float, float* %2797
%2799 = fsub float %2795, %2798
%2800 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %2799, float* %2800
%2801 = load float*, float** %10
%2802 = getelementptr inbounds float, float* %2801, i64 2
%2803 = load float, float* %2802
%2804 = load float*, float** %8
%2805 = getelementptr inbounds float, float* %2804, i64 2
%2806 = load float, float* %2805
%2807 = fsub float %2803, %2806
%2808 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %2807, float* %2808
%2809 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%2810 = load float, float* %2809
%2811 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%2812 = load float, float* %2811
%2813 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%2814 = load float, float* %2813
%2815 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%2816 = load float, float* %2815
%2817 = fmul float %2814, %2816
%2818 = fneg float %2817
%2819 = call float @llvm.fmuladd.f32(float %2810, float %2812, float %2818)
%2820 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %2819, float* %2820
%2821 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%2822 = load float, float* %2821
%2823 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%2824 = load float, float* %2823
%2825 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%2826 = load float, float* %2825
%2827 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%2828 = load float, float* %2827
%2829 = fmul float %2826, %2828
%2830 = fneg float %2829
%2831 = call float @llvm.fmuladd.f32(float %2822, float %2824, float %2830)
%2832 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %2831, float* %2832
%2833 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%2834 = load float, float* %2833
%2835 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%2836 = load float, float* %2835
%2837 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%2838 = load float, float* %2837
%2839 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%2840 = load float, float* %2839
%2841 = fmul float %2838, %2840
%2842 = fneg float %2841
%2843 = call float @llvm.fmuladd.f32(float %2834, float %2836, float %2842)
%2844 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %2843, float* %2844
%2845 = load float*, float** %12
%2846 = getelementptr inbounds float, float* %2845, i64 0
%2847 = load float, float* %2846
%2848 = load float*, float** %8
%2849 = getelementptr inbounds float, float* %2848, i64 0
%2850 = load float, float* %2849
%2851 = fsub float %2847, %2850
%2852 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %2851, float* %2852
%2853 = load float*, float** %12
%2854 = getelementptr inbounds float, float* %2853, i64 1
%2855 = load float, float* %2854
%2856 = load float*, float** %8
%2857 = getelementptr inbounds float, float* %2856, i64 1
%2858 = load float, float* %2857
%2859 = fsub float %2855, %2858
%2860 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %2859, float* %2860
%2861 = load float*, float** %12
%2862 = getelementptr inbounds float, float* %2861, i64 2
%2863 = load float, float* %2862
%2864 = load float*, float** %8
%2865 = getelementptr inbounds float, float* %2864, i64 2
%2866 = load float, float* %2865
%2867 = fsub float %2863, %2866
%2868 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %2867, float* %2868
%2869 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%2870 = load float, float* %2869
%2871 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%2872 = load float, float* %2871
%2873 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%2874 = load float, float* %2873
%2875 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%2876 = load float, float* %2875
%2877 = fmul float %2874, %2876
%2878 = call float @llvm.fmuladd.f32(float %2870, float %2872, float %2877)
%2879 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%2880 = load float, float* %2879
%2881 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%2882 = load float, float* %2881
%2883 = call float @llvm.fmuladd.f32(float %2880, float %2882, float %2878)
%2884 = fcmp ogt float %2883, 0.000000e+00
br i1 %2884, label %2885, label %2886
2885: ; preds = %2760
store i32 0, i32* %7
br label %37477
2886: ; preds = %2760
%2887 = load float*, float** %13
%2888 = getelementptr inbounds float, float* %2887, i64 0
%2889 = load float, float* %2888
%2890 = load float*, float** %10
%2891 = getelementptr inbounds float, float* %2890, i64 0
%2892 = load float, float* %2891
%2893 = fsub float %2889, %2892
%2894 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %2893, float* %2894
%2895 = load float*, float** %13
%2896 = getelementptr inbounds float, float* %2895, i64 1
%2897 = load float, float* %2896
%2898 = load float*, float** %10
%2899 = getelementptr inbounds float, float* %2898, i64 1
%2900 = load float, float* %2899
%2901 = fsub float %2897, %2900
%2902 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %2901, float* %2902
%2903 = load float*, float** %13
%2904 = getelementptr inbounds float, float* %2903, i64 2
%2905 = load float, float* %2904
%2906 = load float*, float** %10
%2907 = getelementptr inbounds float, float* %2906, i64 2
%2908 = load float, float* %2907
%2909 = fsub float %2905, %2908
%2910 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %2909, float* %2910
%2911 = load float*, float** %9
%2912 = getelementptr inbounds float, float* %2911, i64 0
%2913 = load float, float* %2912
%2914 = load float*, float** %10
%2915 = getelementptr inbounds float, float* %2914, i64 0
%2916 = load float, float* %2915
%2917 = fsub float %2913, %2916
%2918 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %2917, float* %2918
%2919 = load float*, float** %9
%2920 = getelementptr inbounds float, float* %2919, i64 1
%2921 = load float, float* %2920
%2922 = load float*, float** %10
%2923 = getelementptr inbounds float, float* %2922, i64 1
%2924 = load float, float* %2923
%2925 = fsub float %2921, %2924
%2926 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %2925, float* %2926
%2927 = load float*, float** %9
%2928 = getelementptr inbounds float, float* %2927, i64 2
%2929 = load float, float* %2928
%2930 = load float*, float** %10
%2931 = getelementptr inbounds float, float* %2930, i64 2
%2932 = load float, float* %2931
%2933 = fsub float %2929, %2932
%2934 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %2933, float* %2934
%2935 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%2936 = load float, float* %2935
%2937 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%2938 = load float, float* %2937
%2939 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%2940 = load float, float* %2939
%2941 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%2942 = load float, float* %2941
%2943 = fmul float %2940, %2942
%2944 = fneg float %2943
%2945 = call float @llvm.fmuladd.f32(float %2936, float %2938, float %2944)
%2946 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %2945, float* %2946
%2947 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%2948 = load float, float* %2947
%2949 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%2950 = load float, float* %2949
%2951 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%2952 = load float, float* %2951
%2953 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%2954 = load float, float* %2953
%2955 = fmul float %2952, %2954
%2956 = fneg float %2955
%2957 = call float @llvm.fmuladd.f32(float %2948, float %2950, float %2956)
%2958 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %2957, float* %2958
%2959 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%2960 = load float, float* %2959
%2961 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%2962 = load float, float* %2961
%2963 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%2964 = load float, float* %2963
%2965 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%2966 = load float, float* %2965
%2967 = fmul float %2964, %2966
%2968 = fneg float %2967
%2969 = call float @llvm.fmuladd.f32(float %2960, float %2962, float %2968)
%2970 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %2969, float* %2970
%2971 = load float*, float** %11
%2972 = getelementptr inbounds float, float* %2971, i64 0
%2973 = load float, float* %2972
%2974 = load float*, float** %10
%2975 = getelementptr inbounds float, float* %2974, i64 0
%2976 = load float, float* %2975
%2977 = fsub float %2973, %2976
%2978 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %2977, float* %2978
%2979 = load float*, float** %11
%2980 = getelementptr inbounds float, float* %2979, i64 1
%2981 = load float, float* %2980
%2982 = load float*, float** %10
%2983 = getelementptr inbounds float, float* %2982, i64 1
%2984 = load float, float* %2983
%2985 = fsub float %2981, %2984
%2986 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %2985, float* %2986
%2987 = load float*, float** %11
%2988 = getelementptr inbounds float, float* %2987, i64 2
%2989 = load float, float* %2988
%2990 = load float*, float** %10
%2991 = getelementptr inbounds float, float* %2990, i64 2
%2992 = load float, float* %2991
%2993 = fsub float %2989, %2992
%2994 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %2993, float* %2994
%2995 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%2996 = load float, float* %2995
%2997 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%2998 = load float, float* %2997
%2999 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%3000 = load float, float* %2999
%3001 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%3002 = load float, float* %3001
%3003 = fmul float %3000, %3002
%3004 = call float @llvm.fmuladd.f32(float %2996, float %2998, float %3003)
%3005 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%3006 = load float, float* %3005
%3007 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%3008 = load float, float* %3007
%3009 = call float @llvm.fmuladd.f32(float %3006, float %3008, float %3004)
%3010 = fcmp ogt float %3009, 0.000000e+00
br i1 %3010, label %3011, label %3012
3011: ; preds = %2886
store i32 0, i32* %7
br label %37477
3012: ; preds = %2886
store i32 1, i32* %7
br label %37477
3013: ; preds = %2501
%3014 = load float, float* %18
%3015 = fcmp ogt float %3014, 0.000000e+00
br i1 %3015, label %3016, label %3269
3016: ; preds = %3013
%3017 = load float*, float** %12
%3018 = getelementptr inbounds float, float* %3017, i64 0
%3019 = load float, float* %3018
%3020 = load float*, float** %8
%3021 = getelementptr inbounds float, float* %3020, i64 0
%3022 = load float, float* %3021
%3023 = fsub float %3019, %3022
%3024 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %3023, float* %3024
%3025 = load float*, float** %12
%3026 = getelementptr inbounds float, float* %3025, i64 1
%3027 = load float, float* %3026
%3028 = load float*, float** %8
%3029 = getelementptr inbounds float, float* %3028, i64 1
%3030 = load float, float* %3029
%3031 = fsub float %3027, %3030
%3032 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %3031, float* %3032
%3033 = load float*, float** %12
%3034 = getelementptr inbounds float, float* %3033, i64 2
%3035 = load float, float* %3034
%3036 = load float*, float** %8
%3037 = getelementptr inbounds float, float* %3036, i64 2
%3038 = load float, float* %3037
%3039 = fsub float %3035, %3038
%3040 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %3039, float* %3040
%3041 = load float*, float** %10
%3042 = getelementptr inbounds float, float* %3041, i64 0
%3043 = load float, float* %3042
%3044 = load float*, float** %8
%3045 = getelementptr inbounds float, float* %3044, i64 0
%3046 = load float, float* %3045
%3047 = fsub float %3043, %3046
%3048 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %3047, float* %3048
%3049 = load float*, float** %10
%3050 = getelementptr inbounds float, float* %3049, i64 1
%3051 = load float, float* %3050
%3052 = load float*, float** %8
%3053 = getelementptr inbounds float, float* %3052, i64 1
%3054 = load float, float* %3053
%3055 = fsub float %3051, %3054
%3056 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %3055, float* %3056
%3057 = load float*, float** %10
%3058 = getelementptr inbounds float, float* %3057, i64 2
%3059 = load float, float* %3058
%3060 = load float*, float** %8
%3061 = getelementptr inbounds float, float* %3060, i64 2
%3062 = load float, float* %3061
%3063 = fsub float %3059, %3062
%3064 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %3063, float* %3064
%3065 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%3066 = load float, float* %3065
%3067 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%3068 = load float, float* %3067
%3069 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%3070 = load float, float* %3069
%3071 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%3072 = load float, float* %3071
%3073 = fmul float %3070, %3072
%3074 = fneg float %3073
%3075 = call float @llvm.fmuladd.f32(float %3066, float %3068, float %3074)
%3076 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %3075, float* %3076
%3077 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%3078 = load float, float* %3077
%3079 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%3080 = load float, float* %3079
%3081 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%3082 = load float, float* %3081
%3083 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%3084 = load float, float* %3083
%3085 = fmul float %3082, %3084
%3086 = fneg float %3085
%3087 = call float @llvm.fmuladd.f32(float %3078, float %3080, float %3086)
%3088 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %3087, float* %3088
%3089 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%3090 = load float, float* %3089
%3091 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%3092 = load float, float* %3091
%3093 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%3094 = load float, float* %3093
%3095 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%3096 = load float, float* %3095
%3097 = fmul float %3094, %3096
%3098 = fneg float %3097
%3099 = call float @llvm.fmuladd.f32(float %3090, float %3092, float %3098)
%3100 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %3099, float* %3100
%3101 = load float*, float** %11
%3102 = getelementptr inbounds float, float* %3101, i64 0
%3103 = load float, float* %3102
%3104 = load float*, float** %8
%3105 = getelementptr inbounds float, float* %3104, i64 0
%3106 = load float, float* %3105
%3107 = fsub float %3103, %3106
%3108 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %3107, float* %3108
%3109 = load float*, float** %11
%3110 = getelementptr inbounds float, float* %3109, i64 1
%3111 = load float, float* %3110
%3112 = load float*, float** %8
%3113 = getelementptr inbounds float, float* %3112, i64 1
%3114 = load float, float* %3113
%3115 = fsub float %3111, %3114
%3116 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %3115, float* %3116
%3117 = load float*, float** %11
%3118 = getelementptr inbounds float, float* %3117, i64 2
%3119 = load float, float* %3118
%3120 = load float*, float** %8
%3121 = getelementptr inbounds float, float* %3120, i64 2
%3122 = load float, float* %3121
%3123 = fsub float %3119, %3122
%3124 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %3123, float* %3124
%3125 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%3126 = load float, float* %3125
%3127 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%3128 = load float, float* %3127
%3129 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%3130 = load float, float* %3129
%3131 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%3132 = load float, float* %3131
%3133 = fmul float %3130, %3132
%3134 = call float @llvm.fmuladd.f32(float %3126, float %3128, float %3133)
%3135 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%3136 = load float, float* %3135
%3137 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%3138 = load float, float* %3137
%3139 = call float @llvm.fmuladd.f32(float %3136, float %3138, float %3134)
%3140 = fcmp ogt float %3139, 0.000000e+00
br i1 %3140, label %3141, label %3142
3141: ; preds = %3016
store i32 0, i32* %7
br label %37477
3142: ; preds = %3016
%3143 = load float*, float** %12
%3144 = getelementptr inbounds float, float* %3143, i64 0
%3145 = load float, float* %3144
%3146 = load float*, float** %10
%3147 = getelementptr inbounds float, float* %3146, i64 0
%3148 = load float, float* %3147
%3149 = fsub float %3145, %3148
%3150 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %3149, float* %3150
%3151 = load float*, float** %12
%3152 = getelementptr inbounds float, float* %3151, i64 1
%3153 = load float, float* %3152
%3154 = load float*, float** %10
%3155 = getelementptr inbounds float, float* %3154, i64 1
%3156 = load float, float* %3155
%3157 = fsub float %3153, %3156
%3158 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %3157, float* %3158
%3159 = load float*, float** %12
%3160 = getelementptr inbounds float, float* %3159, i64 2
%3161 = load float, float* %3160
%3162 = load float*, float** %10
%3163 = getelementptr inbounds float, float* %3162, i64 2
%3164 = load float, float* %3163
%3165 = fsub float %3161, %3164
%3166 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %3165, float* %3166
%3167 = load float*, float** %9
%3168 = getelementptr inbounds float, float* %3167, i64 0
%3169 = load float, float* %3168
%3170 = load float*, float** %10
%3171 = getelementptr inbounds float, float* %3170, i64 0
%3172 = load float, float* %3171
%3173 = fsub float %3169, %3172
%3174 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %3173, float* %3174
%3175 = load float*, float** %9
%3176 = getelementptr inbounds float, float* %3175, i64 1
%3177 = load float, float* %3176
%3178 = load float*, float** %10
%3179 = getelementptr inbounds float, float* %3178, i64 1
%3180 = load float, float* %3179
%3181 = fsub float %3177, %3180
%3182 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %3181, float* %3182
%3183 = load float*, float** %9
%3184 = getelementptr inbounds float, float* %3183, i64 2
%3185 = load float, float* %3184
%3186 = load float*, float** %10
%3187 = getelementptr inbounds float, float* %3186, i64 2
%3188 = load float, float* %3187
%3189 = fsub float %3185, %3188
%3190 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %3189, float* %3190
%3191 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%3192 = load float, float* %3191
%3193 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%3194 = load float, float* %3193
%3195 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%3196 = load float, float* %3195
%3197 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%3198 = load float, float* %3197
%3199 = fmul float %3196, %3198
%3200 = fneg float %3199
%3201 = call float @llvm.fmuladd.f32(float %3192, float %3194, float %3200)
%3202 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %3201, float* %3202
%3203 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%3204 = load float, float* %3203
%3205 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%3206 = load float, float* %3205
%3207 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%3208 = load float, float* %3207
%3209 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%3210 = load float, float* %3209
%3211 = fmul float %3208, %3210
%3212 = fneg float %3211
%3213 = call float @llvm.fmuladd.f32(float %3204, float %3206, float %3212)
%3214 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %3213, float* %3214
%3215 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%3216 = load float, float* %3215
%3217 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%3218 = load float, float* %3217
%3219 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%3220 = load float, float* %3219
%3221 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%3222 = load float, float* %3221
%3223 = fmul float %3220, %3222
%3224 = fneg float %3223
%3225 = call float @llvm.fmuladd.f32(float %3216, float %3218, float %3224)
%3226 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %3225, float* %3226
%3227 = load float*, float** %13
%3228 = getelementptr inbounds float, float* %3227, i64 0
%3229 = load float, float* %3228
%3230 = load float*, float** %10
%3231 = getelementptr inbounds float, float* %3230, i64 0
%3232 = load float, float* %3231
%3233 = fsub float %3229, %3232
%3234 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %3233, float* %3234
%3235 = load float*, float** %13
%3236 = getelementptr inbounds float, float* %3235, i64 1
%3237 = load float, float* %3236
%3238 = load float*, float** %10
%3239 = getelementptr inbounds float, float* %3238, i64 1
%3240 = load float, float* %3239
%3241 = fsub float %3237, %3240
%3242 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %3241, float* %3242
%3243 = load float*, float** %13
%3244 = getelementptr inbounds float, float* %3243, i64 2
%3245 = load float, float* %3244
%3246 = load float*, float** %10
%3247 = getelementptr inbounds float, float* %3246, i64 2
%3248 = load float, float* %3247
%3249 = fsub float %3245, %3248
%3250 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %3249, float* %3250
%3251 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%3252 = load float, float* %3251
%3253 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%3254 = load float, float* %3253
%3255 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%3256 = load float, float* %3255
%3257 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%3258 = load float, float* %3257
%3259 = fmul float %3256, %3258
%3260 = call float @llvm.fmuladd.f32(float %3252, float %3254, float %3259)
%3261 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%3262 = load float, float* %3261
%3263 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%3264 = load float, float* %3263
%3265 = call float @llvm.fmuladd.f32(float %3262, float %3264, float %3260)
%3266 = fcmp ogt float %3265, 0.000000e+00
br i1 %3266, label %3267, label %3268
3267: ; preds = %3142
store i32 0, i32* %7
br label %37477
3268: ; preds = %3142
store i32 1, i32* %7
br label %37477
3269: ; preds = %3013
%3270 = load float, float* %18
%3271 = fcmp olt float %3270, 0.000000e+00
br i1 %3271, label %3272, label %3525
3272: ; preds = %3269
%3273 = load float*, float** %12
%3274 = getelementptr inbounds float, float* %3273, i64 0
%3275 = load float, float* %3274
%3276 = load float*, float** %9
%3277 = getelementptr inbounds float, float* %3276, i64 0
%3278 = load float, float* %3277
%3279 = fsub float %3275, %3278
%3280 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %3279, float* %3280
%3281 = load float*, float** %12
%3282 = getelementptr inbounds float, float* %3281, i64 1
%3283 = load float, float* %3282
%3284 = load float*, float** %9
%3285 = getelementptr inbounds float, float* %3284, i64 1
%3286 = load float, float* %3285
%3287 = fsub float %3283, %3286
%3288 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %3287, float* %3288
%3289 = load float*, float** %12
%3290 = getelementptr inbounds float, float* %3289, i64 2
%3291 = load float, float* %3290
%3292 = load float*, float** %9
%3293 = getelementptr inbounds float, float* %3292, i64 2
%3294 = load float, float* %3293
%3295 = fsub float %3291, %3294
%3296 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %3295, float* %3296
%3297 = load float*, float** %10
%3298 = getelementptr inbounds float, float* %3297, i64 0
%3299 = load float, float* %3298
%3300 = load float*, float** %9
%3301 = getelementptr inbounds float, float* %3300, i64 0
%3302 = load float, float* %3301
%3303 = fsub float %3299, %3302
%3304 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %3303, float* %3304
%3305 = load float*, float** %10
%3306 = getelementptr inbounds float, float* %3305, i64 1
%3307 = load float, float* %3306
%3308 = load float*, float** %9
%3309 = getelementptr inbounds float, float* %3308, i64 1
%3310 = load float, float* %3309
%3311 = fsub float %3307, %3310
%3312 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %3311, float* %3312
%3313 = load float*, float** %10
%3314 = getelementptr inbounds float, float* %3313, i64 2
%3315 = load float, float* %3314
%3316 = load float*, float** %9
%3317 = getelementptr inbounds float, float* %3316, i64 2
%3318 = load float, float* %3317
%3319 = fsub float %3315, %3318
%3320 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %3319, float* %3320
%3321 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%3322 = load float, float* %3321
%3323 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%3324 = load float, float* %3323
%3325 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%3326 = load float, float* %3325
%3327 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%3328 = load float, float* %3327
%3329 = fmul float %3326, %3328
%3330 = fneg float %3329
%3331 = call float @llvm.fmuladd.f32(float %3322, float %3324, float %3330)
%3332 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %3331, float* %3332
%3333 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%3334 = load float, float* %3333
%3335 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%3336 = load float, float* %3335
%3337 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%3338 = load float, float* %3337
%3339 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%3340 = load float, float* %3339
%3341 = fmul float %3338, %3340
%3342 = fneg float %3341
%3343 = call float @llvm.fmuladd.f32(float %3334, float %3336, float %3342)
%3344 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %3343, float* %3344
%3345 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%3346 = load float, float* %3345
%3347 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%3348 = load float, float* %3347
%3349 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%3350 = load float, float* %3349
%3351 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%3352 = load float, float* %3351
%3353 = fmul float %3350, %3352
%3354 = fneg float %3353
%3355 = call float @llvm.fmuladd.f32(float %3346, float %3348, float %3354)
%3356 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %3355, float* %3356
%3357 = load float*, float** %11
%3358 = getelementptr inbounds float, float* %3357, i64 0
%3359 = load float, float* %3358
%3360 = load float*, float** %9
%3361 = getelementptr inbounds float, float* %3360, i64 0
%3362 = load float, float* %3361
%3363 = fsub float %3359, %3362
%3364 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %3363, float* %3364
%3365 = load float*, float** %11
%3366 = getelementptr inbounds float, float* %3365, i64 1
%3367 = load float, float* %3366
%3368 = load float*, float** %9
%3369 = getelementptr inbounds float, float* %3368, i64 1
%3370 = load float, float* %3369
%3371 = fsub float %3367, %3370
%3372 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %3371, float* %3372
%3373 = load float*, float** %11
%3374 = getelementptr inbounds float, float* %3373, i64 2
%3375 = load float, float* %3374
%3376 = load float*, float** %9
%3377 = getelementptr inbounds float, float* %3376, i64 2
%3378 = load float, float* %3377
%3379 = fsub float %3375, %3378
%3380 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %3379, float* %3380
%3381 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%3382 = load float, float* %3381
%3383 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%3384 = load float, float* %3383
%3385 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%3386 = load float, float* %3385
%3387 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%3388 = load float, float* %3387
%3389 = fmul float %3386, %3388
%3390 = call float @llvm.fmuladd.f32(float %3382, float %3384, float %3389)
%3391 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%3392 = load float, float* %3391
%3393 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%3394 = load float, float* %3393
%3395 = call float @llvm.fmuladd.f32(float %3392, float %3394, float %3390)
%3396 = fcmp ogt float %3395, 0.000000e+00
br i1 %3396, label %3397, label %3398
3397: ; preds = %3272
store i32 0, i32* %7
br label %37477
3398: ; preds = %3272
%3399 = load float*, float** %12
%3400 = getelementptr inbounds float, float* %3399, i64 0
%3401 = load float, float* %3400
%3402 = load float*, float** %10
%3403 = getelementptr inbounds float, float* %3402, i64 0
%3404 = load float, float* %3403
%3405 = fsub float %3401, %3404
%3406 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %3405, float* %3406
%3407 = load float*, float** %12
%3408 = getelementptr inbounds float, float* %3407, i64 1
%3409 = load float, float* %3408
%3410 = load float*, float** %10
%3411 = getelementptr inbounds float, float* %3410, i64 1
%3412 = load float, float* %3411
%3413 = fsub float %3409, %3412
%3414 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %3413, float* %3414
%3415 = load float*, float** %12
%3416 = getelementptr inbounds float, float* %3415, i64 2
%3417 = load float, float* %3416
%3418 = load float*, float** %10
%3419 = getelementptr inbounds float, float* %3418, i64 2
%3420 = load float, float* %3419
%3421 = fsub float %3417, %3420
%3422 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %3421, float* %3422
%3423 = load float*, float** %8
%3424 = getelementptr inbounds float, float* %3423, i64 0
%3425 = load float, float* %3424
%3426 = load float*, float** %10
%3427 = getelementptr inbounds float, float* %3426, i64 0
%3428 = load float, float* %3427
%3429 = fsub float %3425, %3428
%3430 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %3429, float* %3430
%3431 = load float*, float** %8
%3432 = getelementptr inbounds float, float* %3431, i64 1
%3433 = load float, float* %3432
%3434 = load float*, float** %10
%3435 = getelementptr inbounds float, float* %3434, i64 1
%3436 = load float, float* %3435
%3437 = fsub float %3433, %3436
%3438 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %3437, float* %3438
%3439 = load float*, float** %8
%3440 = getelementptr inbounds float, float* %3439, i64 2
%3441 = load float, float* %3440
%3442 = load float*, float** %10
%3443 = getelementptr inbounds float, float* %3442, i64 2
%3444 = load float, float* %3443
%3445 = fsub float %3441, %3444
%3446 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %3445, float* %3446
%3447 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%3448 = load float, float* %3447
%3449 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%3450 = load float, float* %3449
%3451 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%3452 = load float, float* %3451
%3453 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%3454 = load float, float* %3453
%3455 = fmul float %3452, %3454
%3456 = fneg float %3455
%3457 = call float @llvm.fmuladd.f32(float %3448, float %3450, float %3456)
%3458 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %3457, float* %3458
%3459 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%3460 = load float, float* %3459
%3461 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%3462 = load float, float* %3461
%3463 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%3464 = load float, float* %3463
%3465 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%3466 = load float, float* %3465
%3467 = fmul float %3464, %3466
%3468 = fneg float %3467
%3469 = call float @llvm.fmuladd.f32(float %3460, float %3462, float %3468)
%3470 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %3469, float* %3470
%3471 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%3472 = load float, float* %3471
%3473 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%3474 = load float, float* %3473
%3475 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%3476 = load float, float* %3475
%3477 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%3478 = load float, float* %3477
%3479 = fmul float %3476, %3478
%3480 = fneg float %3479
%3481 = call float @llvm.fmuladd.f32(float %3472, float %3474, float %3480)
%3482 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %3481, float* %3482
%3483 = load float*, float** %13
%3484 = getelementptr inbounds float, float* %3483, i64 0
%3485 = load float, float* %3484
%3486 = load float*, float** %10
%3487 = getelementptr inbounds float, float* %3486, i64 0
%3488 = load float, float* %3487
%3489 = fsub float %3485, %3488
%3490 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %3489, float* %3490
%3491 = load float*, float** %13
%3492 = getelementptr inbounds float, float* %3491, i64 1
%3493 = load float, float* %3492
%3494 = load float*, float** %10
%3495 = getelementptr inbounds float, float* %3494, i64 1
%3496 = load float, float* %3495
%3497 = fsub float %3493, %3496
%3498 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %3497, float* %3498
%3499 = load float*, float** %13
%3500 = getelementptr inbounds float, float* %3499, i64 2
%3501 = load float, float* %3500
%3502 = load float*, float** %10
%3503 = getelementptr inbounds float, float* %3502, i64 2
%3504 = load float, float* %3503
%3505 = fsub float %3501, %3504
%3506 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %3505, float* %3506
%3507 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%3508 = load float, float* %3507
%3509 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%3510 = load float, float* %3509
%3511 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%3512 = load float, float* %3511
%3513 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%3514 = load float, float* %3513
%3515 = fmul float %3512, %3514
%3516 = call float @llvm.fmuladd.f32(float %3508, float %3510, float %3515)
%3517 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%3518 = load float, float* %3517
%3519 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%3520 = load float, float* %3519
%3521 = call float @llvm.fmuladd.f32(float %3518, float %3520, float %3516)
%3522 = fcmp ogt float %3521, 0.000000e+00
br i1 %3522, label %3523, label %3524
3523: ; preds = %3398
store i32 0, i32* %7
br label %37477
3524: ; preds = %3398
store i32 1, i32* %7
br label %37477
3525: ; preds = %3269
%3526 = load float*, float** %10
%3527 = load float*, float** %8
%3528 = load float*, float** %9
%3529 = load float*, float** %11
%3530 = load float*, float** %13
%3531 = load float*, float** %12
%3532 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%3533 = getelementptr inbounds [3 x float], [3 x float]* %23, i64 0, i64 0
%3534 = call i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...) bitcast (i32 (...)* @coplanar_tri_tri3d to i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...)*)(float* %3526, float* %3527, float* %3528, float* %3529, float* %3530, float* %3531, float* %3532, float* %3533)
store i32 %3534, i32* %7
br label %37477
3535: ; preds = %450
%3536 = load float, float* %16
%3537 = fcmp ogt float %3536, 0.000000e+00
br i1 %3537, label %3538, label %6620
3538: ; preds = %3535
%3539 = load float, float* %17
%3540 = fcmp ogt float %3539, 0.000000e+00
br i1 %3540, label %3541, label %4306
3541: ; preds = %3538
%3542 = load float, float* %19
%3543 = fcmp ogt float %3542, 0.000000e+00
br i1 %3543, label %3544, label %3797
3544: ; preds = %3541
%3545 = load float*, float** %12
%3546 = getelementptr inbounds float, float* %3545, i64 0
%3547 = load float, float* %3546
%3548 = load float*, float** %8
%3549 = getelementptr inbounds float, float* %3548, i64 0
%3550 = load float, float* %3549
%3551 = fsub float %3547, %3550
%3552 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %3551, float* %3552
%3553 = load float*, float** %12
%3554 = getelementptr inbounds float, float* %3553, i64 1
%3555 = load float, float* %3554
%3556 = load float*, float** %8
%3557 = getelementptr inbounds float, float* %3556, i64 1
%3558 = load float, float* %3557
%3559 = fsub float %3555, %3558
%3560 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %3559, float* %3560
%3561 = load float*, float** %12
%3562 = getelementptr inbounds float, float* %3561, i64 2
%3563 = load float, float* %3562
%3564 = load float*, float** %8
%3565 = getelementptr inbounds float, float* %3564, i64 2
%3566 = load float, float* %3565
%3567 = fsub float %3563, %3566
%3568 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %3567, float* %3568
%3569 = load float*, float** %9
%3570 = getelementptr inbounds float, float* %3569, i64 0
%3571 = load float, float* %3570
%3572 = load float*, float** %8
%3573 = getelementptr inbounds float, float* %3572, i64 0
%3574 = load float, float* %3573
%3575 = fsub float %3571, %3574
%3576 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %3575, float* %3576
%3577 = load float*, float** %9
%3578 = getelementptr inbounds float, float* %3577, i64 1
%3579 = load float, float* %3578
%3580 = load float*, float** %8
%3581 = getelementptr inbounds float, float* %3580, i64 1
%3582 = load float, float* %3581
%3583 = fsub float %3579, %3582
%3584 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %3583, float* %3584
%3585 = load float*, float** %9
%3586 = getelementptr inbounds float, float* %3585, i64 2
%3587 = load float, float* %3586
%3588 = load float*, float** %8
%3589 = getelementptr inbounds float, float* %3588, i64 2
%3590 = load float, float* %3589
%3591 = fsub float %3587, %3590
%3592 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %3591, float* %3592
%3593 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%3594 = load float, float* %3593
%3595 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%3596 = load float, float* %3595
%3597 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%3598 = load float, float* %3597
%3599 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%3600 = load float, float* %3599
%3601 = fmul float %3598, %3600
%3602 = fneg float %3601
%3603 = call float @llvm.fmuladd.f32(float %3594, float %3596, float %3602)
%3604 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %3603, float* %3604
%3605 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%3606 = load float, float* %3605
%3607 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%3608 = load float, float* %3607
%3609 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%3610 = load float, float* %3609
%3611 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%3612 = load float, float* %3611
%3613 = fmul float %3610, %3612
%3614 = fneg float %3613
%3615 = call float @llvm.fmuladd.f32(float %3606, float %3608, float %3614)
%3616 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %3615, float* %3616
%3617 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%3618 = load float, float* %3617
%3619 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%3620 = load float, float* %3619
%3621 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%3622 = load float, float* %3621
%3623 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%3624 = load float, float* %3623
%3625 = fmul float %3622, %3624
%3626 = fneg float %3625
%3627 = call float @llvm.fmuladd.f32(float %3618, float %3620, float %3626)
%3628 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %3627, float* %3628
%3629 = load float*, float** %11
%3630 = getelementptr inbounds float, float* %3629, i64 0
%3631 = load float, float* %3630
%3632 = load float*, float** %8
%3633 = getelementptr inbounds float, float* %3632, i64 0
%3634 = load float, float* %3633
%3635 = fsub float %3631, %3634
%3636 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %3635, float* %3636
%3637 = load float*, float** %11
%3638 = getelementptr inbounds float, float* %3637, i64 1
%3639 = load float, float* %3638
%3640 = load float*, float** %8
%3641 = getelementptr inbounds float, float* %3640, i64 1
%3642 = load float, float* %3641
%3643 = fsub float %3639, %3642
%3644 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %3643, float* %3644
%3645 = load float*, float** %11
%3646 = getelementptr inbounds float, float* %3645, i64 2
%3647 = load float, float* %3646
%3648 = load float*, float** %8
%3649 = getelementptr inbounds float, float* %3648, i64 2
%3650 = load float, float* %3649
%3651 = fsub float %3647, %3650
%3652 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %3651, float* %3652
%3653 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%3654 = load float, float* %3653
%3655 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%3656 = load float, float* %3655
%3657 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%3658 = load float, float* %3657
%3659 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%3660 = load float, float* %3659
%3661 = fmul float %3658, %3660
%3662 = call float @llvm.fmuladd.f32(float %3654, float %3656, float %3661)
%3663 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%3664 = load float, float* %3663
%3665 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%3666 = load float, float* %3665
%3667 = call float @llvm.fmuladd.f32(float %3664, float %3666, float %3662)
%3668 = fcmp ogt float %3667, 0.000000e+00
br i1 %3668, label %3669, label %3670
3669: ; preds = %3544
store i32 0, i32* %7
br label %37477
3670: ; preds = %3544
%3671 = load float*, float** %12
%3672 = getelementptr inbounds float, float* %3671, i64 0
%3673 = load float, float* %3672
%3674 = load float*, float** %9
%3675 = getelementptr inbounds float, float* %3674, i64 0
%3676 = load float, float* %3675
%3677 = fsub float %3673, %3676
%3678 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %3677, float* %3678
%3679 = load float*, float** %12
%3680 = getelementptr inbounds float, float* %3679, i64 1
%3681 = load float, float* %3680
%3682 = load float*, float** %9
%3683 = getelementptr inbounds float, float* %3682, i64 1
%3684 = load float, float* %3683
%3685 = fsub float %3681, %3684
%3686 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %3685, float* %3686
%3687 = load float*, float** %12
%3688 = getelementptr inbounds float, float* %3687, i64 2
%3689 = load float, float* %3688
%3690 = load float*, float** %9
%3691 = getelementptr inbounds float, float* %3690, i64 2
%3692 = load float, float* %3691
%3693 = fsub float %3689, %3692
%3694 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %3693, float* %3694
%3695 = load float*, float** %10
%3696 = getelementptr inbounds float, float* %3695, i64 0
%3697 = load float, float* %3696
%3698 = load float*, float** %9
%3699 = getelementptr inbounds float, float* %3698, i64 0
%3700 = load float, float* %3699
%3701 = fsub float %3697, %3700
%3702 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %3701, float* %3702
%3703 = load float*, float** %10
%3704 = getelementptr inbounds float, float* %3703, i64 1
%3705 = load float, float* %3704
%3706 = load float*, float** %9
%3707 = getelementptr inbounds float, float* %3706, i64 1
%3708 = load float, float* %3707
%3709 = fsub float %3705, %3708
%3710 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %3709, float* %3710
%3711 = load float*, float** %10
%3712 = getelementptr inbounds float, float* %3711, i64 2
%3713 = load float, float* %3712
%3714 = load float*, float** %9
%3715 = getelementptr inbounds float, float* %3714, i64 2
%3716 = load float, float* %3715
%3717 = fsub float %3713, %3716
%3718 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %3717, float* %3718
%3719 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%3720 = load float, float* %3719
%3721 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%3722 = load float, float* %3721
%3723 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%3724 = load float, float* %3723
%3725 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%3726 = load float, float* %3725
%3727 = fmul float %3724, %3726
%3728 = fneg float %3727
%3729 = call float @llvm.fmuladd.f32(float %3720, float %3722, float %3728)
%3730 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %3729, float* %3730
%3731 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%3732 = load float, float* %3731
%3733 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%3734 = load float, float* %3733
%3735 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%3736 = load float, float* %3735
%3737 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%3738 = load float, float* %3737
%3739 = fmul float %3736, %3738
%3740 = fneg float %3739
%3741 = call float @llvm.fmuladd.f32(float %3732, float %3734, float %3740)
%3742 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %3741, float* %3742
%3743 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%3744 = load float, float* %3743
%3745 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%3746 = load float, float* %3745
%3747 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%3748 = load float, float* %3747
%3749 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%3750 = load float, float* %3749
%3751 = fmul float %3748, %3750
%3752 = fneg float %3751
%3753 = call float @llvm.fmuladd.f32(float %3744, float %3746, float %3752)
%3754 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %3753, float* %3754
%3755 = load float*, float** %13
%3756 = getelementptr inbounds float, float* %3755, i64 0
%3757 = load float, float* %3756
%3758 = load float*, float** %9
%3759 = getelementptr inbounds float, float* %3758, i64 0
%3760 = load float, float* %3759
%3761 = fsub float %3757, %3760
%3762 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %3761, float* %3762
%3763 = load float*, float** %13
%3764 = getelementptr inbounds float, float* %3763, i64 1
%3765 = load float, float* %3764
%3766 = load float*, float** %9
%3767 = getelementptr inbounds float, float* %3766, i64 1
%3768 = load float, float* %3767
%3769 = fsub float %3765, %3768
%3770 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %3769, float* %3770
%3771 = load float*, float** %13
%3772 = getelementptr inbounds float, float* %3771, i64 2
%3773 = load float, float* %3772
%3774 = load float*, float** %9
%3775 = getelementptr inbounds float, float* %3774, i64 2
%3776 = load float, float* %3775
%3777 = fsub float %3773, %3776
%3778 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %3777, float* %3778
%3779 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%3780 = load float, float* %3779
%3781 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%3782 = load float, float* %3781
%3783 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%3784 = load float, float* %3783
%3785 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%3786 = load float, float* %3785
%3787 = fmul float %3784, %3786
%3788 = call float @llvm.fmuladd.f32(float %3780, float %3782, float %3787)
%3789 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%3790 = load float, float* %3789
%3791 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%3792 = load float, float* %3791
%3793 = call float @llvm.fmuladd.f32(float %3790, float %3792, float %3788)
%3794 = fcmp ogt float %3793, 0.000000e+00
br i1 %3794, label %3795, label %3796
3795: ; preds = %3670
store i32 0, i32* %7
br label %37477
3796: ; preds = %3670
store i32 1, i32* %7
br label %37477
3797: ; preds = %3541
%3798 = load float, float* %18
%3799 = fcmp ogt float %3798, 0.000000e+00
br i1 %3799, label %3800, label %4053
3800: ; preds = %3797
%3801 = load float*, float** %13
%3802 = getelementptr inbounds float, float* %3801, i64 0
%3803 = load float, float* %3802
%3804 = load float*, float** %8
%3805 = getelementptr inbounds float, float* %3804, i64 0
%3806 = load float, float* %3805
%3807 = fsub float %3803, %3806
%3808 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %3807, float* %3808
%3809 = load float*, float** %13
%3810 = getelementptr inbounds float, float* %3809, i64 1
%3811 = load float, float* %3810
%3812 = load float*, float** %8
%3813 = getelementptr inbounds float, float* %3812, i64 1
%3814 = load float, float* %3813
%3815 = fsub float %3811, %3814
%3816 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %3815, float* %3816
%3817 = load float*, float** %13
%3818 = getelementptr inbounds float, float* %3817, i64 2
%3819 = load float, float* %3818
%3820 = load float*, float** %8
%3821 = getelementptr inbounds float, float* %3820, i64 2
%3822 = load float, float* %3821
%3823 = fsub float %3819, %3822
%3824 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %3823, float* %3824
%3825 = load float*, float** %9
%3826 = getelementptr inbounds float, float* %3825, i64 0
%3827 = load float, float* %3826
%3828 = load float*, float** %8
%3829 = getelementptr inbounds float, float* %3828, i64 0
%3830 = load float, float* %3829
%3831 = fsub float %3827, %3830
%3832 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %3831, float* %3832
%3833 = load float*, float** %9
%3834 = getelementptr inbounds float, float* %3833, i64 1
%3835 = load float, float* %3834
%3836 = load float*, float** %8
%3837 = getelementptr inbounds float, float* %3836, i64 1
%3838 = load float, float* %3837
%3839 = fsub float %3835, %3838
%3840 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %3839, float* %3840
%3841 = load float*, float** %9
%3842 = getelementptr inbounds float, float* %3841, i64 2
%3843 = load float, float* %3842
%3844 = load float*, float** %8
%3845 = getelementptr inbounds float, float* %3844, i64 2
%3846 = load float, float* %3845
%3847 = fsub float %3843, %3846
%3848 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %3847, float* %3848
%3849 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%3850 = load float, float* %3849
%3851 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%3852 = load float, float* %3851
%3853 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%3854 = load float, float* %3853
%3855 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%3856 = load float, float* %3855
%3857 = fmul float %3854, %3856
%3858 = fneg float %3857
%3859 = call float @llvm.fmuladd.f32(float %3850, float %3852, float %3858)
%3860 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %3859, float* %3860
%3861 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%3862 = load float, float* %3861
%3863 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%3864 = load float, float* %3863
%3865 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%3866 = load float, float* %3865
%3867 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%3868 = load float, float* %3867
%3869 = fmul float %3866, %3868
%3870 = fneg float %3869
%3871 = call float @llvm.fmuladd.f32(float %3862, float %3864, float %3870)
%3872 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %3871, float* %3872
%3873 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%3874 = load float, float* %3873
%3875 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%3876 = load float, float* %3875
%3877 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%3878 = load float, float* %3877
%3879 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%3880 = load float, float* %3879
%3881 = fmul float %3878, %3880
%3882 = fneg float %3881
%3883 = call float @llvm.fmuladd.f32(float %3874, float %3876, float %3882)
%3884 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %3883, float* %3884
%3885 = load float*, float** %12
%3886 = getelementptr inbounds float, float* %3885, i64 0
%3887 = load float, float* %3886
%3888 = load float*, float** %8
%3889 = getelementptr inbounds float, float* %3888, i64 0
%3890 = load float, float* %3889
%3891 = fsub float %3887, %3890
%3892 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %3891, float* %3892
%3893 = load float*, float** %12
%3894 = getelementptr inbounds float, float* %3893, i64 1
%3895 = load float, float* %3894
%3896 = load float*, float** %8
%3897 = getelementptr inbounds float, float* %3896, i64 1
%3898 = load float, float* %3897
%3899 = fsub float %3895, %3898
%3900 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %3899, float* %3900
%3901 = load float*, float** %12
%3902 = getelementptr inbounds float, float* %3901, i64 2
%3903 = load float, float* %3902
%3904 = load float*, float** %8
%3905 = getelementptr inbounds float, float* %3904, i64 2
%3906 = load float, float* %3905
%3907 = fsub float %3903, %3906
%3908 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %3907, float* %3908
%3909 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%3910 = load float, float* %3909
%3911 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%3912 = load float, float* %3911
%3913 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%3914 = load float, float* %3913
%3915 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%3916 = load float, float* %3915
%3917 = fmul float %3914, %3916
%3918 = call float @llvm.fmuladd.f32(float %3910, float %3912, float %3917)
%3919 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%3920 = load float, float* %3919
%3921 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%3922 = load float, float* %3921
%3923 = call float @llvm.fmuladd.f32(float %3920, float %3922, float %3918)
%3924 = fcmp ogt float %3923, 0.000000e+00
br i1 %3924, label %3925, label %3926
3925: ; preds = %3800
store i32 0, i32* %7
br label %37477
3926: ; preds = %3800
%3927 = load float*, float** %13
%3928 = getelementptr inbounds float, float* %3927, i64 0
%3929 = load float, float* %3928
%3930 = load float*, float** %9
%3931 = getelementptr inbounds float, float* %3930, i64 0
%3932 = load float, float* %3931
%3933 = fsub float %3929, %3932
%3934 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %3933, float* %3934
%3935 = load float*, float** %13
%3936 = getelementptr inbounds float, float* %3935, i64 1
%3937 = load float, float* %3936
%3938 = load float*, float** %9
%3939 = getelementptr inbounds float, float* %3938, i64 1
%3940 = load float, float* %3939
%3941 = fsub float %3937, %3940
%3942 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %3941, float* %3942
%3943 = load float*, float** %13
%3944 = getelementptr inbounds float, float* %3943, i64 2
%3945 = load float, float* %3944
%3946 = load float*, float** %9
%3947 = getelementptr inbounds float, float* %3946, i64 2
%3948 = load float, float* %3947
%3949 = fsub float %3945, %3948
%3950 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %3949, float* %3950
%3951 = load float*, float** %10
%3952 = getelementptr inbounds float, float* %3951, i64 0
%3953 = load float, float* %3952
%3954 = load float*, float** %9
%3955 = getelementptr inbounds float, float* %3954, i64 0
%3956 = load float, float* %3955
%3957 = fsub float %3953, %3956
%3958 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %3957, float* %3958
%3959 = load float*, float** %10
%3960 = getelementptr inbounds float, float* %3959, i64 1
%3961 = load float, float* %3960
%3962 = load float*, float** %9
%3963 = getelementptr inbounds float, float* %3962, i64 1
%3964 = load float, float* %3963
%3965 = fsub float %3961, %3964
%3966 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %3965, float* %3966
%3967 = load float*, float** %10
%3968 = getelementptr inbounds float, float* %3967, i64 2
%3969 = load float, float* %3968
%3970 = load float*, float** %9
%3971 = getelementptr inbounds float, float* %3970, i64 2
%3972 = load float, float* %3971
%3973 = fsub float %3969, %3972
%3974 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %3973, float* %3974
%3975 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%3976 = load float, float* %3975
%3977 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%3978 = load float, float* %3977
%3979 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%3980 = load float, float* %3979
%3981 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%3982 = load float, float* %3981
%3983 = fmul float %3980, %3982
%3984 = fneg float %3983
%3985 = call float @llvm.fmuladd.f32(float %3976, float %3978, float %3984)
%3986 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %3985, float* %3986
%3987 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%3988 = load float, float* %3987
%3989 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%3990 = load float, float* %3989
%3991 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%3992 = load float, float* %3991
%3993 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%3994 = load float, float* %3993
%3995 = fmul float %3992, %3994
%3996 = fneg float %3995
%3997 = call float @llvm.fmuladd.f32(float %3988, float %3990, float %3996)
%3998 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %3997, float* %3998
%3999 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%4000 = load float, float* %3999
%4001 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%4002 = load float, float* %4001
%4003 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%4004 = load float, float* %4003
%4005 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%4006 = load float, float* %4005
%4007 = fmul float %4004, %4006
%4008 = fneg float %4007
%4009 = call float @llvm.fmuladd.f32(float %4000, float %4002, float %4008)
%4010 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %4009, float* %4010
%4011 = load float*, float** %11
%4012 = getelementptr inbounds float, float* %4011, i64 0
%4013 = load float, float* %4012
%4014 = load float*, float** %9
%4015 = getelementptr inbounds float, float* %4014, i64 0
%4016 = load float, float* %4015
%4017 = fsub float %4013, %4016
%4018 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %4017, float* %4018
%4019 = load float*, float** %11
%4020 = getelementptr inbounds float, float* %4019, i64 1
%4021 = load float, float* %4020
%4022 = load float*, float** %9
%4023 = getelementptr inbounds float, float* %4022, i64 1
%4024 = load float, float* %4023
%4025 = fsub float %4021, %4024
%4026 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %4025, float* %4026
%4027 = load float*, float** %11
%4028 = getelementptr inbounds float, float* %4027, i64 2
%4029 = load float, float* %4028
%4030 = load float*, float** %9
%4031 = getelementptr inbounds float, float* %4030, i64 2
%4032 = load float, float* %4031
%4033 = fsub float %4029, %4032
%4034 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %4033, float* %4034
%4035 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%4036 = load float, float* %4035
%4037 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%4038 = load float, float* %4037
%4039 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%4040 = load float, float* %4039
%4041 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%4042 = load float, float* %4041
%4043 = fmul float %4040, %4042
%4044 = call float @llvm.fmuladd.f32(float %4036, float %4038, float %4043)
%4045 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%4046 = load float, float* %4045
%4047 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%4048 = load float, float* %4047
%4049 = call float @llvm.fmuladd.f32(float %4046, float %4048, float %4044)
%4050 = fcmp ogt float %4049, 0.000000e+00
br i1 %4050, label %4051, label %4052
4051: ; preds = %3926
store i32 0, i32* %7
br label %37477
4052: ; preds = %3926
store i32 1, i32* %7
br label %37477
4053: ; preds = %3797
%4054 = load float*, float** %11
%4055 = getelementptr inbounds float, float* %4054, i64 0
%4056 = load float, float* %4055
%4057 = load float*, float** %10
%4058 = getelementptr inbounds float, float* %4057, i64 0
%4059 = load float, float* %4058
%4060 = fsub float %4056, %4059
%4061 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %4060, float* %4061
%4062 = load float*, float** %11
%4063 = getelementptr inbounds float, float* %4062, i64 1
%4064 = load float, float* %4063
%4065 = load float*, float** %10
%4066 = getelementptr inbounds float, float* %4065, i64 1
%4067 = load float, float* %4066
%4068 = fsub float %4064, %4067
%4069 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %4068, float* %4069
%4070 = load float*, float** %11
%4071 = getelementptr inbounds float, float* %4070, i64 2
%4072 = load float, float* %4071
%4073 = load float*, float** %10
%4074 = getelementptr inbounds float, float* %4073, i64 2
%4075 = load float, float* %4074
%4076 = fsub float %4072, %4075
%4077 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %4076, float* %4077
%4078 = load float*, float** %9
%4079 = getelementptr inbounds float, float* %4078, i64 0
%4080 = load float, float* %4079
%4081 = load float*, float** %10
%4082 = getelementptr inbounds float, float* %4081, i64 0
%4083 = load float, float* %4082
%4084 = fsub float %4080, %4083
%4085 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %4084, float* %4085
%4086 = load float*, float** %9
%4087 = getelementptr inbounds float, float* %4086, i64 1
%4088 = load float, float* %4087
%4089 = load float*, float** %10
%4090 = getelementptr inbounds float, float* %4089, i64 1
%4091 = load float, float* %4090
%4092 = fsub float %4088, %4091
%4093 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %4092, float* %4093
%4094 = load float*, float** %9
%4095 = getelementptr inbounds float, float* %4094, i64 2
%4096 = load float, float* %4095
%4097 = load float*, float** %10
%4098 = getelementptr inbounds float, float* %4097, i64 2
%4099 = load float, float* %4098
%4100 = fsub float %4096, %4099
%4101 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %4100, float* %4101
%4102 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%4103 = load float, float* %4102
%4104 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%4105 = load float, float* %4104
%4106 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%4107 = load float, float* %4106
%4108 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%4109 = load float, float* %4108
%4110 = fmul float %4107, %4109
%4111 = fneg float %4110
%4112 = call float @llvm.fmuladd.f32(float %4103, float %4105, float %4111)
%4113 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %4112, float* %4113
%4114 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%4115 = load float, float* %4114
%4116 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%4117 = load float, float* %4116
%4118 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%4119 = load float, float* %4118
%4120 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%4121 = load float, float* %4120
%4122 = fmul float %4119, %4121
%4123 = fneg float %4122
%4124 = call float @llvm.fmuladd.f32(float %4115, float %4117, float %4123)
%4125 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %4124, float* %4125
%4126 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%4127 = load float, float* %4126
%4128 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%4129 = load float, float* %4128
%4130 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%4131 = load float, float* %4130
%4132 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%4133 = load float, float* %4132
%4134 = fmul float %4131, %4133
%4135 = fneg float %4134
%4136 = call float @llvm.fmuladd.f32(float %4127, float %4129, float %4135)
%4137 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %4136, float* %4137
%4138 = load float*, float** %13
%4139 = getelementptr inbounds float, float* %4138, i64 0
%4140 = load float, float* %4139
%4141 = load float*, float** %10
%4142 = getelementptr inbounds float, float* %4141, i64 0
%4143 = load float, float* %4142
%4144 = fsub float %4140, %4143
%4145 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %4144, float* %4145
%4146 = load float*, float** %13
%4147 = getelementptr inbounds float, float* %4146, i64 1
%4148 = load float, float* %4147
%4149 = load float*, float** %10
%4150 = getelementptr inbounds float, float* %4149, i64 1
%4151 = load float, float* %4150
%4152 = fsub float %4148, %4151
%4153 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %4152, float* %4153
%4154 = load float*, float** %13
%4155 = getelementptr inbounds float, float* %4154, i64 2
%4156 = load float, float* %4155
%4157 = load float*, float** %10
%4158 = getelementptr inbounds float, float* %4157, i64 2
%4159 = load float, float* %4158
%4160 = fsub float %4156, %4159
%4161 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %4160, float* %4161
%4162 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%4163 = load float, float* %4162
%4164 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%4165 = load float, float* %4164
%4166 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%4167 = load float, float* %4166
%4168 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%4169 = load float, float* %4168
%4170 = fmul float %4167, %4169
%4171 = call float @llvm.fmuladd.f32(float %4163, float %4165, float %4170)
%4172 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%4173 = load float, float* %4172
%4174 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%4175 = load float, float* %4174
%4176 = call float @llvm.fmuladd.f32(float %4173, float %4175, float %4171)
%4177 = fcmp ogt float %4176, 0.000000e+00
br i1 %4177, label %4178, label %4179
4178: ; preds = %4053
store i32 0, i32* %7
br label %37477
4179: ; preds = %4053
%4180 = load float*, float** %11
%4181 = getelementptr inbounds float, float* %4180, i64 0
%4182 = load float, float* %4181
%4183 = load float*, float** %9
%4184 = getelementptr inbounds float, float* %4183, i64 0
%4185 = load float, float* %4184
%4186 = fsub float %4182, %4185
%4187 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %4186, float* %4187
%4188 = load float*, float** %11
%4189 = getelementptr inbounds float, float* %4188, i64 1
%4190 = load float, float* %4189
%4191 = load float*, float** %9
%4192 = getelementptr inbounds float, float* %4191, i64 1
%4193 = load float, float* %4192
%4194 = fsub float %4190, %4193
%4195 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %4194, float* %4195
%4196 = load float*, float** %11
%4197 = getelementptr inbounds float, float* %4196, i64 2
%4198 = load float, float* %4197
%4199 = load float*, float** %9
%4200 = getelementptr inbounds float, float* %4199, i64 2
%4201 = load float, float* %4200
%4202 = fsub float %4198, %4201
%4203 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %4202, float* %4203
%4204 = load float*, float** %8
%4205 = getelementptr inbounds float, float* %4204, i64 0
%4206 = load float, float* %4205
%4207 = load float*, float** %9
%4208 = getelementptr inbounds float, float* %4207, i64 0
%4209 = load float, float* %4208
%4210 = fsub float %4206, %4209
%4211 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %4210, float* %4211
%4212 = load float*, float** %8
%4213 = getelementptr inbounds float, float* %4212, i64 1
%4214 = load float, float* %4213
%4215 = load float*, float** %9
%4216 = getelementptr inbounds float, float* %4215, i64 1
%4217 = load float, float* %4216
%4218 = fsub float %4214, %4217
%4219 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %4218, float* %4219
%4220 = load float*, float** %8
%4221 = getelementptr inbounds float, float* %4220, i64 2
%4222 = load float, float* %4221
%4223 = load float*, float** %9
%4224 = getelementptr inbounds float, float* %4223, i64 2
%4225 = load float, float* %4224
%4226 = fsub float %4222, %4225
%4227 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %4226, float* %4227
%4228 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%4229 = load float, float* %4228
%4230 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%4231 = load float, float* %4230
%4232 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%4233 = load float, float* %4232
%4234 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%4235 = load float, float* %4234
%4236 = fmul float %4233, %4235
%4237 = fneg float %4236
%4238 = call float @llvm.fmuladd.f32(float %4229, float %4231, float %4237)
%4239 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %4238, float* %4239
%4240 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%4241 = load float, float* %4240
%4242 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%4243 = load float, float* %4242
%4244 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%4245 = load float, float* %4244
%4246 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%4247 = load float, float* %4246
%4248 = fmul float %4245, %4247
%4249 = fneg float %4248
%4250 = call float @llvm.fmuladd.f32(float %4241, float %4243, float %4249)
%4251 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %4250, float* %4251
%4252 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%4253 = load float, float* %4252
%4254 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%4255 = load float, float* %4254
%4256 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%4257 = load float, float* %4256
%4258 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%4259 = load float, float* %4258
%4260 = fmul float %4257, %4259
%4261 = fneg float %4260
%4262 = call float @llvm.fmuladd.f32(float %4253, float %4255, float %4261)
%4263 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %4262, float* %4263
%4264 = load float*, float** %12
%4265 = getelementptr inbounds float, float* %4264, i64 0
%4266 = load float, float* %4265
%4267 = load float*, float** %9
%4268 = getelementptr inbounds float, float* %4267, i64 0
%4269 = load float, float* %4268
%4270 = fsub float %4266, %4269
%4271 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %4270, float* %4271
%4272 = load float*, float** %12
%4273 = getelementptr inbounds float, float* %4272, i64 1
%4274 = load float, float* %4273
%4275 = load float*, float** %9
%4276 = getelementptr inbounds float, float* %4275, i64 1
%4277 = load float, float* %4276
%4278 = fsub float %4274, %4277
%4279 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %4278, float* %4279
%4280 = load float*, float** %12
%4281 = getelementptr inbounds float, float* %4280, i64 2
%4282 = load float, float* %4281
%4283 = load float*, float** %9
%4284 = getelementptr inbounds float, float* %4283, i64 2
%4285 = load float, float* %4284
%4286 = fsub float %4282, %4285
%4287 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %4286, float* %4287
%4288 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%4289 = load float, float* %4288
%4290 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%4291 = load float, float* %4290
%4292 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%4293 = load float, float* %4292
%4294 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%4295 = load float, float* %4294
%4296 = fmul float %4293, %4295
%4297 = call float @llvm.fmuladd.f32(float %4289, float %4291, float %4296)
%4298 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%4299 = load float, float* %4298
%4300 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%4301 = load float, float* %4300
%4302 = call float @llvm.fmuladd.f32(float %4299, float %4301, float %4297)
%4303 = fcmp ogt float %4302, 0.000000e+00
br i1 %4303, label %4304, label %4305
4304: ; preds = %4179
store i32 0, i32* %7
br label %37477
4305: ; preds = %4179
store i32 1, i32* %7
br label %37477
4306: ; preds = %3538
%4307 = load float, float* %17
%4308 = fcmp olt float %4307, 0.000000e+00
br i1 %4308, label %4309, label %5074
4309: ; preds = %4306
%4310 = load float, float* %19
%4311 = fcmp olt float %4310, 0.000000e+00
br i1 %4311, label %4312, label %4565
4312: ; preds = %4309
%4313 = load float*, float** %12
%4314 = getelementptr inbounds float, float* %4313, i64 0
%4315 = load float, float* %4314
%4316 = load float*, float** %10
%4317 = getelementptr inbounds float, float* %4316, i64 0
%4318 = load float, float* %4317
%4319 = fsub float %4315, %4318
%4320 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %4319, float* %4320
%4321 = load float*, float** %12
%4322 = getelementptr inbounds float, float* %4321, i64 1
%4323 = load float, float* %4322
%4324 = load float*, float** %10
%4325 = getelementptr inbounds float, float* %4324, i64 1
%4326 = load float, float* %4325
%4327 = fsub float %4323, %4326
%4328 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %4327, float* %4328
%4329 = load float*, float** %12
%4330 = getelementptr inbounds float, float* %4329, i64 2
%4331 = load float, float* %4330
%4332 = load float*, float** %10
%4333 = getelementptr inbounds float, float* %4332, i64 2
%4334 = load float, float* %4333
%4335 = fsub float %4331, %4334
%4336 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %4335, float* %4336
%4337 = load float*, float** %9
%4338 = getelementptr inbounds float, float* %4337, i64 0
%4339 = load float, float* %4338
%4340 = load float*, float** %10
%4341 = getelementptr inbounds float, float* %4340, i64 0
%4342 = load float, float* %4341
%4343 = fsub float %4339, %4342
%4344 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %4343, float* %4344
%4345 = load float*, float** %9
%4346 = getelementptr inbounds float, float* %4345, i64 1
%4347 = load float, float* %4346
%4348 = load float*, float** %10
%4349 = getelementptr inbounds float, float* %4348, i64 1
%4350 = load float, float* %4349
%4351 = fsub float %4347, %4350
%4352 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %4351, float* %4352
%4353 = load float*, float** %9
%4354 = getelementptr inbounds float, float* %4353, i64 2
%4355 = load float, float* %4354
%4356 = load float*, float** %10
%4357 = getelementptr inbounds float, float* %4356, i64 2
%4358 = load float, float* %4357
%4359 = fsub float %4355, %4358
%4360 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %4359, float* %4360
%4361 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%4362 = load float, float* %4361
%4363 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%4364 = load float, float* %4363
%4365 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%4366 = load float, float* %4365
%4367 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%4368 = load float, float* %4367
%4369 = fmul float %4366, %4368
%4370 = fneg float %4369
%4371 = call float @llvm.fmuladd.f32(float %4362, float %4364, float %4370)
%4372 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %4371, float* %4372
%4373 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%4374 = load float, float* %4373
%4375 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%4376 = load float, float* %4375
%4377 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%4378 = load float, float* %4377
%4379 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%4380 = load float, float* %4379
%4381 = fmul float %4378, %4380
%4382 = fneg float %4381
%4383 = call float @llvm.fmuladd.f32(float %4374, float %4376, float %4382)
%4384 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %4383, float* %4384
%4385 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%4386 = load float, float* %4385
%4387 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%4388 = load float, float* %4387
%4389 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%4390 = load float, float* %4389
%4391 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%4392 = load float, float* %4391
%4393 = fmul float %4390, %4392
%4394 = fneg float %4393
%4395 = call float @llvm.fmuladd.f32(float %4386, float %4388, float %4394)
%4396 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %4395, float* %4396
%4397 = load float*, float** %11
%4398 = getelementptr inbounds float, float* %4397, i64 0
%4399 = load float, float* %4398
%4400 = load float*, float** %10
%4401 = getelementptr inbounds float, float* %4400, i64 0
%4402 = load float, float* %4401
%4403 = fsub float %4399, %4402
%4404 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %4403, float* %4404
%4405 = load float*, float** %11
%4406 = getelementptr inbounds float, float* %4405, i64 1
%4407 = load float, float* %4406
%4408 = load float*, float** %10
%4409 = getelementptr inbounds float, float* %4408, i64 1
%4410 = load float, float* %4409
%4411 = fsub float %4407, %4410
%4412 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %4411, float* %4412
%4413 = load float*, float** %11
%4414 = getelementptr inbounds float, float* %4413, i64 2
%4415 = load float, float* %4414
%4416 = load float*, float** %10
%4417 = getelementptr inbounds float, float* %4416, i64 2
%4418 = load float, float* %4417
%4419 = fsub float %4415, %4418
%4420 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %4419, float* %4420
%4421 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%4422 = load float, float* %4421
%4423 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%4424 = load float, float* %4423
%4425 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%4426 = load float, float* %4425
%4427 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%4428 = load float, float* %4427
%4429 = fmul float %4426, %4428
%4430 = call float @llvm.fmuladd.f32(float %4422, float %4424, float %4429)
%4431 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%4432 = load float, float* %4431
%4433 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%4434 = load float, float* %4433
%4435 = call float @llvm.fmuladd.f32(float %4432, float %4434, float %4430)
%4436 = fcmp ogt float %4435, 0.000000e+00
br i1 %4436, label %4437, label %4438
4437: ; preds = %4312
store i32 0, i32* %7
br label %37477
4438: ; preds = %4312
%4439 = load float*, float** %12
%4440 = getelementptr inbounds float, float* %4439, i64 0
%4441 = load float, float* %4440
%4442 = load float*, float** %9
%4443 = getelementptr inbounds float, float* %4442, i64 0
%4444 = load float, float* %4443
%4445 = fsub float %4441, %4444
%4446 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %4445, float* %4446
%4447 = load float*, float** %12
%4448 = getelementptr inbounds float, float* %4447, i64 1
%4449 = load float, float* %4448
%4450 = load float*, float** %9
%4451 = getelementptr inbounds float, float* %4450, i64 1
%4452 = load float, float* %4451
%4453 = fsub float %4449, %4452
%4454 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %4453, float* %4454
%4455 = load float*, float** %12
%4456 = getelementptr inbounds float, float* %4455, i64 2
%4457 = load float, float* %4456
%4458 = load float*, float** %9
%4459 = getelementptr inbounds float, float* %4458, i64 2
%4460 = load float, float* %4459
%4461 = fsub float %4457, %4460
%4462 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %4461, float* %4462
%4463 = load float*, float** %8
%4464 = getelementptr inbounds float, float* %4463, i64 0
%4465 = load float, float* %4464
%4466 = load float*, float** %9
%4467 = getelementptr inbounds float, float* %4466, i64 0
%4468 = load float, float* %4467
%4469 = fsub float %4465, %4468
%4470 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %4469, float* %4470
%4471 = load float*, float** %8
%4472 = getelementptr inbounds float, float* %4471, i64 1
%4473 = load float, float* %4472
%4474 = load float*, float** %9
%4475 = getelementptr inbounds float, float* %4474, i64 1
%4476 = load float, float* %4475
%4477 = fsub float %4473, %4476
%4478 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %4477, float* %4478
%4479 = load float*, float** %8
%4480 = getelementptr inbounds float, float* %4479, i64 2
%4481 = load float, float* %4480
%4482 = load float*, float** %9
%4483 = getelementptr inbounds float, float* %4482, i64 2
%4484 = load float, float* %4483
%4485 = fsub float %4481, %4484
%4486 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %4485, float* %4486
%4487 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%4488 = load float, float* %4487
%4489 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%4490 = load float, float* %4489
%4491 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%4492 = load float, float* %4491
%4493 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%4494 = load float, float* %4493
%4495 = fmul float %4492, %4494
%4496 = fneg float %4495
%4497 = call float @llvm.fmuladd.f32(float %4488, float %4490, float %4496)
%4498 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %4497, float* %4498
%4499 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%4500 = load float, float* %4499
%4501 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%4502 = load float, float* %4501
%4503 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%4504 = load float, float* %4503
%4505 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%4506 = load float, float* %4505
%4507 = fmul float %4504, %4506
%4508 = fneg float %4507
%4509 = call float @llvm.fmuladd.f32(float %4500, float %4502, float %4508)
%4510 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %4509, float* %4510
%4511 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%4512 = load float, float* %4511
%4513 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%4514 = load float, float* %4513
%4515 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%4516 = load float, float* %4515
%4517 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%4518 = load float, float* %4517
%4519 = fmul float %4516, %4518
%4520 = fneg float %4519
%4521 = call float @llvm.fmuladd.f32(float %4512, float %4514, float %4520)
%4522 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %4521, float* %4522
%4523 = load float*, float** %13
%4524 = getelementptr inbounds float, float* %4523, i64 0
%4525 = load float, float* %4524
%4526 = load float*, float** %9
%4527 = getelementptr inbounds float, float* %4526, i64 0
%4528 = load float, float* %4527
%4529 = fsub float %4525, %4528
%4530 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %4529, float* %4530
%4531 = load float*, float** %13
%4532 = getelementptr inbounds float, float* %4531, i64 1
%4533 = load float, float* %4532
%4534 = load float*, float** %9
%4535 = getelementptr inbounds float, float* %4534, i64 1
%4536 = load float, float* %4535
%4537 = fsub float %4533, %4536
%4538 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %4537, float* %4538
%4539 = load float*, float** %13
%4540 = getelementptr inbounds float, float* %4539, i64 2
%4541 = load float, float* %4540
%4542 = load float*, float** %9
%4543 = getelementptr inbounds float, float* %4542, i64 2
%4544 = load float, float* %4543
%4545 = fsub float %4541, %4544
%4546 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %4545, float* %4546
%4547 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%4548 = load float, float* %4547
%4549 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%4550 = load float, float* %4549
%4551 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%4552 = load float, float* %4551
%4553 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%4554 = load float, float* %4553
%4555 = fmul float %4552, %4554
%4556 = call float @llvm.fmuladd.f32(float %4548, float %4550, float %4555)
%4557 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%4558 = load float, float* %4557
%4559 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%4560 = load float, float* %4559
%4561 = call float @llvm.fmuladd.f32(float %4558, float %4560, float %4556)
%4562 = fcmp ogt float %4561, 0.000000e+00
br i1 %4562, label %4563, label %4564
4563: ; preds = %4438
store i32 0, i32* %7
br label %37477
4564: ; preds = %4438
store i32 1, i32* %7
br label %37477
4565: ; preds = %4309
%4566 = load float, float* %18
%4567 = fcmp olt float %4566, 0.000000e+00
br i1 %4567, label %4568, label %4821
4568: ; preds = %4565
%4569 = load float*, float** %13
%4570 = getelementptr inbounds float, float* %4569, i64 0
%4571 = load float, float* %4570
%4572 = load float*, float** %10
%4573 = getelementptr inbounds float, float* %4572, i64 0
%4574 = load float, float* %4573
%4575 = fsub float %4571, %4574
%4576 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %4575, float* %4576
%4577 = load float*, float** %13
%4578 = getelementptr inbounds float, float* %4577, i64 1
%4579 = load float, float* %4578
%4580 = load float*, float** %10
%4581 = getelementptr inbounds float, float* %4580, i64 1
%4582 = load float, float* %4581
%4583 = fsub float %4579, %4582
%4584 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %4583, float* %4584
%4585 = load float*, float** %13
%4586 = getelementptr inbounds float, float* %4585, i64 2
%4587 = load float, float* %4586
%4588 = load float*, float** %10
%4589 = getelementptr inbounds float, float* %4588, i64 2
%4590 = load float, float* %4589
%4591 = fsub float %4587, %4590
%4592 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %4591, float* %4592
%4593 = load float*, float** %9
%4594 = getelementptr inbounds float, float* %4593, i64 0
%4595 = load float, float* %4594
%4596 = load float*, float** %10
%4597 = getelementptr inbounds float, float* %4596, i64 0
%4598 = load float, float* %4597
%4599 = fsub float %4595, %4598
%4600 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %4599, float* %4600
%4601 = load float*, float** %9
%4602 = getelementptr inbounds float, float* %4601, i64 1
%4603 = load float, float* %4602
%4604 = load float*, float** %10
%4605 = getelementptr inbounds float, float* %4604, i64 1
%4606 = load float, float* %4605
%4607 = fsub float %4603, %4606
%4608 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %4607, float* %4608
%4609 = load float*, float** %9
%4610 = getelementptr inbounds float, float* %4609, i64 2
%4611 = load float, float* %4610
%4612 = load float*, float** %10
%4613 = getelementptr inbounds float, float* %4612, i64 2
%4614 = load float, float* %4613
%4615 = fsub float %4611, %4614
%4616 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %4615, float* %4616
%4617 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%4618 = load float, float* %4617
%4619 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%4620 = load float, float* %4619
%4621 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%4622 = load float, float* %4621
%4623 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%4624 = load float, float* %4623
%4625 = fmul float %4622, %4624
%4626 = fneg float %4625
%4627 = call float @llvm.fmuladd.f32(float %4618, float %4620, float %4626)
%4628 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %4627, float* %4628
%4629 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%4630 = load float, float* %4629
%4631 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%4632 = load float, float* %4631
%4633 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%4634 = load float, float* %4633
%4635 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%4636 = load float, float* %4635
%4637 = fmul float %4634, %4636
%4638 = fneg float %4637
%4639 = call float @llvm.fmuladd.f32(float %4630, float %4632, float %4638)
%4640 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %4639, float* %4640
%4641 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%4642 = load float, float* %4641
%4643 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%4644 = load float, float* %4643
%4645 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%4646 = load float, float* %4645
%4647 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%4648 = load float, float* %4647
%4649 = fmul float %4646, %4648
%4650 = fneg float %4649
%4651 = call float @llvm.fmuladd.f32(float %4642, float %4644, float %4650)
%4652 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %4651, float* %4652
%4653 = load float*, float** %12
%4654 = getelementptr inbounds float, float* %4653, i64 0
%4655 = load float, float* %4654
%4656 = load float*, float** %10
%4657 = getelementptr inbounds float, float* %4656, i64 0
%4658 = load float, float* %4657
%4659 = fsub float %4655, %4658
%4660 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %4659, float* %4660
%4661 = load float*, float** %12
%4662 = getelementptr inbounds float, float* %4661, i64 1
%4663 = load float, float* %4662
%4664 = load float*, float** %10
%4665 = getelementptr inbounds float, float* %4664, i64 1
%4666 = load float, float* %4665
%4667 = fsub float %4663, %4666
%4668 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %4667, float* %4668
%4669 = load float*, float** %12
%4670 = getelementptr inbounds float, float* %4669, i64 2
%4671 = load float, float* %4670
%4672 = load float*, float** %10
%4673 = getelementptr inbounds float, float* %4672, i64 2
%4674 = load float, float* %4673
%4675 = fsub float %4671, %4674
%4676 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %4675, float* %4676
%4677 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%4678 = load float, float* %4677
%4679 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%4680 = load float, float* %4679
%4681 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%4682 = load float, float* %4681
%4683 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%4684 = load float, float* %4683
%4685 = fmul float %4682, %4684
%4686 = call float @llvm.fmuladd.f32(float %4678, float %4680, float %4685)
%4687 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%4688 = load float, float* %4687
%4689 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%4690 = load float, float* %4689
%4691 = call float @llvm.fmuladd.f32(float %4688, float %4690, float %4686)
%4692 = fcmp ogt float %4691, 0.000000e+00
br i1 %4692, label %4693, label %4694
4693: ; preds = %4568
store i32 0, i32* %7
br label %37477
4694: ; preds = %4568
%4695 = load float*, float** %13
%4696 = getelementptr inbounds float, float* %4695, i64 0
%4697 = load float, float* %4696
%4698 = load float*, float** %9
%4699 = getelementptr inbounds float, float* %4698, i64 0
%4700 = load float, float* %4699
%4701 = fsub float %4697, %4700
%4702 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %4701, float* %4702
%4703 = load float*, float** %13
%4704 = getelementptr inbounds float, float* %4703, i64 1
%4705 = load float, float* %4704
%4706 = load float*, float** %9
%4707 = getelementptr inbounds float, float* %4706, i64 1
%4708 = load float, float* %4707
%4709 = fsub float %4705, %4708
%4710 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %4709, float* %4710
%4711 = load float*, float** %13
%4712 = getelementptr inbounds float, float* %4711, i64 2
%4713 = load float, float* %4712
%4714 = load float*, float** %9
%4715 = getelementptr inbounds float, float* %4714, i64 2
%4716 = load float, float* %4715
%4717 = fsub float %4713, %4716
%4718 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %4717, float* %4718
%4719 = load float*, float** %8
%4720 = getelementptr inbounds float, float* %4719, i64 0
%4721 = load float, float* %4720
%4722 = load float*, float** %9
%4723 = getelementptr inbounds float, float* %4722, i64 0
%4724 = load float, float* %4723
%4725 = fsub float %4721, %4724
%4726 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %4725, float* %4726
%4727 = load float*, float** %8
%4728 = getelementptr inbounds float, float* %4727, i64 1
%4729 = load float, float* %4728
%4730 = load float*, float** %9
%4731 = getelementptr inbounds float, float* %4730, i64 1
%4732 = load float, float* %4731
%4733 = fsub float %4729, %4732
%4734 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %4733, float* %4734
%4735 = load float*, float** %8
%4736 = getelementptr inbounds float, float* %4735, i64 2
%4737 = load float, float* %4736
%4738 = load float*, float** %9
%4739 = getelementptr inbounds float, float* %4738, i64 2
%4740 = load float, float* %4739
%4741 = fsub float %4737, %4740
%4742 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %4741, float* %4742
%4743 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%4744 = load float, float* %4743
%4745 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%4746 = load float, float* %4745
%4747 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%4748 = load float, float* %4747
%4749 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%4750 = load float, float* %4749
%4751 = fmul float %4748, %4750
%4752 = fneg float %4751
%4753 = call float @llvm.fmuladd.f32(float %4744, float %4746, float %4752)
%4754 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %4753, float* %4754
%4755 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%4756 = load float, float* %4755
%4757 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%4758 = load float, float* %4757
%4759 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%4760 = load float, float* %4759
%4761 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%4762 = load float, float* %4761
%4763 = fmul float %4760, %4762
%4764 = fneg float %4763
%4765 = call float @llvm.fmuladd.f32(float %4756, float %4758, float %4764)
%4766 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %4765, float* %4766
%4767 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%4768 = load float, float* %4767
%4769 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%4770 = load float, float* %4769
%4771 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%4772 = load float, float* %4771
%4773 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%4774 = load float, float* %4773
%4775 = fmul float %4772, %4774
%4776 = fneg float %4775
%4777 = call float @llvm.fmuladd.f32(float %4768, float %4770, float %4776)
%4778 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %4777, float* %4778
%4779 = load float*, float** %11
%4780 = getelementptr inbounds float, float* %4779, i64 0
%4781 = load float, float* %4780
%4782 = load float*, float** %9
%4783 = getelementptr inbounds float, float* %4782, i64 0
%4784 = load float, float* %4783
%4785 = fsub float %4781, %4784
%4786 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %4785, float* %4786
%4787 = load float*, float** %11
%4788 = getelementptr inbounds float, float* %4787, i64 1
%4789 = load float, float* %4788
%4790 = load float*, float** %9
%4791 = getelementptr inbounds float, float* %4790, i64 1
%4792 = load float, float* %4791
%4793 = fsub float %4789, %4792
%4794 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %4793, float* %4794
%4795 = load float*, float** %11
%4796 = getelementptr inbounds float, float* %4795, i64 2
%4797 = load float, float* %4796
%4798 = load float*, float** %9
%4799 = getelementptr inbounds float, float* %4798, i64 2
%4800 = load float, float* %4799
%4801 = fsub float %4797, %4800
%4802 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %4801, float* %4802
%4803 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%4804 = load float, float* %4803
%4805 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%4806 = load float, float* %4805
%4807 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%4808 = load float, float* %4807
%4809 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%4810 = load float, float* %4809
%4811 = fmul float %4808, %4810
%4812 = call float @llvm.fmuladd.f32(float %4804, float %4806, float %4811)
%4813 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%4814 = load float, float* %4813
%4815 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%4816 = load float, float* %4815
%4817 = call float @llvm.fmuladd.f32(float %4814, float %4816, float %4812)
%4818 = fcmp ogt float %4817, 0.000000e+00
br i1 %4818, label %4819, label %4820
4819: ; preds = %4694
store i32 0, i32* %7
br label %37477
4820: ; preds = %4694
store i32 1, i32* %7
br label %37477
4821: ; preds = %4565
%4822 = load float*, float** %11
%4823 = getelementptr inbounds float, float* %4822, i64 0
%4824 = load float, float* %4823
%4825 = load float*, float** %8
%4826 = getelementptr inbounds float, float* %4825, i64 0
%4827 = load float, float* %4826
%4828 = fsub float %4824, %4827
%4829 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %4828, float* %4829
%4830 = load float*, float** %11
%4831 = getelementptr inbounds float, float* %4830, i64 1
%4832 = load float, float* %4831
%4833 = load float*, float** %8
%4834 = getelementptr inbounds float, float* %4833, i64 1
%4835 = load float, float* %4834
%4836 = fsub float %4832, %4835
%4837 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %4836, float* %4837
%4838 = load float*, float** %11
%4839 = getelementptr inbounds float, float* %4838, i64 2
%4840 = load float, float* %4839
%4841 = load float*, float** %8
%4842 = getelementptr inbounds float, float* %4841, i64 2
%4843 = load float, float* %4842
%4844 = fsub float %4840, %4843
%4845 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %4844, float* %4845
%4846 = load float*, float** %9
%4847 = getelementptr inbounds float, float* %4846, i64 0
%4848 = load float, float* %4847
%4849 = load float*, float** %8
%4850 = getelementptr inbounds float, float* %4849, i64 0
%4851 = load float, float* %4850
%4852 = fsub float %4848, %4851
%4853 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %4852, float* %4853
%4854 = load float*, float** %9
%4855 = getelementptr inbounds float, float* %4854, i64 1
%4856 = load float, float* %4855
%4857 = load float*, float** %8
%4858 = getelementptr inbounds float, float* %4857, i64 1
%4859 = load float, float* %4858
%4860 = fsub float %4856, %4859
%4861 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %4860, float* %4861
%4862 = load float*, float** %9
%4863 = getelementptr inbounds float, float* %4862, i64 2
%4864 = load float, float* %4863
%4865 = load float*, float** %8
%4866 = getelementptr inbounds float, float* %4865, i64 2
%4867 = load float, float* %4866
%4868 = fsub float %4864, %4867
%4869 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %4868, float* %4869
%4870 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%4871 = load float, float* %4870
%4872 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%4873 = load float, float* %4872
%4874 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%4875 = load float, float* %4874
%4876 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%4877 = load float, float* %4876
%4878 = fmul float %4875, %4877
%4879 = fneg float %4878
%4880 = call float @llvm.fmuladd.f32(float %4871, float %4873, float %4879)
%4881 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %4880, float* %4881
%4882 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%4883 = load float, float* %4882
%4884 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%4885 = load float, float* %4884
%4886 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%4887 = load float, float* %4886
%4888 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%4889 = load float, float* %4888
%4890 = fmul float %4887, %4889
%4891 = fneg float %4890
%4892 = call float @llvm.fmuladd.f32(float %4883, float %4885, float %4891)
%4893 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %4892, float* %4893
%4894 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%4895 = load float, float* %4894
%4896 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%4897 = load float, float* %4896
%4898 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%4899 = load float, float* %4898
%4900 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%4901 = load float, float* %4900
%4902 = fmul float %4899, %4901
%4903 = fneg float %4902
%4904 = call float @llvm.fmuladd.f32(float %4895, float %4897, float %4903)
%4905 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %4904, float* %4905
%4906 = load float*, float** %13
%4907 = getelementptr inbounds float, float* %4906, i64 0
%4908 = load float, float* %4907
%4909 = load float*, float** %8
%4910 = getelementptr inbounds float, float* %4909, i64 0
%4911 = load float, float* %4910
%4912 = fsub float %4908, %4911
%4913 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %4912, float* %4913
%4914 = load float*, float** %13
%4915 = getelementptr inbounds float, float* %4914, i64 1
%4916 = load float, float* %4915
%4917 = load float*, float** %8
%4918 = getelementptr inbounds float, float* %4917, i64 1
%4919 = load float, float* %4918
%4920 = fsub float %4916, %4919
%4921 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %4920, float* %4921
%4922 = load float*, float** %13
%4923 = getelementptr inbounds float, float* %4922, i64 2
%4924 = load float, float* %4923
%4925 = load float*, float** %8
%4926 = getelementptr inbounds float, float* %4925, i64 2
%4927 = load float, float* %4926
%4928 = fsub float %4924, %4927
%4929 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %4928, float* %4929
%4930 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%4931 = load float, float* %4930
%4932 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%4933 = load float, float* %4932
%4934 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%4935 = load float, float* %4934
%4936 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%4937 = load float, float* %4936
%4938 = fmul float %4935, %4937
%4939 = call float @llvm.fmuladd.f32(float %4931, float %4933, float %4938)
%4940 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%4941 = load float, float* %4940
%4942 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%4943 = load float, float* %4942
%4944 = call float @llvm.fmuladd.f32(float %4941, float %4943, float %4939)
%4945 = fcmp ogt float %4944, 0.000000e+00
br i1 %4945, label %4946, label %4947
4946: ; preds = %4821
store i32 0, i32* %7
br label %37477
4947: ; preds = %4821
%4948 = load float*, float** %11
%4949 = getelementptr inbounds float, float* %4948, i64 0
%4950 = load float, float* %4949
%4951 = load float*, float** %9
%4952 = getelementptr inbounds float, float* %4951, i64 0
%4953 = load float, float* %4952
%4954 = fsub float %4950, %4953
%4955 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %4954, float* %4955
%4956 = load float*, float** %11
%4957 = getelementptr inbounds float, float* %4956, i64 1
%4958 = load float, float* %4957
%4959 = load float*, float** %9
%4960 = getelementptr inbounds float, float* %4959, i64 1
%4961 = load float, float* %4960
%4962 = fsub float %4958, %4961
%4963 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %4962, float* %4963
%4964 = load float*, float** %11
%4965 = getelementptr inbounds float, float* %4964, i64 2
%4966 = load float, float* %4965
%4967 = load float*, float** %9
%4968 = getelementptr inbounds float, float* %4967, i64 2
%4969 = load float, float* %4968
%4970 = fsub float %4966, %4969
%4971 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %4970, float* %4971
%4972 = load float*, float** %10
%4973 = getelementptr inbounds float, float* %4972, i64 0
%4974 = load float, float* %4973
%4975 = load float*, float** %9
%4976 = getelementptr inbounds float, float* %4975, i64 0
%4977 = load float, float* %4976
%4978 = fsub float %4974, %4977
%4979 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %4978, float* %4979
%4980 = load float*, float** %10
%4981 = getelementptr inbounds float, float* %4980, i64 1
%4982 = load float, float* %4981
%4983 = load float*, float** %9
%4984 = getelementptr inbounds float, float* %4983, i64 1
%4985 = load float, float* %4984
%4986 = fsub float %4982, %4985
%4987 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %4986, float* %4987
%4988 = load float*, float** %10
%4989 = getelementptr inbounds float, float* %4988, i64 2
%4990 = load float, float* %4989
%4991 = load float*, float** %9
%4992 = getelementptr inbounds float, float* %4991, i64 2
%4993 = load float, float* %4992
%4994 = fsub float %4990, %4993
%4995 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %4994, float* %4995
%4996 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%4997 = load float, float* %4996
%4998 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%4999 = load float, float* %4998
%5000 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%5001 = load float, float* %5000
%5002 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%5003 = load float, float* %5002
%5004 = fmul float %5001, %5003
%5005 = fneg float %5004
%5006 = call float @llvm.fmuladd.f32(float %4997, float %4999, float %5005)
%5007 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %5006, float* %5007
%5008 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%5009 = load float, float* %5008
%5010 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%5011 = load float, float* %5010
%5012 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%5013 = load float, float* %5012
%5014 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%5015 = load float, float* %5014
%5016 = fmul float %5013, %5015
%5017 = fneg float %5016
%5018 = call float @llvm.fmuladd.f32(float %5009, float %5011, float %5017)
%5019 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %5018, float* %5019
%5020 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%5021 = load float, float* %5020
%5022 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%5023 = load float, float* %5022
%5024 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%5025 = load float, float* %5024
%5026 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%5027 = load float, float* %5026
%5028 = fmul float %5025, %5027
%5029 = fneg float %5028
%5030 = call float @llvm.fmuladd.f32(float %5021, float %5023, float %5029)
%5031 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %5030, float* %5031
%5032 = load float*, float** %12
%5033 = getelementptr inbounds float, float* %5032, i64 0
%5034 = load float, float* %5033
%5035 = load float*, float** %9
%5036 = getelementptr inbounds float, float* %5035, i64 0
%5037 = load float, float* %5036
%5038 = fsub float %5034, %5037
%5039 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %5038, float* %5039
%5040 = load float*, float** %12
%5041 = getelementptr inbounds float, float* %5040, i64 1
%5042 = load float, float* %5041
%5043 = load float*, float** %9
%5044 = getelementptr inbounds float, float* %5043, i64 1
%5045 = load float, float* %5044
%5046 = fsub float %5042, %5045
%5047 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %5046, float* %5047
%5048 = load float*, float** %12
%5049 = getelementptr inbounds float, float* %5048, i64 2
%5050 = load float, float* %5049
%5051 = load float*, float** %9
%5052 = getelementptr inbounds float, float* %5051, i64 2
%5053 = load float, float* %5052
%5054 = fsub float %5050, %5053
%5055 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %5054, float* %5055
%5056 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%5057 = load float, float* %5056
%5058 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%5059 = load float, float* %5058
%5060 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%5061 = load float, float* %5060
%5062 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%5063 = load float, float* %5062
%5064 = fmul float %5061, %5063
%5065 = call float @llvm.fmuladd.f32(float %5057, float %5059, float %5064)
%5066 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%5067 = load float, float* %5066
%5068 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%5069 = load float, float* %5068
%5070 = call float @llvm.fmuladd.f32(float %5067, float %5069, float %5065)
%5071 = fcmp ogt float %5070, 0.000000e+00
br i1 %5071, label %5072, label %5073
5072: ; preds = %4947
store i32 0, i32* %7
br label %37477
5073: ; preds = %4947
store i32 1, i32* %7
br label %37477
5074: ; preds = %4306
%5075 = load float, float* %19
%5076 = fcmp olt float %5075, 0.000000e+00
br i1 %5076, label %5077, label %5586
5077: ; preds = %5074
%5078 = load float, float* %18
%5079 = fcmp oge float %5078, 0.000000e+00
br i1 %5079, label %5080, label %5333
5080: ; preds = %5077
%5081 = load float*, float** %13
%5082 = getelementptr inbounds float, float* %5081, i64 0
%5083 = load float, float* %5082
%5084 = load float*, float** %8
%5085 = getelementptr inbounds float, float* %5084, i64 0
%5086 = load float, float* %5085
%5087 = fsub float %5083, %5086
%5088 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %5087, float* %5088
%5089 = load float*, float** %13
%5090 = getelementptr inbounds float, float* %5089, i64 1
%5091 = load float, float* %5090
%5092 = load float*, float** %8
%5093 = getelementptr inbounds float, float* %5092, i64 1
%5094 = load float, float* %5093
%5095 = fsub float %5091, %5094
%5096 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %5095, float* %5096
%5097 = load float*, float** %13
%5098 = getelementptr inbounds float, float* %5097, i64 2
%5099 = load float, float* %5098
%5100 = load float*, float** %8
%5101 = getelementptr inbounds float, float* %5100, i64 2
%5102 = load float, float* %5101
%5103 = fsub float %5099, %5102
%5104 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %5103, float* %5104
%5105 = load float*, float** %9
%5106 = getelementptr inbounds float, float* %5105, i64 0
%5107 = load float, float* %5106
%5108 = load float*, float** %8
%5109 = getelementptr inbounds float, float* %5108, i64 0
%5110 = load float, float* %5109
%5111 = fsub float %5107, %5110
%5112 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %5111, float* %5112
%5113 = load float*, float** %9
%5114 = getelementptr inbounds float, float* %5113, i64 1
%5115 = load float, float* %5114
%5116 = load float*, float** %8
%5117 = getelementptr inbounds float, float* %5116, i64 1
%5118 = load float, float* %5117
%5119 = fsub float %5115, %5118
%5120 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %5119, float* %5120
%5121 = load float*, float** %9
%5122 = getelementptr inbounds float, float* %5121, i64 2
%5123 = load float, float* %5122
%5124 = load float*, float** %8
%5125 = getelementptr inbounds float, float* %5124, i64 2
%5126 = load float, float* %5125
%5127 = fsub float %5123, %5126
%5128 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %5127, float* %5128
%5129 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%5130 = load float, float* %5129
%5131 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%5132 = load float, float* %5131
%5133 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%5134 = load float, float* %5133
%5135 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%5136 = load float, float* %5135
%5137 = fmul float %5134, %5136
%5138 = fneg float %5137
%5139 = call float @llvm.fmuladd.f32(float %5130, float %5132, float %5138)
%5140 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %5139, float* %5140
%5141 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%5142 = load float, float* %5141
%5143 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%5144 = load float, float* %5143
%5145 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%5146 = load float, float* %5145
%5147 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%5148 = load float, float* %5147
%5149 = fmul float %5146, %5148
%5150 = fneg float %5149
%5151 = call float @llvm.fmuladd.f32(float %5142, float %5144, float %5150)
%5152 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %5151, float* %5152
%5153 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%5154 = load float, float* %5153
%5155 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%5156 = load float, float* %5155
%5157 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%5158 = load float, float* %5157
%5159 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%5160 = load float, float* %5159
%5161 = fmul float %5158, %5160
%5162 = fneg float %5161
%5163 = call float @llvm.fmuladd.f32(float %5154, float %5156, float %5162)
%5164 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %5163, float* %5164
%5165 = load float*, float** %12
%5166 = getelementptr inbounds float, float* %5165, i64 0
%5167 = load float, float* %5166
%5168 = load float*, float** %8
%5169 = getelementptr inbounds float, float* %5168, i64 0
%5170 = load float, float* %5169
%5171 = fsub float %5167, %5170
%5172 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %5171, float* %5172
%5173 = load float*, float** %12
%5174 = getelementptr inbounds float, float* %5173, i64 1
%5175 = load float, float* %5174
%5176 = load float*, float** %8
%5177 = getelementptr inbounds float, float* %5176, i64 1
%5178 = load float, float* %5177
%5179 = fsub float %5175, %5178
%5180 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %5179, float* %5180
%5181 = load float*, float** %12
%5182 = getelementptr inbounds float, float* %5181, i64 2
%5183 = load float, float* %5182
%5184 = load float*, float** %8
%5185 = getelementptr inbounds float, float* %5184, i64 2
%5186 = load float, float* %5185
%5187 = fsub float %5183, %5186
%5188 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %5187, float* %5188
%5189 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%5190 = load float, float* %5189
%5191 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%5192 = load float, float* %5191
%5193 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%5194 = load float, float* %5193
%5195 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%5196 = load float, float* %5195
%5197 = fmul float %5194, %5196
%5198 = call float @llvm.fmuladd.f32(float %5190, float %5192, float %5197)
%5199 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%5200 = load float, float* %5199
%5201 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%5202 = load float, float* %5201
%5203 = call float @llvm.fmuladd.f32(float %5200, float %5202, float %5198)
%5204 = fcmp ogt float %5203, 0.000000e+00
br i1 %5204, label %5205, label %5206
5205: ; preds = %5080
store i32 0, i32* %7
br label %37477
5206: ; preds = %5080
%5207 = load float*, float** %13
%5208 = getelementptr inbounds float, float* %5207, i64 0
%5209 = load float, float* %5208
%5210 = load float*, float** %9
%5211 = getelementptr inbounds float, float* %5210, i64 0
%5212 = load float, float* %5211
%5213 = fsub float %5209, %5212
%5214 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %5213, float* %5214
%5215 = load float*, float** %13
%5216 = getelementptr inbounds float, float* %5215, i64 1
%5217 = load float, float* %5216
%5218 = load float*, float** %9
%5219 = getelementptr inbounds float, float* %5218, i64 1
%5220 = load float, float* %5219
%5221 = fsub float %5217, %5220
%5222 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %5221, float* %5222
%5223 = load float*, float** %13
%5224 = getelementptr inbounds float, float* %5223, i64 2
%5225 = load float, float* %5224
%5226 = load float*, float** %9
%5227 = getelementptr inbounds float, float* %5226, i64 2
%5228 = load float, float* %5227
%5229 = fsub float %5225, %5228
%5230 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %5229, float* %5230
%5231 = load float*, float** %10
%5232 = getelementptr inbounds float, float* %5231, i64 0
%5233 = load float, float* %5232
%5234 = load float*, float** %9
%5235 = getelementptr inbounds float, float* %5234, i64 0
%5236 = load float, float* %5235
%5237 = fsub float %5233, %5236
%5238 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %5237, float* %5238
%5239 = load float*, float** %10
%5240 = getelementptr inbounds float, float* %5239, i64 1
%5241 = load float, float* %5240
%5242 = load float*, float** %9
%5243 = getelementptr inbounds float, float* %5242, i64 1
%5244 = load float, float* %5243
%5245 = fsub float %5241, %5244
%5246 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %5245, float* %5246
%5247 = load float*, float** %10
%5248 = getelementptr inbounds float, float* %5247, i64 2
%5249 = load float, float* %5248
%5250 = load float*, float** %9
%5251 = getelementptr inbounds float, float* %5250, i64 2
%5252 = load float, float* %5251
%5253 = fsub float %5249, %5252
%5254 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %5253, float* %5254
%5255 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%5256 = load float, float* %5255
%5257 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%5258 = load float, float* %5257
%5259 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%5260 = load float, float* %5259
%5261 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%5262 = load float, float* %5261
%5263 = fmul float %5260, %5262
%5264 = fneg float %5263
%5265 = call float @llvm.fmuladd.f32(float %5256, float %5258, float %5264)
%5266 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %5265, float* %5266
%5267 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%5268 = load float, float* %5267
%5269 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%5270 = load float, float* %5269
%5271 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%5272 = load float, float* %5271
%5273 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%5274 = load float, float* %5273
%5275 = fmul float %5272, %5274
%5276 = fneg float %5275
%5277 = call float @llvm.fmuladd.f32(float %5268, float %5270, float %5276)
%5278 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %5277, float* %5278
%5279 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%5280 = load float, float* %5279
%5281 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%5282 = load float, float* %5281
%5283 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%5284 = load float, float* %5283
%5285 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%5286 = load float, float* %5285
%5287 = fmul float %5284, %5286
%5288 = fneg float %5287
%5289 = call float @llvm.fmuladd.f32(float %5280, float %5282, float %5288)
%5290 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %5289, float* %5290
%5291 = load float*, float** %11
%5292 = getelementptr inbounds float, float* %5291, i64 0
%5293 = load float, float* %5292
%5294 = load float*, float** %9
%5295 = getelementptr inbounds float, float* %5294, i64 0
%5296 = load float, float* %5295
%5297 = fsub float %5293, %5296
%5298 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %5297, float* %5298
%5299 = load float*, float** %11
%5300 = getelementptr inbounds float, float* %5299, i64 1
%5301 = load float, float* %5300
%5302 = load float*, float** %9
%5303 = getelementptr inbounds float, float* %5302, i64 1
%5304 = load float, float* %5303
%5305 = fsub float %5301, %5304
%5306 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %5305, float* %5306
%5307 = load float*, float** %11
%5308 = getelementptr inbounds float, float* %5307, i64 2
%5309 = load float, float* %5308
%5310 = load float*, float** %9
%5311 = getelementptr inbounds float, float* %5310, i64 2
%5312 = load float, float* %5311
%5313 = fsub float %5309, %5312
%5314 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %5313, float* %5314
%5315 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%5316 = load float, float* %5315
%5317 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%5318 = load float, float* %5317
%5319 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%5320 = load float, float* %5319
%5321 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%5322 = load float, float* %5321
%5323 = fmul float %5320, %5322
%5324 = call float @llvm.fmuladd.f32(float %5316, float %5318, float %5323)
%5325 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%5326 = load float, float* %5325
%5327 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%5328 = load float, float* %5327
%5329 = call float @llvm.fmuladd.f32(float %5326, float %5328, float %5324)
%5330 = fcmp ogt float %5329, 0.000000e+00
br i1 %5330, label %5331, label %5332
5331: ; preds = %5206
store i32 0, i32* %7
br label %37477
5332: ; preds = %5206
store i32 1, i32* %7
br label %37477
5333: ; preds = %5077
%5334 = load float*, float** %11
%5335 = getelementptr inbounds float, float* %5334, i64 0
%5336 = load float, float* %5335
%5337 = load float*, float** %10
%5338 = getelementptr inbounds float, float* %5337, i64 0
%5339 = load float, float* %5338
%5340 = fsub float %5336, %5339
%5341 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %5340, float* %5341
%5342 = load float*, float** %11
%5343 = getelementptr inbounds float, float* %5342, i64 1
%5344 = load float, float* %5343
%5345 = load float*, float** %10
%5346 = getelementptr inbounds float, float* %5345, i64 1
%5347 = load float, float* %5346
%5348 = fsub float %5344, %5347
%5349 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %5348, float* %5349
%5350 = load float*, float** %11
%5351 = getelementptr inbounds float, float* %5350, i64 2
%5352 = load float, float* %5351
%5353 = load float*, float** %10
%5354 = getelementptr inbounds float, float* %5353, i64 2
%5355 = load float, float* %5354
%5356 = fsub float %5352, %5355
%5357 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %5356, float* %5357
%5358 = load float*, float** %9
%5359 = getelementptr inbounds float, float* %5358, i64 0
%5360 = load float, float* %5359
%5361 = load float*, float** %10
%5362 = getelementptr inbounds float, float* %5361, i64 0
%5363 = load float, float* %5362
%5364 = fsub float %5360, %5363
%5365 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %5364, float* %5365
%5366 = load float*, float** %9
%5367 = getelementptr inbounds float, float* %5366, i64 1
%5368 = load float, float* %5367
%5369 = load float*, float** %10
%5370 = getelementptr inbounds float, float* %5369, i64 1
%5371 = load float, float* %5370
%5372 = fsub float %5368, %5371
%5373 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %5372, float* %5373
%5374 = load float*, float** %9
%5375 = getelementptr inbounds float, float* %5374, i64 2
%5376 = load float, float* %5375
%5377 = load float*, float** %10
%5378 = getelementptr inbounds float, float* %5377, i64 2
%5379 = load float, float* %5378
%5380 = fsub float %5376, %5379
%5381 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %5380, float* %5381
%5382 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%5383 = load float, float* %5382
%5384 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%5385 = load float, float* %5384
%5386 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%5387 = load float, float* %5386
%5388 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%5389 = load float, float* %5388
%5390 = fmul float %5387, %5389
%5391 = fneg float %5390
%5392 = call float @llvm.fmuladd.f32(float %5383, float %5385, float %5391)
%5393 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %5392, float* %5393
%5394 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%5395 = load float, float* %5394
%5396 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%5397 = load float, float* %5396
%5398 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%5399 = load float, float* %5398
%5400 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%5401 = load float, float* %5400
%5402 = fmul float %5399, %5401
%5403 = fneg float %5402
%5404 = call float @llvm.fmuladd.f32(float %5395, float %5397, float %5403)
%5405 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %5404, float* %5405
%5406 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%5407 = load float, float* %5406
%5408 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%5409 = load float, float* %5408
%5410 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%5411 = load float, float* %5410
%5412 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%5413 = load float, float* %5412
%5414 = fmul float %5411, %5413
%5415 = fneg float %5414
%5416 = call float @llvm.fmuladd.f32(float %5407, float %5409, float %5415)
%5417 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %5416, float* %5417
%5418 = load float*, float** %13
%5419 = getelementptr inbounds float, float* %5418, i64 0
%5420 = load float, float* %5419
%5421 = load float*, float** %10
%5422 = getelementptr inbounds float, float* %5421, i64 0
%5423 = load float, float* %5422
%5424 = fsub float %5420, %5423
%5425 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %5424, float* %5425
%5426 = load float*, float** %13
%5427 = getelementptr inbounds float, float* %5426, i64 1
%5428 = load float, float* %5427
%5429 = load float*, float** %10
%5430 = getelementptr inbounds float, float* %5429, i64 1
%5431 = load float, float* %5430
%5432 = fsub float %5428, %5431
%5433 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %5432, float* %5433
%5434 = load float*, float** %13
%5435 = getelementptr inbounds float, float* %5434, i64 2
%5436 = load float, float* %5435
%5437 = load float*, float** %10
%5438 = getelementptr inbounds float, float* %5437, i64 2
%5439 = load float, float* %5438
%5440 = fsub float %5436, %5439
%5441 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %5440, float* %5441
%5442 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%5443 = load float, float* %5442
%5444 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%5445 = load float, float* %5444
%5446 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%5447 = load float, float* %5446
%5448 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%5449 = load float, float* %5448
%5450 = fmul float %5447, %5449
%5451 = call float @llvm.fmuladd.f32(float %5443, float %5445, float %5450)
%5452 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%5453 = load float, float* %5452
%5454 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%5455 = load float, float* %5454
%5456 = call float @llvm.fmuladd.f32(float %5453, float %5455, float %5451)
%5457 = fcmp ogt float %5456, 0.000000e+00
br i1 %5457, label %5458, label %5459
5458: ; preds = %5333
store i32 0, i32* %7
br label %37477
5459: ; preds = %5333
%5460 = load float*, float** %11
%5461 = getelementptr inbounds float, float* %5460, i64 0
%5462 = load float, float* %5461
%5463 = load float*, float** %9
%5464 = getelementptr inbounds float, float* %5463, i64 0
%5465 = load float, float* %5464
%5466 = fsub float %5462, %5465
%5467 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %5466, float* %5467
%5468 = load float*, float** %11
%5469 = getelementptr inbounds float, float* %5468, i64 1
%5470 = load float, float* %5469
%5471 = load float*, float** %9
%5472 = getelementptr inbounds float, float* %5471, i64 1
%5473 = load float, float* %5472
%5474 = fsub float %5470, %5473
%5475 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %5474, float* %5475
%5476 = load float*, float** %11
%5477 = getelementptr inbounds float, float* %5476, i64 2
%5478 = load float, float* %5477
%5479 = load float*, float** %9
%5480 = getelementptr inbounds float, float* %5479, i64 2
%5481 = load float, float* %5480
%5482 = fsub float %5478, %5481
%5483 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %5482, float* %5483
%5484 = load float*, float** %8
%5485 = getelementptr inbounds float, float* %5484, i64 0
%5486 = load float, float* %5485
%5487 = load float*, float** %9
%5488 = getelementptr inbounds float, float* %5487, i64 0
%5489 = load float, float* %5488
%5490 = fsub float %5486, %5489
%5491 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %5490, float* %5491
%5492 = load float*, float** %8
%5493 = getelementptr inbounds float, float* %5492, i64 1
%5494 = load float, float* %5493
%5495 = load float*, float** %9
%5496 = getelementptr inbounds float, float* %5495, i64 1
%5497 = load float, float* %5496
%5498 = fsub float %5494, %5497
%5499 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %5498, float* %5499
%5500 = load float*, float** %8
%5501 = getelementptr inbounds float, float* %5500, i64 2
%5502 = load float, float* %5501
%5503 = load float*, float** %9
%5504 = getelementptr inbounds float, float* %5503, i64 2
%5505 = load float, float* %5504
%5506 = fsub float %5502, %5505
%5507 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %5506, float* %5507
%5508 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%5509 = load float, float* %5508
%5510 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%5511 = load float, float* %5510
%5512 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%5513 = load float, float* %5512
%5514 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%5515 = load float, float* %5514
%5516 = fmul float %5513, %5515
%5517 = fneg float %5516
%5518 = call float @llvm.fmuladd.f32(float %5509, float %5511, float %5517)
%5519 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %5518, float* %5519
%5520 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%5521 = load float, float* %5520
%5522 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%5523 = load float, float* %5522
%5524 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%5525 = load float, float* %5524
%5526 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%5527 = load float, float* %5526
%5528 = fmul float %5525, %5527
%5529 = fneg float %5528
%5530 = call float @llvm.fmuladd.f32(float %5521, float %5523, float %5529)
%5531 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %5530, float* %5531
%5532 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%5533 = load float, float* %5532
%5534 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%5535 = load float, float* %5534
%5536 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%5537 = load float, float* %5536
%5538 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%5539 = load float, float* %5538
%5540 = fmul float %5537, %5539
%5541 = fneg float %5540
%5542 = call float @llvm.fmuladd.f32(float %5533, float %5535, float %5541)
%5543 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %5542, float* %5543
%5544 = load float*, float** %12
%5545 = getelementptr inbounds float, float* %5544, i64 0
%5546 = load float, float* %5545
%5547 = load float*, float** %9
%5548 = getelementptr inbounds float, float* %5547, i64 0
%5549 = load float, float* %5548
%5550 = fsub float %5546, %5549
%5551 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %5550, float* %5551
%5552 = load float*, float** %12
%5553 = getelementptr inbounds float, float* %5552, i64 1
%5554 = load float, float* %5553
%5555 = load float*, float** %9
%5556 = getelementptr inbounds float, float* %5555, i64 1
%5557 = load float, float* %5556
%5558 = fsub float %5554, %5557
%5559 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %5558, float* %5559
%5560 = load float*, float** %12
%5561 = getelementptr inbounds float, float* %5560, i64 2
%5562 = load float, float* %5561
%5563 = load float*, float** %9
%5564 = getelementptr inbounds float, float* %5563, i64 2
%5565 = load float, float* %5564
%5566 = fsub float %5562, %5565
%5567 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %5566, float* %5567
%5568 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%5569 = load float, float* %5568
%5570 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%5571 = load float, float* %5570
%5572 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%5573 = load float, float* %5572
%5574 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%5575 = load float, float* %5574
%5576 = fmul float %5573, %5575
%5577 = call float @llvm.fmuladd.f32(float %5569, float %5571, float %5576)
%5578 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%5579 = load float, float* %5578
%5580 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%5581 = load float, float* %5580
%5582 = call float @llvm.fmuladd.f32(float %5579, float %5581, float %5577)
%5583 = fcmp ogt float %5582, 0.000000e+00
br i1 %5583, label %5584, label %5585
5584: ; preds = %5459
store i32 0, i32* %7
br label %37477
5585: ; preds = %5459
store i32 1, i32* %7
br label %37477
5586: ; preds = %5074
%5587 = load float, float* %19
%5588 = fcmp ogt float %5587, 0.000000e+00
br i1 %5588, label %5589, label %6098
5589: ; preds = %5586
%5590 = load float, float* %18
%5591 = fcmp ogt float %5590, 0.000000e+00
br i1 %5591, label %5592, label %5845
5592: ; preds = %5589
%5593 = load float*, float** %11
%5594 = getelementptr inbounds float, float* %5593, i64 0
%5595 = load float, float* %5594
%5596 = load float*, float** %8
%5597 = getelementptr inbounds float, float* %5596, i64 0
%5598 = load float, float* %5597
%5599 = fsub float %5595, %5598
%5600 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %5599, float* %5600
%5601 = load float*, float** %11
%5602 = getelementptr inbounds float, float* %5601, i64 1
%5603 = load float, float* %5602
%5604 = load float*, float** %8
%5605 = getelementptr inbounds float, float* %5604, i64 1
%5606 = load float, float* %5605
%5607 = fsub float %5603, %5606
%5608 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %5607, float* %5608
%5609 = load float*, float** %11
%5610 = getelementptr inbounds float, float* %5609, i64 2
%5611 = load float, float* %5610
%5612 = load float*, float** %8
%5613 = getelementptr inbounds float, float* %5612, i64 2
%5614 = load float, float* %5613
%5615 = fsub float %5611, %5614
%5616 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %5615, float* %5616
%5617 = load float*, float** %9
%5618 = getelementptr inbounds float, float* %5617, i64 0
%5619 = load float, float* %5618
%5620 = load float*, float** %8
%5621 = getelementptr inbounds float, float* %5620, i64 0
%5622 = load float, float* %5621
%5623 = fsub float %5619, %5622
%5624 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %5623, float* %5624
%5625 = load float*, float** %9
%5626 = getelementptr inbounds float, float* %5625, i64 1
%5627 = load float, float* %5626
%5628 = load float*, float** %8
%5629 = getelementptr inbounds float, float* %5628, i64 1
%5630 = load float, float* %5629
%5631 = fsub float %5627, %5630
%5632 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %5631, float* %5632
%5633 = load float*, float** %9
%5634 = getelementptr inbounds float, float* %5633, i64 2
%5635 = load float, float* %5634
%5636 = load float*, float** %8
%5637 = getelementptr inbounds float, float* %5636, i64 2
%5638 = load float, float* %5637
%5639 = fsub float %5635, %5638
%5640 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %5639, float* %5640
%5641 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%5642 = load float, float* %5641
%5643 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%5644 = load float, float* %5643
%5645 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%5646 = load float, float* %5645
%5647 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%5648 = load float, float* %5647
%5649 = fmul float %5646, %5648
%5650 = fneg float %5649
%5651 = call float @llvm.fmuladd.f32(float %5642, float %5644, float %5650)
%5652 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %5651, float* %5652
%5653 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%5654 = load float, float* %5653
%5655 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%5656 = load float, float* %5655
%5657 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%5658 = load float, float* %5657
%5659 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%5660 = load float, float* %5659
%5661 = fmul float %5658, %5660
%5662 = fneg float %5661
%5663 = call float @llvm.fmuladd.f32(float %5654, float %5656, float %5662)
%5664 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %5663, float* %5664
%5665 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%5666 = load float, float* %5665
%5667 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%5668 = load float, float* %5667
%5669 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%5670 = load float, float* %5669
%5671 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%5672 = load float, float* %5671
%5673 = fmul float %5670, %5672
%5674 = fneg float %5673
%5675 = call float @llvm.fmuladd.f32(float %5666, float %5668, float %5674)
%5676 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %5675, float* %5676
%5677 = load float*, float** %13
%5678 = getelementptr inbounds float, float* %5677, i64 0
%5679 = load float, float* %5678
%5680 = load float*, float** %8
%5681 = getelementptr inbounds float, float* %5680, i64 0
%5682 = load float, float* %5681
%5683 = fsub float %5679, %5682
%5684 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %5683, float* %5684
%5685 = load float*, float** %13
%5686 = getelementptr inbounds float, float* %5685, i64 1
%5687 = load float, float* %5686
%5688 = load float*, float** %8
%5689 = getelementptr inbounds float, float* %5688, i64 1
%5690 = load float, float* %5689
%5691 = fsub float %5687, %5690
%5692 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %5691, float* %5692
%5693 = load float*, float** %13
%5694 = getelementptr inbounds float, float* %5693, i64 2
%5695 = load float, float* %5694
%5696 = load float*, float** %8
%5697 = getelementptr inbounds float, float* %5696, i64 2
%5698 = load float, float* %5697
%5699 = fsub float %5695, %5698
%5700 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %5699, float* %5700
%5701 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%5702 = load float, float* %5701
%5703 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%5704 = load float, float* %5703
%5705 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%5706 = load float, float* %5705
%5707 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%5708 = load float, float* %5707
%5709 = fmul float %5706, %5708
%5710 = call float @llvm.fmuladd.f32(float %5702, float %5704, float %5709)
%5711 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%5712 = load float, float* %5711
%5713 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%5714 = load float, float* %5713
%5715 = call float @llvm.fmuladd.f32(float %5712, float %5714, float %5710)
%5716 = fcmp ogt float %5715, 0.000000e+00
br i1 %5716, label %5717, label %5718
5717: ; preds = %5592
store i32 0, i32* %7
br label %37477
5718: ; preds = %5592
%5719 = load float*, float** %11
%5720 = getelementptr inbounds float, float* %5719, i64 0
%5721 = load float, float* %5720
%5722 = load float*, float** %9
%5723 = getelementptr inbounds float, float* %5722, i64 0
%5724 = load float, float* %5723
%5725 = fsub float %5721, %5724
%5726 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %5725, float* %5726
%5727 = load float*, float** %11
%5728 = getelementptr inbounds float, float* %5727, i64 1
%5729 = load float, float* %5728
%5730 = load float*, float** %9
%5731 = getelementptr inbounds float, float* %5730, i64 1
%5732 = load float, float* %5731
%5733 = fsub float %5729, %5732
%5734 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %5733, float* %5734
%5735 = load float*, float** %11
%5736 = getelementptr inbounds float, float* %5735, i64 2
%5737 = load float, float* %5736
%5738 = load float*, float** %9
%5739 = getelementptr inbounds float, float* %5738, i64 2
%5740 = load float, float* %5739
%5741 = fsub float %5737, %5740
%5742 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %5741, float* %5742
%5743 = load float*, float** %10
%5744 = getelementptr inbounds float, float* %5743, i64 0
%5745 = load float, float* %5744
%5746 = load float*, float** %9
%5747 = getelementptr inbounds float, float* %5746, i64 0
%5748 = load float, float* %5747
%5749 = fsub float %5745, %5748
%5750 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %5749, float* %5750
%5751 = load float*, float** %10
%5752 = getelementptr inbounds float, float* %5751, i64 1
%5753 = load float, float* %5752
%5754 = load float*, float** %9
%5755 = getelementptr inbounds float, float* %5754, i64 1
%5756 = load float, float* %5755
%5757 = fsub float %5753, %5756
%5758 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %5757, float* %5758
%5759 = load float*, float** %10
%5760 = getelementptr inbounds float, float* %5759, i64 2
%5761 = load float, float* %5760
%5762 = load float*, float** %9
%5763 = getelementptr inbounds float, float* %5762, i64 2
%5764 = load float, float* %5763
%5765 = fsub float %5761, %5764
%5766 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %5765, float* %5766
%5767 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%5768 = load float, float* %5767
%5769 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%5770 = load float, float* %5769
%5771 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%5772 = load float, float* %5771
%5773 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%5774 = load float, float* %5773
%5775 = fmul float %5772, %5774
%5776 = fneg float %5775
%5777 = call float @llvm.fmuladd.f32(float %5768, float %5770, float %5776)
%5778 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %5777, float* %5778
%5779 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%5780 = load float, float* %5779
%5781 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%5782 = load float, float* %5781
%5783 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%5784 = load float, float* %5783
%5785 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%5786 = load float, float* %5785
%5787 = fmul float %5784, %5786
%5788 = fneg float %5787
%5789 = call float @llvm.fmuladd.f32(float %5780, float %5782, float %5788)
%5790 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %5789, float* %5790
%5791 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%5792 = load float, float* %5791
%5793 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%5794 = load float, float* %5793
%5795 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%5796 = load float, float* %5795
%5797 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%5798 = load float, float* %5797
%5799 = fmul float %5796, %5798
%5800 = fneg float %5799
%5801 = call float @llvm.fmuladd.f32(float %5792, float %5794, float %5800)
%5802 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %5801, float* %5802
%5803 = load float*, float** %12
%5804 = getelementptr inbounds float, float* %5803, i64 0
%5805 = load float, float* %5804
%5806 = load float*, float** %9
%5807 = getelementptr inbounds float, float* %5806, i64 0
%5808 = load float, float* %5807
%5809 = fsub float %5805, %5808
%5810 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %5809, float* %5810
%5811 = load float*, float** %12
%5812 = getelementptr inbounds float, float* %5811, i64 1
%5813 = load float, float* %5812
%5814 = load float*, float** %9
%5815 = getelementptr inbounds float, float* %5814, i64 1
%5816 = load float, float* %5815
%5817 = fsub float %5813, %5816
%5818 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %5817, float* %5818
%5819 = load float*, float** %12
%5820 = getelementptr inbounds float, float* %5819, i64 2
%5821 = load float, float* %5820
%5822 = load float*, float** %9
%5823 = getelementptr inbounds float, float* %5822, i64 2
%5824 = load float, float* %5823
%5825 = fsub float %5821, %5824
%5826 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %5825, float* %5826
%5827 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%5828 = load float, float* %5827
%5829 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%5830 = load float, float* %5829
%5831 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%5832 = load float, float* %5831
%5833 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%5834 = load float, float* %5833
%5835 = fmul float %5832, %5834
%5836 = call float @llvm.fmuladd.f32(float %5828, float %5830, float %5835)
%5837 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%5838 = load float, float* %5837
%5839 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%5840 = load float, float* %5839
%5841 = call float @llvm.fmuladd.f32(float %5838, float %5840, float %5836)
%5842 = fcmp ogt float %5841, 0.000000e+00
br i1 %5842, label %5843, label %5844
5843: ; preds = %5718
store i32 0, i32* %7
br label %37477
5844: ; preds = %5718
store i32 1, i32* %7
br label %37477
5845: ; preds = %5589
%5846 = load float*, float** %13
%5847 = getelementptr inbounds float, float* %5846, i64 0
%5848 = load float, float* %5847
%5849 = load float*, float** %10
%5850 = getelementptr inbounds float, float* %5849, i64 0
%5851 = load float, float* %5850
%5852 = fsub float %5848, %5851
%5853 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %5852, float* %5853
%5854 = load float*, float** %13
%5855 = getelementptr inbounds float, float* %5854, i64 1
%5856 = load float, float* %5855
%5857 = load float*, float** %10
%5858 = getelementptr inbounds float, float* %5857, i64 1
%5859 = load float, float* %5858
%5860 = fsub float %5856, %5859
%5861 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %5860, float* %5861
%5862 = load float*, float** %13
%5863 = getelementptr inbounds float, float* %5862, i64 2
%5864 = load float, float* %5863
%5865 = load float*, float** %10
%5866 = getelementptr inbounds float, float* %5865, i64 2
%5867 = load float, float* %5866
%5868 = fsub float %5864, %5867
%5869 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %5868, float* %5869
%5870 = load float*, float** %9
%5871 = getelementptr inbounds float, float* %5870, i64 0
%5872 = load float, float* %5871
%5873 = load float*, float** %10
%5874 = getelementptr inbounds float, float* %5873, i64 0
%5875 = load float, float* %5874
%5876 = fsub float %5872, %5875
%5877 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %5876, float* %5877
%5878 = load float*, float** %9
%5879 = getelementptr inbounds float, float* %5878, i64 1
%5880 = load float, float* %5879
%5881 = load float*, float** %10
%5882 = getelementptr inbounds float, float* %5881, i64 1
%5883 = load float, float* %5882
%5884 = fsub float %5880, %5883
%5885 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %5884, float* %5885
%5886 = load float*, float** %9
%5887 = getelementptr inbounds float, float* %5886, i64 2
%5888 = load float, float* %5887
%5889 = load float*, float** %10
%5890 = getelementptr inbounds float, float* %5889, i64 2
%5891 = load float, float* %5890
%5892 = fsub float %5888, %5891
%5893 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %5892, float* %5893
%5894 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%5895 = load float, float* %5894
%5896 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%5897 = load float, float* %5896
%5898 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%5899 = load float, float* %5898
%5900 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%5901 = load float, float* %5900
%5902 = fmul float %5899, %5901
%5903 = fneg float %5902
%5904 = call float @llvm.fmuladd.f32(float %5895, float %5897, float %5903)
%5905 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %5904, float* %5905
%5906 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%5907 = load float, float* %5906
%5908 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%5909 = load float, float* %5908
%5910 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%5911 = load float, float* %5910
%5912 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%5913 = load float, float* %5912
%5914 = fmul float %5911, %5913
%5915 = fneg float %5914
%5916 = call float @llvm.fmuladd.f32(float %5907, float %5909, float %5915)
%5917 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %5916, float* %5917
%5918 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%5919 = load float, float* %5918
%5920 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%5921 = load float, float* %5920
%5922 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%5923 = load float, float* %5922
%5924 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%5925 = load float, float* %5924
%5926 = fmul float %5923, %5925
%5927 = fneg float %5926
%5928 = call float @llvm.fmuladd.f32(float %5919, float %5921, float %5927)
%5929 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %5928, float* %5929
%5930 = load float*, float** %12
%5931 = getelementptr inbounds float, float* %5930, i64 0
%5932 = load float, float* %5931
%5933 = load float*, float** %10
%5934 = getelementptr inbounds float, float* %5933, i64 0
%5935 = load float, float* %5934
%5936 = fsub float %5932, %5935
%5937 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %5936, float* %5937
%5938 = load float*, float** %12
%5939 = getelementptr inbounds float, float* %5938, i64 1
%5940 = load float, float* %5939
%5941 = load float*, float** %10
%5942 = getelementptr inbounds float, float* %5941, i64 1
%5943 = load float, float* %5942
%5944 = fsub float %5940, %5943
%5945 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %5944, float* %5945
%5946 = load float*, float** %12
%5947 = getelementptr inbounds float, float* %5946, i64 2
%5948 = load float, float* %5947
%5949 = load float*, float** %10
%5950 = getelementptr inbounds float, float* %5949, i64 2
%5951 = load float, float* %5950
%5952 = fsub float %5948, %5951
%5953 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %5952, float* %5953
%5954 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%5955 = load float, float* %5954
%5956 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%5957 = load float, float* %5956
%5958 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%5959 = load float, float* %5958
%5960 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%5961 = load float, float* %5960
%5962 = fmul float %5959, %5961
%5963 = call float @llvm.fmuladd.f32(float %5955, float %5957, float %5962)
%5964 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%5965 = load float, float* %5964
%5966 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%5967 = load float, float* %5966
%5968 = call float @llvm.fmuladd.f32(float %5965, float %5967, float %5963)
%5969 = fcmp ogt float %5968, 0.000000e+00
br i1 %5969, label %5970, label %5971
5970: ; preds = %5845
store i32 0, i32* %7
br label %37477
5971: ; preds = %5845
%5972 = load float*, float** %13
%5973 = getelementptr inbounds float, float* %5972, i64 0
%5974 = load float, float* %5973
%5975 = load float*, float** %9
%5976 = getelementptr inbounds float, float* %5975, i64 0
%5977 = load float, float* %5976
%5978 = fsub float %5974, %5977
%5979 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %5978, float* %5979
%5980 = load float*, float** %13
%5981 = getelementptr inbounds float, float* %5980, i64 1
%5982 = load float, float* %5981
%5983 = load float*, float** %9
%5984 = getelementptr inbounds float, float* %5983, i64 1
%5985 = load float, float* %5984
%5986 = fsub float %5982, %5985
%5987 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %5986, float* %5987
%5988 = load float*, float** %13
%5989 = getelementptr inbounds float, float* %5988, i64 2
%5990 = load float, float* %5989
%5991 = load float*, float** %9
%5992 = getelementptr inbounds float, float* %5991, i64 2
%5993 = load float, float* %5992
%5994 = fsub float %5990, %5993
%5995 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %5994, float* %5995
%5996 = load float*, float** %8
%5997 = getelementptr inbounds float, float* %5996, i64 0
%5998 = load float, float* %5997
%5999 = load float*, float** %9
%6000 = getelementptr inbounds float, float* %5999, i64 0
%6001 = load float, float* %6000
%6002 = fsub float %5998, %6001
%6003 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %6002, float* %6003
%6004 = load float*, float** %8
%6005 = getelementptr inbounds float, float* %6004, i64 1
%6006 = load float, float* %6005
%6007 = load float*, float** %9
%6008 = getelementptr inbounds float, float* %6007, i64 1
%6009 = load float, float* %6008
%6010 = fsub float %6006, %6009
%6011 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %6010, float* %6011
%6012 = load float*, float** %8
%6013 = getelementptr inbounds float, float* %6012, i64 2
%6014 = load float, float* %6013
%6015 = load float*, float** %9
%6016 = getelementptr inbounds float, float* %6015, i64 2
%6017 = load float, float* %6016
%6018 = fsub float %6014, %6017
%6019 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %6018, float* %6019
%6020 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%6021 = load float, float* %6020
%6022 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%6023 = load float, float* %6022
%6024 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%6025 = load float, float* %6024
%6026 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%6027 = load float, float* %6026
%6028 = fmul float %6025, %6027
%6029 = fneg float %6028
%6030 = call float @llvm.fmuladd.f32(float %6021, float %6023, float %6029)
%6031 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %6030, float* %6031
%6032 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%6033 = load float, float* %6032
%6034 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%6035 = load float, float* %6034
%6036 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%6037 = load float, float* %6036
%6038 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%6039 = load float, float* %6038
%6040 = fmul float %6037, %6039
%6041 = fneg float %6040
%6042 = call float @llvm.fmuladd.f32(float %6033, float %6035, float %6041)
%6043 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %6042, float* %6043
%6044 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%6045 = load float, float* %6044
%6046 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%6047 = load float, float* %6046
%6048 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%6049 = load float, float* %6048
%6050 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%6051 = load float, float* %6050
%6052 = fmul float %6049, %6051
%6053 = fneg float %6052
%6054 = call float @llvm.fmuladd.f32(float %6045, float %6047, float %6053)
%6055 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %6054, float* %6055
%6056 = load float*, float** %11
%6057 = getelementptr inbounds float, float* %6056, i64 0
%6058 = load float, float* %6057
%6059 = load float*, float** %9
%6060 = getelementptr inbounds float, float* %6059, i64 0
%6061 = load float, float* %6060
%6062 = fsub float %6058, %6061
%6063 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %6062, float* %6063
%6064 = load float*, float** %11
%6065 = getelementptr inbounds float, float* %6064, i64 1
%6066 = load float, float* %6065
%6067 = load float*, float** %9
%6068 = getelementptr inbounds float, float* %6067, i64 1
%6069 = load float, float* %6068
%6070 = fsub float %6066, %6069
%6071 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %6070, float* %6071
%6072 = load float*, float** %11
%6073 = getelementptr inbounds float, float* %6072, i64 2
%6074 = load float, float* %6073
%6075 = load float*, float** %9
%6076 = getelementptr inbounds float, float* %6075, i64 2
%6077 = load float, float* %6076
%6078 = fsub float %6074, %6077
%6079 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %6078, float* %6079
%6080 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%6081 = load float, float* %6080
%6082 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%6083 = load float, float* %6082
%6084 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%6085 = load float, float* %6084
%6086 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%6087 = load float, float* %6086
%6088 = fmul float %6085, %6087
%6089 = call float @llvm.fmuladd.f32(float %6081, float %6083, float %6088)
%6090 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%6091 = load float, float* %6090
%6092 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%6093 = load float, float* %6092
%6094 = call float @llvm.fmuladd.f32(float %6091, float %6093, float %6089)
%6095 = fcmp ogt float %6094, 0.000000e+00
br i1 %6095, label %6096, label %6097
6096: ; preds = %5971
store i32 0, i32* %7
br label %37477
6097: ; preds = %5971
store i32 1, i32* %7
br label %37477
6098: ; preds = %5586
%6099 = load float, float* %18
%6100 = fcmp ogt float %6099, 0.000000e+00
br i1 %6100, label %6101, label %6354
6101: ; preds = %6098
%6102 = load float*, float** %12
%6103 = getelementptr inbounds float, float* %6102, i64 0
%6104 = load float, float* %6103
%6105 = load float*, float** %10
%6106 = getelementptr inbounds float, float* %6105, i64 0
%6107 = load float, float* %6106
%6108 = fsub float %6104, %6107
%6109 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %6108, float* %6109
%6110 = load float*, float** %12
%6111 = getelementptr inbounds float, float* %6110, i64 1
%6112 = load float, float* %6111
%6113 = load float*, float** %10
%6114 = getelementptr inbounds float, float* %6113, i64 1
%6115 = load float, float* %6114
%6116 = fsub float %6112, %6115
%6117 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %6116, float* %6117
%6118 = load float*, float** %12
%6119 = getelementptr inbounds float, float* %6118, i64 2
%6120 = load float, float* %6119
%6121 = load float*, float** %10
%6122 = getelementptr inbounds float, float* %6121, i64 2
%6123 = load float, float* %6122
%6124 = fsub float %6120, %6123
%6125 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %6124, float* %6125
%6126 = load float*, float** %9
%6127 = getelementptr inbounds float, float* %6126, i64 0
%6128 = load float, float* %6127
%6129 = load float*, float** %10
%6130 = getelementptr inbounds float, float* %6129, i64 0
%6131 = load float, float* %6130
%6132 = fsub float %6128, %6131
%6133 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %6132, float* %6133
%6134 = load float*, float** %9
%6135 = getelementptr inbounds float, float* %6134, i64 1
%6136 = load float, float* %6135
%6137 = load float*, float** %10
%6138 = getelementptr inbounds float, float* %6137, i64 1
%6139 = load float, float* %6138
%6140 = fsub float %6136, %6139
%6141 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %6140, float* %6141
%6142 = load float*, float** %9
%6143 = getelementptr inbounds float, float* %6142, i64 2
%6144 = load float, float* %6143
%6145 = load float*, float** %10
%6146 = getelementptr inbounds float, float* %6145, i64 2
%6147 = load float, float* %6146
%6148 = fsub float %6144, %6147
%6149 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %6148, float* %6149
%6150 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%6151 = load float, float* %6150
%6152 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%6153 = load float, float* %6152
%6154 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%6155 = load float, float* %6154
%6156 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%6157 = load float, float* %6156
%6158 = fmul float %6155, %6157
%6159 = fneg float %6158
%6160 = call float @llvm.fmuladd.f32(float %6151, float %6153, float %6159)
%6161 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %6160, float* %6161
%6162 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%6163 = load float, float* %6162
%6164 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%6165 = load float, float* %6164
%6166 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%6167 = load float, float* %6166
%6168 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%6169 = load float, float* %6168
%6170 = fmul float %6167, %6169
%6171 = fneg float %6170
%6172 = call float @llvm.fmuladd.f32(float %6163, float %6165, float %6171)
%6173 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %6172, float* %6173
%6174 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%6175 = load float, float* %6174
%6176 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%6177 = load float, float* %6176
%6178 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%6179 = load float, float* %6178
%6180 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%6181 = load float, float* %6180
%6182 = fmul float %6179, %6181
%6183 = fneg float %6182
%6184 = call float @llvm.fmuladd.f32(float %6175, float %6177, float %6183)
%6185 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %6184, float* %6185
%6186 = load float*, float** %11
%6187 = getelementptr inbounds float, float* %6186, i64 0
%6188 = load float, float* %6187
%6189 = load float*, float** %10
%6190 = getelementptr inbounds float, float* %6189, i64 0
%6191 = load float, float* %6190
%6192 = fsub float %6188, %6191
%6193 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %6192, float* %6193
%6194 = load float*, float** %11
%6195 = getelementptr inbounds float, float* %6194, i64 1
%6196 = load float, float* %6195
%6197 = load float*, float** %10
%6198 = getelementptr inbounds float, float* %6197, i64 1
%6199 = load float, float* %6198
%6200 = fsub float %6196, %6199
%6201 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %6200, float* %6201
%6202 = load float*, float** %11
%6203 = getelementptr inbounds float, float* %6202, i64 2
%6204 = load float, float* %6203
%6205 = load float*, float** %10
%6206 = getelementptr inbounds float, float* %6205, i64 2
%6207 = load float, float* %6206
%6208 = fsub float %6204, %6207
%6209 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %6208, float* %6209
%6210 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%6211 = load float, float* %6210
%6212 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%6213 = load float, float* %6212
%6214 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%6215 = load float, float* %6214
%6216 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%6217 = load float, float* %6216
%6218 = fmul float %6215, %6217
%6219 = call float @llvm.fmuladd.f32(float %6211, float %6213, float %6218)
%6220 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%6221 = load float, float* %6220
%6222 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%6223 = load float, float* %6222
%6224 = call float @llvm.fmuladd.f32(float %6221, float %6223, float %6219)
%6225 = fcmp ogt float %6224, 0.000000e+00
br i1 %6225, label %6226, label %6227
6226: ; preds = %6101
store i32 0, i32* %7
br label %37477
6227: ; preds = %6101
%6228 = load float*, float** %12
%6229 = getelementptr inbounds float, float* %6228, i64 0
%6230 = load float, float* %6229
%6231 = load float*, float** %9
%6232 = getelementptr inbounds float, float* %6231, i64 0
%6233 = load float, float* %6232
%6234 = fsub float %6230, %6233
%6235 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %6234, float* %6235
%6236 = load float*, float** %12
%6237 = getelementptr inbounds float, float* %6236, i64 1
%6238 = load float, float* %6237
%6239 = load float*, float** %9
%6240 = getelementptr inbounds float, float* %6239, i64 1
%6241 = load float, float* %6240
%6242 = fsub float %6238, %6241
%6243 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %6242, float* %6243
%6244 = load float*, float** %12
%6245 = getelementptr inbounds float, float* %6244, i64 2
%6246 = load float, float* %6245
%6247 = load float*, float** %9
%6248 = getelementptr inbounds float, float* %6247, i64 2
%6249 = load float, float* %6248
%6250 = fsub float %6246, %6249
%6251 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %6250, float* %6251
%6252 = load float*, float** %8
%6253 = getelementptr inbounds float, float* %6252, i64 0
%6254 = load float, float* %6253
%6255 = load float*, float** %9
%6256 = getelementptr inbounds float, float* %6255, i64 0
%6257 = load float, float* %6256
%6258 = fsub float %6254, %6257
%6259 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %6258, float* %6259
%6260 = load float*, float** %8
%6261 = getelementptr inbounds float, float* %6260, i64 1
%6262 = load float, float* %6261
%6263 = load float*, float** %9
%6264 = getelementptr inbounds float, float* %6263, i64 1
%6265 = load float, float* %6264
%6266 = fsub float %6262, %6265
%6267 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %6266, float* %6267
%6268 = load float*, float** %8
%6269 = getelementptr inbounds float, float* %6268, i64 2
%6270 = load float, float* %6269
%6271 = load float*, float** %9
%6272 = getelementptr inbounds float, float* %6271, i64 2
%6273 = load float, float* %6272
%6274 = fsub float %6270, %6273
%6275 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %6274, float* %6275
%6276 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%6277 = load float, float* %6276
%6278 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%6279 = load float, float* %6278
%6280 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%6281 = load float, float* %6280
%6282 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%6283 = load float, float* %6282
%6284 = fmul float %6281, %6283
%6285 = fneg float %6284
%6286 = call float @llvm.fmuladd.f32(float %6277, float %6279, float %6285)
%6287 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %6286, float* %6287
%6288 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%6289 = load float, float* %6288
%6290 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%6291 = load float, float* %6290
%6292 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%6293 = load float, float* %6292
%6294 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%6295 = load float, float* %6294
%6296 = fmul float %6293, %6295
%6297 = fneg float %6296
%6298 = call float @llvm.fmuladd.f32(float %6289, float %6291, float %6297)
%6299 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %6298, float* %6299
%6300 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%6301 = load float, float* %6300
%6302 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%6303 = load float, float* %6302
%6304 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%6305 = load float, float* %6304
%6306 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%6307 = load float, float* %6306
%6308 = fmul float %6305, %6307
%6309 = fneg float %6308
%6310 = call float @llvm.fmuladd.f32(float %6301, float %6303, float %6309)
%6311 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %6310, float* %6311
%6312 = load float*, float** %13
%6313 = getelementptr inbounds float, float* %6312, i64 0
%6314 = load float, float* %6313
%6315 = load float*, float** %9
%6316 = getelementptr inbounds float, float* %6315, i64 0
%6317 = load float, float* %6316
%6318 = fsub float %6314, %6317
%6319 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %6318, float* %6319
%6320 = load float*, float** %13
%6321 = getelementptr inbounds float, float* %6320, i64 1
%6322 = load float, float* %6321
%6323 = load float*, float** %9
%6324 = getelementptr inbounds float, float* %6323, i64 1
%6325 = load float, float* %6324
%6326 = fsub float %6322, %6325
%6327 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %6326, float* %6327
%6328 = load float*, float** %13
%6329 = getelementptr inbounds float, float* %6328, i64 2
%6330 = load float, float* %6329
%6331 = load float*, float** %9
%6332 = getelementptr inbounds float, float* %6331, i64 2
%6333 = load float, float* %6332
%6334 = fsub float %6330, %6333
%6335 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %6334, float* %6335
%6336 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%6337 = load float, float* %6336
%6338 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%6339 = load float, float* %6338
%6340 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%6341 = load float, float* %6340
%6342 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%6343 = load float, float* %6342
%6344 = fmul float %6341, %6343
%6345 = call float @llvm.fmuladd.f32(float %6337, float %6339, float %6344)
%6346 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%6347 = load float, float* %6346
%6348 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%6349 = load float, float* %6348
%6350 = call float @llvm.fmuladd.f32(float %6347, float %6349, float %6345)
%6351 = fcmp ogt float %6350, 0.000000e+00
br i1 %6351, label %6352, label %6353
6352: ; preds = %6227
store i32 0, i32* %7
br label %37477
6353: ; preds = %6227
store i32 1, i32* %7
br label %37477
6354: ; preds = %6098
%6355 = load float, float* %18
%6356 = fcmp olt float %6355, 0.000000e+00
br i1 %6356, label %6357, label %6610
6357: ; preds = %6354
%6358 = load float*, float** %12
%6359 = getelementptr inbounds float, float* %6358, i64 0
%6360 = load float, float* %6359
%6361 = load float*, float** %8
%6362 = getelementptr inbounds float, float* %6361, i64 0
%6363 = load float, float* %6362
%6364 = fsub float %6360, %6363
%6365 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %6364, float* %6365
%6366 = load float*, float** %12
%6367 = getelementptr inbounds float, float* %6366, i64 1
%6368 = load float, float* %6367
%6369 = load float*, float** %8
%6370 = getelementptr inbounds float, float* %6369, i64 1
%6371 = load float, float* %6370
%6372 = fsub float %6368, %6371
%6373 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %6372, float* %6373
%6374 = load float*, float** %12
%6375 = getelementptr inbounds float, float* %6374, i64 2
%6376 = load float, float* %6375
%6377 = load float*, float** %8
%6378 = getelementptr inbounds float, float* %6377, i64 2
%6379 = load float, float* %6378
%6380 = fsub float %6376, %6379
%6381 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %6380, float* %6381
%6382 = load float*, float** %9
%6383 = getelementptr inbounds float, float* %6382, i64 0
%6384 = load float, float* %6383
%6385 = load float*, float** %8
%6386 = getelementptr inbounds float, float* %6385, i64 0
%6387 = load float, float* %6386
%6388 = fsub float %6384, %6387
%6389 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %6388, float* %6389
%6390 = load float*, float** %9
%6391 = getelementptr inbounds float, float* %6390, i64 1
%6392 = load float, float* %6391
%6393 = load float*, float** %8
%6394 = getelementptr inbounds float, float* %6393, i64 1
%6395 = load float, float* %6394
%6396 = fsub float %6392, %6395
%6397 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %6396, float* %6397
%6398 = load float*, float** %9
%6399 = getelementptr inbounds float, float* %6398, i64 2
%6400 = load float, float* %6399
%6401 = load float*, float** %8
%6402 = getelementptr inbounds float, float* %6401, i64 2
%6403 = load float, float* %6402
%6404 = fsub float %6400, %6403
%6405 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %6404, float* %6405
%6406 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%6407 = load float, float* %6406
%6408 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%6409 = load float, float* %6408
%6410 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%6411 = load float, float* %6410
%6412 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%6413 = load float, float* %6412
%6414 = fmul float %6411, %6413
%6415 = fneg float %6414
%6416 = call float @llvm.fmuladd.f32(float %6407, float %6409, float %6415)
%6417 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %6416, float* %6417
%6418 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%6419 = load float, float* %6418
%6420 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%6421 = load float, float* %6420
%6422 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%6423 = load float, float* %6422
%6424 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%6425 = load float, float* %6424
%6426 = fmul float %6423, %6425
%6427 = fneg float %6426
%6428 = call float @llvm.fmuladd.f32(float %6419, float %6421, float %6427)
%6429 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %6428, float* %6429
%6430 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%6431 = load float, float* %6430
%6432 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%6433 = load float, float* %6432
%6434 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%6435 = load float, float* %6434
%6436 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%6437 = load float, float* %6436
%6438 = fmul float %6435, %6437
%6439 = fneg float %6438
%6440 = call float @llvm.fmuladd.f32(float %6431, float %6433, float %6439)
%6441 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %6440, float* %6441
%6442 = load float*, float** %11
%6443 = getelementptr inbounds float, float* %6442, i64 0
%6444 = load float, float* %6443
%6445 = load float*, float** %8
%6446 = getelementptr inbounds float, float* %6445, i64 0
%6447 = load float, float* %6446
%6448 = fsub float %6444, %6447
%6449 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %6448, float* %6449
%6450 = load float*, float** %11
%6451 = getelementptr inbounds float, float* %6450, i64 1
%6452 = load float, float* %6451
%6453 = load float*, float** %8
%6454 = getelementptr inbounds float, float* %6453, i64 1
%6455 = load float, float* %6454
%6456 = fsub float %6452, %6455
%6457 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %6456, float* %6457
%6458 = load float*, float** %11
%6459 = getelementptr inbounds float, float* %6458, i64 2
%6460 = load float, float* %6459
%6461 = load float*, float** %8
%6462 = getelementptr inbounds float, float* %6461, i64 2
%6463 = load float, float* %6462
%6464 = fsub float %6460, %6463
%6465 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %6464, float* %6465
%6466 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%6467 = load float, float* %6466
%6468 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%6469 = load float, float* %6468
%6470 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%6471 = load float, float* %6470
%6472 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%6473 = load float, float* %6472
%6474 = fmul float %6471, %6473
%6475 = call float @llvm.fmuladd.f32(float %6467, float %6469, float %6474)
%6476 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%6477 = load float, float* %6476
%6478 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%6479 = load float, float* %6478
%6480 = call float @llvm.fmuladd.f32(float %6477, float %6479, float %6475)
%6481 = fcmp ogt float %6480, 0.000000e+00
br i1 %6481, label %6482, label %6483
6482: ; preds = %6357
store i32 0, i32* %7
br label %37477
6483: ; preds = %6357
%6484 = load float*, float** %12
%6485 = getelementptr inbounds float, float* %6484, i64 0
%6486 = load float, float* %6485
%6487 = load float*, float** %9
%6488 = getelementptr inbounds float, float* %6487, i64 0
%6489 = load float, float* %6488
%6490 = fsub float %6486, %6489
%6491 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %6490, float* %6491
%6492 = load float*, float** %12
%6493 = getelementptr inbounds float, float* %6492, i64 1
%6494 = load float, float* %6493
%6495 = load float*, float** %9
%6496 = getelementptr inbounds float, float* %6495, i64 1
%6497 = load float, float* %6496
%6498 = fsub float %6494, %6497
%6499 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %6498, float* %6499
%6500 = load float*, float** %12
%6501 = getelementptr inbounds float, float* %6500, i64 2
%6502 = load float, float* %6501
%6503 = load float*, float** %9
%6504 = getelementptr inbounds float, float* %6503, i64 2
%6505 = load float, float* %6504
%6506 = fsub float %6502, %6505
%6507 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %6506, float* %6507
%6508 = load float*, float** %10
%6509 = getelementptr inbounds float, float* %6508, i64 0
%6510 = load float, float* %6509
%6511 = load float*, float** %9
%6512 = getelementptr inbounds float, float* %6511, i64 0
%6513 = load float, float* %6512
%6514 = fsub float %6510, %6513
%6515 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %6514, float* %6515
%6516 = load float*, float** %10
%6517 = getelementptr inbounds float, float* %6516, i64 1
%6518 = load float, float* %6517
%6519 = load float*, float** %9
%6520 = getelementptr inbounds float, float* %6519, i64 1
%6521 = load float, float* %6520
%6522 = fsub float %6518, %6521
%6523 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %6522, float* %6523
%6524 = load float*, float** %10
%6525 = getelementptr inbounds float, float* %6524, i64 2
%6526 = load float, float* %6525
%6527 = load float*, float** %9
%6528 = getelementptr inbounds float, float* %6527, i64 2
%6529 = load float, float* %6528
%6530 = fsub float %6526, %6529
%6531 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %6530, float* %6531
%6532 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%6533 = load float, float* %6532
%6534 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%6535 = load float, float* %6534
%6536 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%6537 = load float, float* %6536
%6538 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%6539 = load float, float* %6538
%6540 = fmul float %6537, %6539
%6541 = fneg float %6540
%6542 = call float @llvm.fmuladd.f32(float %6533, float %6535, float %6541)
%6543 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %6542, float* %6543
%6544 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%6545 = load float, float* %6544
%6546 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%6547 = load float, float* %6546
%6548 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%6549 = load float, float* %6548
%6550 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%6551 = load float, float* %6550
%6552 = fmul float %6549, %6551
%6553 = fneg float %6552
%6554 = call float @llvm.fmuladd.f32(float %6545, float %6547, float %6553)
%6555 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %6554, float* %6555
%6556 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%6557 = load float, float* %6556
%6558 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%6559 = load float, float* %6558
%6560 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%6561 = load float, float* %6560
%6562 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%6563 = load float, float* %6562
%6564 = fmul float %6561, %6563
%6565 = fneg float %6564
%6566 = call float @llvm.fmuladd.f32(float %6557, float %6559, float %6565)
%6567 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %6566, float* %6567
%6568 = load float*, float** %13
%6569 = getelementptr inbounds float, float* %6568, i64 0
%6570 = load float, float* %6569
%6571 = load float*, float** %9
%6572 = getelementptr inbounds float, float* %6571, i64 0
%6573 = load float, float* %6572
%6574 = fsub float %6570, %6573
%6575 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %6574, float* %6575
%6576 = load float*, float** %13
%6577 = getelementptr inbounds float, float* %6576, i64 1
%6578 = load float, float* %6577
%6579 = load float*, float** %9
%6580 = getelementptr inbounds float, float* %6579, i64 1
%6581 = load float, float* %6580
%6582 = fsub float %6578, %6581
%6583 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %6582, float* %6583
%6584 = load float*, float** %13
%6585 = getelementptr inbounds float, float* %6584, i64 2
%6586 = load float, float* %6585
%6587 = load float*, float** %9
%6588 = getelementptr inbounds float, float* %6587, i64 2
%6589 = load float, float* %6588
%6590 = fsub float %6586, %6589
%6591 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %6590, float* %6591
%6592 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%6593 = load float, float* %6592
%6594 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%6595 = load float, float* %6594
%6596 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%6597 = load float, float* %6596
%6598 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%6599 = load float, float* %6598
%6600 = fmul float %6597, %6599
%6601 = call float @llvm.fmuladd.f32(float %6593, float %6595, float %6600)
%6602 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%6603 = load float, float* %6602
%6604 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%6605 = load float, float* %6604
%6606 = call float @llvm.fmuladd.f32(float %6603, float %6605, float %6601)
%6607 = fcmp ogt float %6606, 0.000000e+00
br i1 %6607, label %6608, label %6609
6608: ; preds = %6483
store i32 0, i32* %7
br label %37477
6609: ; preds = %6483
store i32 1, i32* %7
br label %37477
6610: ; preds = %6354
%6611 = load float*, float** %9
%6612 = load float*, float** %10
%6613 = load float*, float** %8
%6614 = load float*, float** %11
%6615 = load float*, float** %13
%6616 = load float*, float** %12
%6617 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%6618 = getelementptr inbounds [3 x float], [3 x float]* %23, i64 0, i64 0
%6619 = call i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...) bitcast (i32 (...)* @coplanar_tri_tri3d to i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...)*)(float* %6611, float* %6612, float* %6613, float* %6614, float* %6615, float* %6616, float* %6617, float* %6618)
store i32 %6619, i32* %7
br label %37477
6620: ; preds = %3535
%6621 = load float, float* %17
%6622 = fcmp ogt float %6621, 0.000000e+00
br i1 %6622, label %6623, label %7388
6623: ; preds = %6620
%6624 = load float, float* %18
%6625 = fcmp ogt float %6624, 0.000000e+00
br i1 %6625, label %6626, label %6879
6626: ; preds = %6623
%6627 = load float*, float** %13
%6628 = getelementptr inbounds float, float* %6627, i64 0
%6629 = load float, float* %6628
%6630 = load float*, float** %10
%6631 = getelementptr inbounds float, float* %6630, i64 0
%6632 = load float, float* %6631
%6633 = fsub float %6629, %6632
%6634 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %6633, float* %6634
%6635 = load float*, float** %13
%6636 = getelementptr inbounds float, float* %6635, i64 1
%6637 = load float, float* %6636
%6638 = load float*, float** %10
%6639 = getelementptr inbounds float, float* %6638, i64 1
%6640 = load float, float* %6639
%6641 = fsub float %6637, %6640
%6642 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %6641, float* %6642
%6643 = load float*, float** %13
%6644 = getelementptr inbounds float, float* %6643, i64 2
%6645 = load float, float* %6644
%6646 = load float*, float** %10
%6647 = getelementptr inbounds float, float* %6646, i64 2
%6648 = load float, float* %6647
%6649 = fsub float %6645, %6648
%6650 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %6649, float* %6650
%6651 = load float*, float** %8
%6652 = getelementptr inbounds float, float* %6651, i64 0
%6653 = load float, float* %6652
%6654 = load float*, float** %10
%6655 = getelementptr inbounds float, float* %6654, i64 0
%6656 = load float, float* %6655
%6657 = fsub float %6653, %6656
%6658 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %6657, float* %6658
%6659 = load float*, float** %8
%6660 = getelementptr inbounds float, float* %6659, i64 1
%6661 = load float, float* %6660
%6662 = load float*, float** %10
%6663 = getelementptr inbounds float, float* %6662, i64 1
%6664 = load float, float* %6663
%6665 = fsub float %6661, %6664
%6666 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %6665, float* %6666
%6667 = load float*, float** %8
%6668 = getelementptr inbounds float, float* %6667, i64 2
%6669 = load float, float* %6668
%6670 = load float*, float** %10
%6671 = getelementptr inbounds float, float* %6670, i64 2
%6672 = load float, float* %6671
%6673 = fsub float %6669, %6672
%6674 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %6673, float* %6674
%6675 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%6676 = load float, float* %6675
%6677 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%6678 = load float, float* %6677
%6679 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%6680 = load float, float* %6679
%6681 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%6682 = load float, float* %6681
%6683 = fmul float %6680, %6682
%6684 = fneg float %6683
%6685 = call float @llvm.fmuladd.f32(float %6676, float %6678, float %6684)
%6686 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %6685, float* %6686
%6687 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%6688 = load float, float* %6687
%6689 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%6690 = load float, float* %6689
%6691 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%6692 = load float, float* %6691
%6693 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%6694 = load float, float* %6693
%6695 = fmul float %6692, %6694
%6696 = fneg float %6695
%6697 = call float @llvm.fmuladd.f32(float %6688, float %6690, float %6696)
%6698 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %6697, float* %6698
%6699 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%6700 = load float, float* %6699
%6701 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%6702 = load float, float* %6701
%6703 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%6704 = load float, float* %6703
%6705 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%6706 = load float, float* %6705
%6707 = fmul float %6704, %6706
%6708 = fneg float %6707
%6709 = call float @llvm.fmuladd.f32(float %6700, float %6702, float %6708)
%6710 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %6709, float* %6710
%6711 = load float*, float** %11
%6712 = getelementptr inbounds float, float* %6711, i64 0
%6713 = load float, float* %6712
%6714 = load float*, float** %10
%6715 = getelementptr inbounds float, float* %6714, i64 0
%6716 = load float, float* %6715
%6717 = fsub float %6713, %6716
%6718 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %6717, float* %6718
%6719 = load float*, float** %11
%6720 = getelementptr inbounds float, float* %6719, i64 1
%6721 = load float, float* %6720
%6722 = load float*, float** %10
%6723 = getelementptr inbounds float, float* %6722, i64 1
%6724 = load float, float* %6723
%6725 = fsub float %6721, %6724
%6726 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %6725, float* %6726
%6727 = load float*, float** %11
%6728 = getelementptr inbounds float, float* %6727, i64 2
%6729 = load float, float* %6728
%6730 = load float*, float** %10
%6731 = getelementptr inbounds float, float* %6730, i64 2
%6732 = load float, float* %6731
%6733 = fsub float %6729, %6732
%6734 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %6733, float* %6734
%6735 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%6736 = load float, float* %6735
%6737 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%6738 = load float, float* %6737
%6739 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%6740 = load float, float* %6739
%6741 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%6742 = load float, float* %6741
%6743 = fmul float %6740, %6742
%6744 = call float @llvm.fmuladd.f32(float %6736, float %6738, float %6743)
%6745 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%6746 = load float, float* %6745
%6747 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%6748 = load float, float* %6747
%6749 = call float @llvm.fmuladd.f32(float %6746, float %6748, float %6744)
%6750 = fcmp ogt float %6749, 0.000000e+00
br i1 %6750, label %6751, label %6752
6751: ; preds = %6626
store i32 0, i32* %7
br label %37477
6752: ; preds = %6626
%6753 = load float*, float** %13
%6754 = getelementptr inbounds float, float* %6753, i64 0
%6755 = load float, float* %6754
%6756 = load float*, float** %8
%6757 = getelementptr inbounds float, float* %6756, i64 0
%6758 = load float, float* %6757
%6759 = fsub float %6755, %6758
%6760 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %6759, float* %6760
%6761 = load float*, float** %13
%6762 = getelementptr inbounds float, float* %6761, i64 1
%6763 = load float, float* %6762
%6764 = load float*, float** %8
%6765 = getelementptr inbounds float, float* %6764, i64 1
%6766 = load float, float* %6765
%6767 = fsub float %6763, %6766
%6768 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %6767, float* %6768
%6769 = load float*, float** %13
%6770 = getelementptr inbounds float, float* %6769, i64 2
%6771 = load float, float* %6770
%6772 = load float*, float** %8
%6773 = getelementptr inbounds float, float* %6772, i64 2
%6774 = load float, float* %6773
%6775 = fsub float %6771, %6774
%6776 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %6775, float* %6776
%6777 = load float*, float** %9
%6778 = getelementptr inbounds float, float* %6777, i64 0
%6779 = load float, float* %6778
%6780 = load float*, float** %8
%6781 = getelementptr inbounds float, float* %6780, i64 0
%6782 = load float, float* %6781
%6783 = fsub float %6779, %6782
%6784 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %6783, float* %6784
%6785 = load float*, float** %9
%6786 = getelementptr inbounds float, float* %6785, i64 1
%6787 = load float, float* %6786
%6788 = load float*, float** %8
%6789 = getelementptr inbounds float, float* %6788, i64 1
%6790 = load float, float* %6789
%6791 = fsub float %6787, %6790
%6792 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %6791, float* %6792
%6793 = load float*, float** %9
%6794 = getelementptr inbounds float, float* %6793, i64 2
%6795 = load float, float* %6794
%6796 = load float*, float** %8
%6797 = getelementptr inbounds float, float* %6796, i64 2
%6798 = load float, float* %6797
%6799 = fsub float %6795, %6798
%6800 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %6799, float* %6800
%6801 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%6802 = load float, float* %6801
%6803 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%6804 = load float, float* %6803
%6805 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%6806 = load float, float* %6805
%6807 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%6808 = load float, float* %6807
%6809 = fmul float %6806, %6808
%6810 = fneg float %6809
%6811 = call float @llvm.fmuladd.f32(float %6802, float %6804, float %6810)
%6812 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %6811, float* %6812
%6813 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%6814 = load float, float* %6813
%6815 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%6816 = load float, float* %6815
%6817 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%6818 = load float, float* %6817
%6819 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%6820 = load float, float* %6819
%6821 = fmul float %6818, %6820
%6822 = fneg float %6821
%6823 = call float @llvm.fmuladd.f32(float %6814, float %6816, float %6822)
%6824 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %6823, float* %6824
%6825 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%6826 = load float, float* %6825
%6827 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%6828 = load float, float* %6827
%6829 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%6830 = load float, float* %6829
%6831 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%6832 = load float, float* %6831
%6833 = fmul float %6830, %6832
%6834 = fneg float %6833
%6835 = call float @llvm.fmuladd.f32(float %6826, float %6828, float %6834)
%6836 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %6835, float* %6836
%6837 = load float*, float** %12
%6838 = getelementptr inbounds float, float* %6837, i64 0
%6839 = load float, float* %6838
%6840 = load float*, float** %8
%6841 = getelementptr inbounds float, float* %6840, i64 0
%6842 = load float, float* %6841
%6843 = fsub float %6839, %6842
%6844 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %6843, float* %6844
%6845 = load float*, float** %12
%6846 = getelementptr inbounds float, float* %6845, i64 1
%6847 = load float, float* %6846
%6848 = load float*, float** %8
%6849 = getelementptr inbounds float, float* %6848, i64 1
%6850 = load float, float* %6849
%6851 = fsub float %6847, %6850
%6852 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %6851, float* %6852
%6853 = load float*, float** %12
%6854 = getelementptr inbounds float, float* %6853, i64 2
%6855 = load float, float* %6854
%6856 = load float*, float** %8
%6857 = getelementptr inbounds float, float* %6856, i64 2
%6858 = load float, float* %6857
%6859 = fsub float %6855, %6858
%6860 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %6859, float* %6860
%6861 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%6862 = load float, float* %6861
%6863 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%6864 = load float, float* %6863
%6865 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%6866 = load float, float* %6865
%6867 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%6868 = load float, float* %6867
%6869 = fmul float %6866, %6868
%6870 = call float @llvm.fmuladd.f32(float %6862, float %6864, float %6869)
%6871 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%6872 = load float, float* %6871
%6873 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%6874 = load float, float* %6873
%6875 = call float @llvm.fmuladd.f32(float %6872, float %6874, float %6870)
%6876 = fcmp ogt float %6875, 0.000000e+00
br i1 %6876, label %6877, label %6878
6877: ; preds = %6752
store i32 0, i32* %7
br label %37477
6878: ; preds = %6752
store i32 1, i32* %7
br label %37477
6879: ; preds = %6623
%6880 = load float, float* %19
%6881 = fcmp ogt float %6880, 0.000000e+00
br i1 %6881, label %6882, label %7135
6882: ; preds = %6879
%6883 = load float*, float** %12
%6884 = getelementptr inbounds float, float* %6883, i64 0
%6885 = load float, float* %6884
%6886 = load float*, float** %10
%6887 = getelementptr inbounds float, float* %6886, i64 0
%6888 = load float, float* %6887
%6889 = fsub float %6885, %6888
%6890 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %6889, float* %6890
%6891 = load float*, float** %12
%6892 = getelementptr inbounds float, float* %6891, i64 1
%6893 = load float, float* %6892
%6894 = load float*, float** %10
%6895 = getelementptr inbounds float, float* %6894, i64 1
%6896 = load float, float* %6895
%6897 = fsub float %6893, %6896
%6898 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %6897, float* %6898
%6899 = load float*, float** %12
%6900 = getelementptr inbounds float, float* %6899, i64 2
%6901 = load float, float* %6900
%6902 = load float*, float** %10
%6903 = getelementptr inbounds float, float* %6902, i64 2
%6904 = load float, float* %6903
%6905 = fsub float %6901, %6904
%6906 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %6905, float* %6906
%6907 = load float*, float** %8
%6908 = getelementptr inbounds float, float* %6907, i64 0
%6909 = load float, float* %6908
%6910 = load float*, float** %10
%6911 = getelementptr inbounds float, float* %6910, i64 0
%6912 = load float, float* %6911
%6913 = fsub float %6909, %6912
%6914 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %6913, float* %6914
%6915 = load float*, float** %8
%6916 = getelementptr inbounds float, float* %6915, i64 1
%6917 = load float, float* %6916
%6918 = load float*, float** %10
%6919 = getelementptr inbounds float, float* %6918, i64 1
%6920 = load float, float* %6919
%6921 = fsub float %6917, %6920
%6922 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %6921, float* %6922
%6923 = load float*, float** %8
%6924 = getelementptr inbounds float, float* %6923, i64 2
%6925 = load float, float* %6924
%6926 = load float*, float** %10
%6927 = getelementptr inbounds float, float* %6926, i64 2
%6928 = load float, float* %6927
%6929 = fsub float %6925, %6928
%6930 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %6929, float* %6930
%6931 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%6932 = load float, float* %6931
%6933 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%6934 = load float, float* %6933
%6935 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%6936 = load float, float* %6935
%6937 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%6938 = load float, float* %6937
%6939 = fmul float %6936, %6938
%6940 = fneg float %6939
%6941 = call float @llvm.fmuladd.f32(float %6932, float %6934, float %6940)
%6942 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %6941, float* %6942
%6943 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%6944 = load float, float* %6943
%6945 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%6946 = load float, float* %6945
%6947 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%6948 = load float, float* %6947
%6949 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%6950 = load float, float* %6949
%6951 = fmul float %6948, %6950
%6952 = fneg float %6951
%6953 = call float @llvm.fmuladd.f32(float %6944, float %6946, float %6952)
%6954 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %6953, float* %6954
%6955 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%6956 = load float, float* %6955
%6957 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%6958 = load float, float* %6957
%6959 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%6960 = load float, float* %6959
%6961 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%6962 = load float, float* %6961
%6963 = fmul float %6960, %6962
%6964 = fneg float %6963
%6965 = call float @llvm.fmuladd.f32(float %6956, float %6958, float %6964)
%6966 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %6965, float* %6966
%6967 = load float*, float** %13
%6968 = getelementptr inbounds float, float* %6967, i64 0
%6969 = load float, float* %6968
%6970 = load float*, float** %10
%6971 = getelementptr inbounds float, float* %6970, i64 0
%6972 = load float, float* %6971
%6973 = fsub float %6969, %6972
%6974 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %6973, float* %6974
%6975 = load float*, float** %13
%6976 = getelementptr inbounds float, float* %6975, i64 1
%6977 = load float, float* %6976
%6978 = load float*, float** %10
%6979 = getelementptr inbounds float, float* %6978, i64 1
%6980 = load float, float* %6979
%6981 = fsub float %6977, %6980
%6982 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %6981, float* %6982
%6983 = load float*, float** %13
%6984 = getelementptr inbounds float, float* %6983, i64 2
%6985 = load float, float* %6984
%6986 = load float*, float** %10
%6987 = getelementptr inbounds float, float* %6986, i64 2
%6988 = load float, float* %6987
%6989 = fsub float %6985, %6988
%6990 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %6989, float* %6990
%6991 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%6992 = load float, float* %6991
%6993 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%6994 = load float, float* %6993
%6995 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%6996 = load float, float* %6995
%6997 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%6998 = load float, float* %6997
%6999 = fmul float %6996, %6998
%7000 = call float @llvm.fmuladd.f32(float %6992, float %6994, float %6999)
%7001 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%7002 = load float, float* %7001
%7003 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%7004 = load float, float* %7003
%7005 = call float @llvm.fmuladd.f32(float %7002, float %7004, float %7000)
%7006 = fcmp ogt float %7005, 0.000000e+00
br i1 %7006, label %7007, label %7008
7007: ; preds = %6882
store i32 0, i32* %7
br label %37477
7008: ; preds = %6882
%7009 = load float*, float** %12
%7010 = getelementptr inbounds float, float* %7009, i64 0
%7011 = load float, float* %7010
%7012 = load float*, float** %8
%7013 = getelementptr inbounds float, float* %7012, i64 0
%7014 = load float, float* %7013
%7015 = fsub float %7011, %7014
%7016 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %7015, float* %7016
%7017 = load float*, float** %12
%7018 = getelementptr inbounds float, float* %7017, i64 1
%7019 = load float, float* %7018
%7020 = load float*, float** %8
%7021 = getelementptr inbounds float, float* %7020, i64 1
%7022 = load float, float* %7021
%7023 = fsub float %7019, %7022
%7024 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %7023, float* %7024
%7025 = load float*, float** %12
%7026 = getelementptr inbounds float, float* %7025, i64 2
%7027 = load float, float* %7026
%7028 = load float*, float** %8
%7029 = getelementptr inbounds float, float* %7028, i64 2
%7030 = load float, float* %7029
%7031 = fsub float %7027, %7030
%7032 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %7031, float* %7032
%7033 = load float*, float** %9
%7034 = getelementptr inbounds float, float* %7033, i64 0
%7035 = load float, float* %7034
%7036 = load float*, float** %8
%7037 = getelementptr inbounds float, float* %7036, i64 0
%7038 = load float, float* %7037
%7039 = fsub float %7035, %7038
%7040 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %7039, float* %7040
%7041 = load float*, float** %9
%7042 = getelementptr inbounds float, float* %7041, i64 1
%7043 = load float, float* %7042
%7044 = load float*, float** %8
%7045 = getelementptr inbounds float, float* %7044, i64 1
%7046 = load float, float* %7045
%7047 = fsub float %7043, %7046
%7048 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %7047, float* %7048
%7049 = load float*, float** %9
%7050 = getelementptr inbounds float, float* %7049, i64 2
%7051 = load float, float* %7050
%7052 = load float*, float** %8
%7053 = getelementptr inbounds float, float* %7052, i64 2
%7054 = load float, float* %7053
%7055 = fsub float %7051, %7054
%7056 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %7055, float* %7056
%7057 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%7058 = load float, float* %7057
%7059 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%7060 = load float, float* %7059
%7061 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%7062 = load float, float* %7061
%7063 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%7064 = load float, float* %7063
%7065 = fmul float %7062, %7064
%7066 = fneg float %7065
%7067 = call float @llvm.fmuladd.f32(float %7058, float %7060, float %7066)
%7068 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %7067, float* %7068
%7069 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%7070 = load float, float* %7069
%7071 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%7072 = load float, float* %7071
%7073 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%7074 = load float, float* %7073
%7075 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%7076 = load float, float* %7075
%7077 = fmul float %7074, %7076
%7078 = fneg float %7077
%7079 = call float @llvm.fmuladd.f32(float %7070, float %7072, float %7078)
%7080 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %7079, float* %7080
%7081 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%7082 = load float, float* %7081
%7083 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%7084 = load float, float* %7083
%7085 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%7086 = load float, float* %7085
%7087 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%7088 = load float, float* %7087
%7089 = fmul float %7086, %7088
%7090 = fneg float %7089
%7091 = call float @llvm.fmuladd.f32(float %7082, float %7084, float %7090)
%7092 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %7091, float* %7092
%7093 = load float*, float** %11
%7094 = getelementptr inbounds float, float* %7093, i64 0
%7095 = load float, float* %7094
%7096 = load float*, float** %8
%7097 = getelementptr inbounds float, float* %7096, i64 0
%7098 = load float, float* %7097
%7099 = fsub float %7095, %7098
%7100 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %7099, float* %7100
%7101 = load float*, float** %11
%7102 = getelementptr inbounds float, float* %7101, i64 1
%7103 = load float, float* %7102
%7104 = load float*, float** %8
%7105 = getelementptr inbounds float, float* %7104, i64 1
%7106 = load float, float* %7105
%7107 = fsub float %7103, %7106
%7108 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %7107, float* %7108
%7109 = load float*, float** %11
%7110 = getelementptr inbounds float, float* %7109, i64 2
%7111 = load float, float* %7110
%7112 = load float*, float** %8
%7113 = getelementptr inbounds float, float* %7112, i64 2
%7114 = load float, float* %7113
%7115 = fsub float %7111, %7114
%7116 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %7115, float* %7116
%7117 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%7118 = load float, float* %7117
%7119 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%7120 = load float, float* %7119
%7121 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%7122 = load float, float* %7121
%7123 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%7124 = load float, float* %7123
%7125 = fmul float %7122, %7124
%7126 = call float @llvm.fmuladd.f32(float %7118, float %7120, float %7125)
%7127 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%7128 = load float, float* %7127
%7129 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%7130 = load float, float* %7129
%7131 = call float @llvm.fmuladd.f32(float %7128, float %7130, float %7126)
%7132 = fcmp ogt float %7131, 0.000000e+00
br i1 %7132, label %7133, label %7134
7133: ; preds = %7008
store i32 0, i32* %7
br label %37477
7134: ; preds = %7008
store i32 1, i32* %7
br label %37477
7135: ; preds = %6879
%7136 = load float*, float** %11
%7137 = getelementptr inbounds float, float* %7136, i64 0
%7138 = load float, float* %7137
%7139 = load float*, float** %9
%7140 = getelementptr inbounds float, float* %7139, i64 0
%7141 = load float, float* %7140
%7142 = fsub float %7138, %7141
%7143 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %7142, float* %7143
%7144 = load float*, float** %11
%7145 = getelementptr inbounds float, float* %7144, i64 1
%7146 = load float, float* %7145
%7147 = load float*, float** %9
%7148 = getelementptr inbounds float, float* %7147, i64 1
%7149 = load float, float* %7148
%7150 = fsub float %7146, %7149
%7151 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %7150, float* %7151
%7152 = load float*, float** %11
%7153 = getelementptr inbounds float, float* %7152, i64 2
%7154 = load float, float* %7153
%7155 = load float*, float** %9
%7156 = getelementptr inbounds float, float* %7155, i64 2
%7157 = load float, float* %7156
%7158 = fsub float %7154, %7157
%7159 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %7158, float* %7159
%7160 = load float*, float** %8
%7161 = getelementptr inbounds float, float* %7160, i64 0
%7162 = load float, float* %7161
%7163 = load float*, float** %9
%7164 = getelementptr inbounds float, float* %7163, i64 0
%7165 = load float, float* %7164
%7166 = fsub float %7162, %7165
%7167 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %7166, float* %7167
%7168 = load float*, float** %8
%7169 = getelementptr inbounds float, float* %7168, i64 1
%7170 = load float, float* %7169
%7171 = load float*, float** %9
%7172 = getelementptr inbounds float, float* %7171, i64 1
%7173 = load float, float* %7172
%7174 = fsub float %7170, %7173
%7175 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %7174, float* %7175
%7176 = load float*, float** %8
%7177 = getelementptr inbounds float, float* %7176, i64 2
%7178 = load float, float* %7177
%7179 = load float*, float** %9
%7180 = getelementptr inbounds float, float* %7179, i64 2
%7181 = load float, float* %7180
%7182 = fsub float %7178, %7181
%7183 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %7182, float* %7183
%7184 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%7185 = load float, float* %7184
%7186 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%7187 = load float, float* %7186
%7188 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%7189 = load float, float* %7188
%7190 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%7191 = load float, float* %7190
%7192 = fmul float %7189, %7191
%7193 = fneg float %7192
%7194 = call float @llvm.fmuladd.f32(float %7185, float %7187, float %7193)
%7195 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %7194, float* %7195
%7196 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%7197 = load float, float* %7196
%7198 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%7199 = load float, float* %7198
%7200 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%7201 = load float, float* %7200
%7202 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%7203 = load float, float* %7202
%7204 = fmul float %7201, %7203
%7205 = fneg float %7204
%7206 = call float @llvm.fmuladd.f32(float %7197, float %7199, float %7205)
%7207 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %7206, float* %7207
%7208 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%7209 = load float, float* %7208
%7210 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%7211 = load float, float* %7210
%7212 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%7213 = load float, float* %7212
%7214 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%7215 = load float, float* %7214
%7216 = fmul float %7213, %7215
%7217 = fneg float %7216
%7218 = call float @llvm.fmuladd.f32(float %7209, float %7211, float %7217)
%7219 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %7218, float* %7219
%7220 = load float*, float** %12
%7221 = getelementptr inbounds float, float* %7220, i64 0
%7222 = load float, float* %7221
%7223 = load float*, float** %9
%7224 = getelementptr inbounds float, float* %7223, i64 0
%7225 = load float, float* %7224
%7226 = fsub float %7222, %7225
%7227 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %7226, float* %7227
%7228 = load float*, float** %12
%7229 = getelementptr inbounds float, float* %7228, i64 1
%7230 = load float, float* %7229
%7231 = load float*, float** %9
%7232 = getelementptr inbounds float, float* %7231, i64 1
%7233 = load float, float* %7232
%7234 = fsub float %7230, %7233
%7235 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %7234, float* %7235
%7236 = load float*, float** %12
%7237 = getelementptr inbounds float, float* %7236, i64 2
%7238 = load float, float* %7237
%7239 = load float*, float** %9
%7240 = getelementptr inbounds float, float* %7239, i64 2
%7241 = load float, float* %7240
%7242 = fsub float %7238, %7241
%7243 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %7242, float* %7243
%7244 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%7245 = load float, float* %7244
%7246 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%7247 = load float, float* %7246
%7248 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%7249 = load float, float* %7248
%7250 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%7251 = load float, float* %7250
%7252 = fmul float %7249, %7251
%7253 = call float @llvm.fmuladd.f32(float %7245, float %7247, float %7252)
%7254 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%7255 = load float, float* %7254
%7256 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%7257 = load float, float* %7256
%7258 = call float @llvm.fmuladd.f32(float %7255, float %7257, float %7253)
%7259 = fcmp ogt float %7258, 0.000000e+00
br i1 %7259, label %7260, label %7261
7260: ; preds = %7135
store i32 0, i32* %7
br label %37477
7261: ; preds = %7135
%7262 = load float*, float** %11
%7263 = getelementptr inbounds float, float* %7262, i64 0
%7264 = load float, float* %7263
%7265 = load float*, float** %8
%7266 = getelementptr inbounds float, float* %7265, i64 0
%7267 = load float, float* %7266
%7268 = fsub float %7264, %7267
%7269 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %7268, float* %7269
%7270 = load float*, float** %11
%7271 = getelementptr inbounds float, float* %7270, i64 1
%7272 = load float, float* %7271
%7273 = load float*, float** %8
%7274 = getelementptr inbounds float, float* %7273, i64 1
%7275 = load float, float* %7274
%7276 = fsub float %7272, %7275
%7277 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %7276, float* %7277
%7278 = load float*, float** %11
%7279 = getelementptr inbounds float, float* %7278, i64 2
%7280 = load float, float* %7279
%7281 = load float*, float** %8
%7282 = getelementptr inbounds float, float* %7281, i64 2
%7283 = load float, float* %7282
%7284 = fsub float %7280, %7283
%7285 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %7284, float* %7285
%7286 = load float*, float** %10
%7287 = getelementptr inbounds float, float* %7286, i64 0
%7288 = load float, float* %7287
%7289 = load float*, float** %8
%7290 = getelementptr inbounds float, float* %7289, i64 0
%7291 = load float, float* %7290
%7292 = fsub float %7288, %7291
%7293 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %7292, float* %7293
%7294 = load float*, float** %10
%7295 = getelementptr inbounds float, float* %7294, i64 1
%7296 = load float, float* %7295
%7297 = load float*, float** %8
%7298 = getelementptr inbounds float, float* %7297, i64 1
%7299 = load float, float* %7298
%7300 = fsub float %7296, %7299
%7301 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %7300, float* %7301
%7302 = load float*, float** %10
%7303 = getelementptr inbounds float, float* %7302, i64 2
%7304 = load float, float* %7303
%7305 = load float*, float** %8
%7306 = getelementptr inbounds float, float* %7305, i64 2
%7307 = load float, float* %7306
%7308 = fsub float %7304, %7307
%7309 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %7308, float* %7309
%7310 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%7311 = load float, float* %7310
%7312 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%7313 = load float, float* %7312
%7314 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%7315 = load float, float* %7314
%7316 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%7317 = load float, float* %7316
%7318 = fmul float %7315, %7317
%7319 = fneg float %7318
%7320 = call float @llvm.fmuladd.f32(float %7311, float %7313, float %7319)
%7321 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %7320, float* %7321
%7322 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%7323 = load float, float* %7322
%7324 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%7325 = load float, float* %7324
%7326 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%7327 = load float, float* %7326
%7328 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%7329 = load float, float* %7328
%7330 = fmul float %7327, %7329
%7331 = fneg float %7330
%7332 = call float @llvm.fmuladd.f32(float %7323, float %7325, float %7331)
%7333 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %7332, float* %7333
%7334 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%7335 = load float, float* %7334
%7336 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%7337 = load float, float* %7336
%7338 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%7339 = load float, float* %7338
%7340 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%7341 = load float, float* %7340
%7342 = fmul float %7339, %7341
%7343 = fneg float %7342
%7344 = call float @llvm.fmuladd.f32(float %7335, float %7337, float %7343)
%7345 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %7344, float* %7345
%7346 = load float*, float** %13
%7347 = getelementptr inbounds float, float* %7346, i64 0
%7348 = load float, float* %7347
%7349 = load float*, float** %8
%7350 = getelementptr inbounds float, float* %7349, i64 0
%7351 = load float, float* %7350
%7352 = fsub float %7348, %7351
%7353 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %7352, float* %7353
%7354 = load float*, float** %13
%7355 = getelementptr inbounds float, float* %7354, i64 1
%7356 = load float, float* %7355
%7357 = load float*, float** %8
%7358 = getelementptr inbounds float, float* %7357, i64 1
%7359 = load float, float* %7358
%7360 = fsub float %7356, %7359
%7361 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %7360, float* %7361
%7362 = load float*, float** %13
%7363 = getelementptr inbounds float, float* %7362, i64 2
%7364 = load float, float* %7363
%7365 = load float*, float** %8
%7366 = getelementptr inbounds float, float* %7365, i64 2
%7367 = load float, float* %7366
%7368 = fsub float %7364, %7367
%7369 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %7368, float* %7369
%7370 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%7371 = load float, float* %7370
%7372 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%7373 = load float, float* %7372
%7374 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%7375 = load float, float* %7374
%7376 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%7377 = load float, float* %7376
%7378 = fmul float %7375, %7377
%7379 = call float @llvm.fmuladd.f32(float %7371, float %7373, float %7378)
%7380 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%7381 = load float, float* %7380
%7382 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%7383 = load float, float* %7382
%7384 = call float @llvm.fmuladd.f32(float %7381, float %7383, float %7379)
%7385 = fcmp ogt float %7384, 0.000000e+00
br i1 %7385, label %7386, label %7387
7386: ; preds = %7261
store i32 0, i32* %7
br label %37477
7387: ; preds = %7261
store i32 1, i32* %7
br label %37477
7388: ; preds = %6620
%7389 = load float, float* %17
%7390 = fcmp olt float %7389, 0.000000e+00
br i1 %7390, label %7391, label %8156
7391: ; preds = %7388
%7392 = load float, float* %18
%7393 = fcmp olt float %7392, 0.000000e+00
br i1 %7393, label %7394, label %7647
7394: ; preds = %7391
%7395 = load float*, float** %13
%7396 = getelementptr inbounds float, float* %7395, i64 0
%7397 = load float, float* %7396
%7398 = load float*, float** %9
%7399 = getelementptr inbounds float, float* %7398, i64 0
%7400 = load float, float* %7399
%7401 = fsub float %7397, %7400
%7402 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %7401, float* %7402
%7403 = load float*, float** %13
%7404 = getelementptr inbounds float, float* %7403, i64 1
%7405 = load float, float* %7404
%7406 = load float*, float** %9
%7407 = getelementptr inbounds float, float* %7406, i64 1
%7408 = load float, float* %7407
%7409 = fsub float %7405, %7408
%7410 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %7409, float* %7410
%7411 = load float*, float** %13
%7412 = getelementptr inbounds float, float* %7411, i64 2
%7413 = load float, float* %7412
%7414 = load float*, float** %9
%7415 = getelementptr inbounds float, float* %7414, i64 2
%7416 = load float, float* %7415
%7417 = fsub float %7413, %7416
%7418 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %7417, float* %7418
%7419 = load float*, float** %8
%7420 = getelementptr inbounds float, float* %7419, i64 0
%7421 = load float, float* %7420
%7422 = load float*, float** %9
%7423 = getelementptr inbounds float, float* %7422, i64 0
%7424 = load float, float* %7423
%7425 = fsub float %7421, %7424
%7426 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %7425, float* %7426
%7427 = load float*, float** %8
%7428 = getelementptr inbounds float, float* %7427, i64 1
%7429 = load float, float* %7428
%7430 = load float*, float** %9
%7431 = getelementptr inbounds float, float* %7430, i64 1
%7432 = load float, float* %7431
%7433 = fsub float %7429, %7432
%7434 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %7433, float* %7434
%7435 = load float*, float** %8
%7436 = getelementptr inbounds float, float* %7435, i64 2
%7437 = load float, float* %7436
%7438 = load float*, float** %9
%7439 = getelementptr inbounds float, float* %7438, i64 2
%7440 = load float, float* %7439
%7441 = fsub float %7437, %7440
%7442 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %7441, float* %7442
%7443 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%7444 = load float, float* %7443
%7445 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%7446 = load float, float* %7445
%7447 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%7448 = load float, float* %7447
%7449 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%7450 = load float, float* %7449
%7451 = fmul float %7448, %7450
%7452 = fneg float %7451
%7453 = call float @llvm.fmuladd.f32(float %7444, float %7446, float %7452)
%7454 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %7453, float* %7454
%7455 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%7456 = load float, float* %7455
%7457 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%7458 = load float, float* %7457
%7459 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%7460 = load float, float* %7459
%7461 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%7462 = load float, float* %7461
%7463 = fmul float %7460, %7462
%7464 = fneg float %7463
%7465 = call float @llvm.fmuladd.f32(float %7456, float %7458, float %7464)
%7466 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %7465, float* %7466
%7467 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%7468 = load float, float* %7467
%7469 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%7470 = load float, float* %7469
%7471 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%7472 = load float, float* %7471
%7473 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%7474 = load float, float* %7473
%7475 = fmul float %7472, %7474
%7476 = fneg float %7475
%7477 = call float @llvm.fmuladd.f32(float %7468, float %7470, float %7476)
%7478 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %7477, float* %7478
%7479 = load float*, float** %11
%7480 = getelementptr inbounds float, float* %7479, i64 0
%7481 = load float, float* %7480
%7482 = load float*, float** %9
%7483 = getelementptr inbounds float, float* %7482, i64 0
%7484 = load float, float* %7483
%7485 = fsub float %7481, %7484
%7486 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %7485, float* %7486
%7487 = load float*, float** %11
%7488 = getelementptr inbounds float, float* %7487, i64 1
%7489 = load float, float* %7488
%7490 = load float*, float** %9
%7491 = getelementptr inbounds float, float* %7490, i64 1
%7492 = load float, float* %7491
%7493 = fsub float %7489, %7492
%7494 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %7493, float* %7494
%7495 = load float*, float** %11
%7496 = getelementptr inbounds float, float* %7495, i64 2
%7497 = load float, float* %7496
%7498 = load float*, float** %9
%7499 = getelementptr inbounds float, float* %7498, i64 2
%7500 = load float, float* %7499
%7501 = fsub float %7497, %7500
%7502 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %7501, float* %7502
%7503 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%7504 = load float, float* %7503
%7505 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%7506 = load float, float* %7505
%7507 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%7508 = load float, float* %7507
%7509 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%7510 = load float, float* %7509
%7511 = fmul float %7508, %7510
%7512 = call float @llvm.fmuladd.f32(float %7504, float %7506, float %7511)
%7513 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%7514 = load float, float* %7513
%7515 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%7516 = load float, float* %7515
%7517 = call float @llvm.fmuladd.f32(float %7514, float %7516, float %7512)
%7518 = fcmp ogt float %7517, 0.000000e+00
br i1 %7518, label %7519, label %7520
7519: ; preds = %7394
store i32 0, i32* %7
br label %37477
7520: ; preds = %7394
%7521 = load float*, float** %13
%7522 = getelementptr inbounds float, float* %7521, i64 0
%7523 = load float, float* %7522
%7524 = load float*, float** %8
%7525 = getelementptr inbounds float, float* %7524, i64 0
%7526 = load float, float* %7525
%7527 = fsub float %7523, %7526
%7528 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %7527, float* %7528
%7529 = load float*, float** %13
%7530 = getelementptr inbounds float, float* %7529, i64 1
%7531 = load float, float* %7530
%7532 = load float*, float** %8
%7533 = getelementptr inbounds float, float* %7532, i64 1
%7534 = load float, float* %7533
%7535 = fsub float %7531, %7534
%7536 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %7535, float* %7536
%7537 = load float*, float** %13
%7538 = getelementptr inbounds float, float* %7537, i64 2
%7539 = load float, float* %7538
%7540 = load float*, float** %8
%7541 = getelementptr inbounds float, float* %7540, i64 2
%7542 = load float, float* %7541
%7543 = fsub float %7539, %7542
%7544 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %7543, float* %7544
%7545 = load float*, float** %10
%7546 = getelementptr inbounds float, float* %7545, i64 0
%7547 = load float, float* %7546
%7548 = load float*, float** %8
%7549 = getelementptr inbounds float, float* %7548, i64 0
%7550 = load float, float* %7549
%7551 = fsub float %7547, %7550
%7552 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %7551, float* %7552
%7553 = load float*, float** %10
%7554 = getelementptr inbounds float, float* %7553, i64 1
%7555 = load float, float* %7554
%7556 = load float*, float** %8
%7557 = getelementptr inbounds float, float* %7556, i64 1
%7558 = load float, float* %7557
%7559 = fsub float %7555, %7558
%7560 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %7559, float* %7560
%7561 = load float*, float** %10
%7562 = getelementptr inbounds float, float* %7561, i64 2
%7563 = load float, float* %7562
%7564 = load float*, float** %8
%7565 = getelementptr inbounds float, float* %7564, i64 2
%7566 = load float, float* %7565
%7567 = fsub float %7563, %7566
%7568 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %7567, float* %7568
%7569 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%7570 = load float, float* %7569
%7571 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%7572 = load float, float* %7571
%7573 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%7574 = load float, float* %7573
%7575 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%7576 = load float, float* %7575
%7577 = fmul float %7574, %7576
%7578 = fneg float %7577
%7579 = call float @llvm.fmuladd.f32(float %7570, float %7572, float %7578)
%7580 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %7579, float* %7580
%7581 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%7582 = load float, float* %7581
%7583 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%7584 = load float, float* %7583
%7585 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%7586 = load float, float* %7585
%7587 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%7588 = load float, float* %7587
%7589 = fmul float %7586, %7588
%7590 = fneg float %7589
%7591 = call float @llvm.fmuladd.f32(float %7582, float %7584, float %7590)
%7592 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %7591, float* %7592
%7593 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%7594 = load float, float* %7593
%7595 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%7596 = load float, float* %7595
%7597 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%7598 = load float, float* %7597
%7599 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%7600 = load float, float* %7599
%7601 = fmul float %7598, %7600
%7602 = fneg float %7601
%7603 = call float @llvm.fmuladd.f32(float %7594, float %7596, float %7602)
%7604 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %7603, float* %7604
%7605 = load float*, float** %12
%7606 = getelementptr inbounds float, float* %7605, i64 0
%7607 = load float, float* %7606
%7608 = load float*, float** %8
%7609 = getelementptr inbounds float, float* %7608, i64 0
%7610 = load float, float* %7609
%7611 = fsub float %7607, %7610
%7612 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %7611, float* %7612
%7613 = load float*, float** %12
%7614 = getelementptr inbounds float, float* %7613, i64 1
%7615 = load float, float* %7614
%7616 = load float*, float** %8
%7617 = getelementptr inbounds float, float* %7616, i64 1
%7618 = load float, float* %7617
%7619 = fsub float %7615, %7618
%7620 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %7619, float* %7620
%7621 = load float*, float** %12
%7622 = getelementptr inbounds float, float* %7621, i64 2
%7623 = load float, float* %7622
%7624 = load float*, float** %8
%7625 = getelementptr inbounds float, float* %7624, i64 2
%7626 = load float, float* %7625
%7627 = fsub float %7623, %7626
%7628 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %7627, float* %7628
%7629 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%7630 = load float, float* %7629
%7631 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%7632 = load float, float* %7631
%7633 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%7634 = load float, float* %7633
%7635 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%7636 = load float, float* %7635
%7637 = fmul float %7634, %7636
%7638 = call float @llvm.fmuladd.f32(float %7630, float %7632, float %7637)
%7639 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%7640 = load float, float* %7639
%7641 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%7642 = load float, float* %7641
%7643 = call float @llvm.fmuladd.f32(float %7640, float %7642, float %7638)
%7644 = fcmp ogt float %7643, 0.000000e+00
br i1 %7644, label %7645, label %7646
7645: ; preds = %7520
store i32 0, i32* %7
br label %37477
7646: ; preds = %7520
store i32 1, i32* %7
br label %37477
7647: ; preds = %7391
%7648 = load float, float* %19
%7649 = fcmp olt float %7648, 0.000000e+00
br i1 %7649, label %7650, label %7903
7650: ; preds = %7647
%7651 = load float*, float** %12
%7652 = getelementptr inbounds float, float* %7651, i64 0
%7653 = load float, float* %7652
%7654 = load float*, float** %9
%7655 = getelementptr inbounds float, float* %7654, i64 0
%7656 = load float, float* %7655
%7657 = fsub float %7653, %7656
%7658 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %7657, float* %7658
%7659 = load float*, float** %12
%7660 = getelementptr inbounds float, float* %7659, i64 1
%7661 = load float, float* %7660
%7662 = load float*, float** %9
%7663 = getelementptr inbounds float, float* %7662, i64 1
%7664 = load float, float* %7663
%7665 = fsub float %7661, %7664
%7666 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %7665, float* %7666
%7667 = load float*, float** %12
%7668 = getelementptr inbounds float, float* %7667, i64 2
%7669 = load float, float* %7668
%7670 = load float*, float** %9
%7671 = getelementptr inbounds float, float* %7670, i64 2
%7672 = load float, float* %7671
%7673 = fsub float %7669, %7672
%7674 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %7673, float* %7674
%7675 = load float*, float** %8
%7676 = getelementptr inbounds float, float* %7675, i64 0
%7677 = load float, float* %7676
%7678 = load float*, float** %9
%7679 = getelementptr inbounds float, float* %7678, i64 0
%7680 = load float, float* %7679
%7681 = fsub float %7677, %7680
%7682 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %7681, float* %7682
%7683 = load float*, float** %8
%7684 = getelementptr inbounds float, float* %7683, i64 1
%7685 = load float, float* %7684
%7686 = load float*, float** %9
%7687 = getelementptr inbounds float, float* %7686, i64 1
%7688 = load float, float* %7687
%7689 = fsub float %7685, %7688
%7690 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %7689, float* %7690
%7691 = load float*, float** %8
%7692 = getelementptr inbounds float, float* %7691, i64 2
%7693 = load float, float* %7692
%7694 = load float*, float** %9
%7695 = getelementptr inbounds float, float* %7694, i64 2
%7696 = load float, float* %7695
%7697 = fsub float %7693, %7696
%7698 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %7697, float* %7698
%7699 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%7700 = load float, float* %7699
%7701 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%7702 = load float, float* %7701
%7703 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%7704 = load float, float* %7703
%7705 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%7706 = load float, float* %7705
%7707 = fmul float %7704, %7706
%7708 = fneg float %7707
%7709 = call float @llvm.fmuladd.f32(float %7700, float %7702, float %7708)
%7710 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %7709, float* %7710
%7711 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%7712 = load float, float* %7711
%7713 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%7714 = load float, float* %7713
%7715 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%7716 = load float, float* %7715
%7717 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%7718 = load float, float* %7717
%7719 = fmul float %7716, %7718
%7720 = fneg float %7719
%7721 = call float @llvm.fmuladd.f32(float %7712, float %7714, float %7720)
%7722 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %7721, float* %7722
%7723 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%7724 = load float, float* %7723
%7725 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%7726 = load float, float* %7725
%7727 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%7728 = load float, float* %7727
%7729 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%7730 = load float, float* %7729
%7731 = fmul float %7728, %7730
%7732 = fneg float %7731
%7733 = call float @llvm.fmuladd.f32(float %7724, float %7726, float %7732)
%7734 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %7733, float* %7734
%7735 = load float*, float** %13
%7736 = getelementptr inbounds float, float* %7735, i64 0
%7737 = load float, float* %7736
%7738 = load float*, float** %9
%7739 = getelementptr inbounds float, float* %7738, i64 0
%7740 = load float, float* %7739
%7741 = fsub float %7737, %7740
%7742 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %7741, float* %7742
%7743 = load float*, float** %13
%7744 = getelementptr inbounds float, float* %7743, i64 1
%7745 = load float, float* %7744
%7746 = load float*, float** %9
%7747 = getelementptr inbounds float, float* %7746, i64 1
%7748 = load float, float* %7747
%7749 = fsub float %7745, %7748
%7750 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %7749, float* %7750
%7751 = load float*, float** %13
%7752 = getelementptr inbounds float, float* %7751, i64 2
%7753 = load float, float* %7752
%7754 = load float*, float** %9
%7755 = getelementptr inbounds float, float* %7754, i64 2
%7756 = load float, float* %7755
%7757 = fsub float %7753, %7756
%7758 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %7757, float* %7758
%7759 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%7760 = load float, float* %7759
%7761 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%7762 = load float, float* %7761
%7763 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%7764 = load float, float* %7763
%7765 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%7766 = load float, float* %7765
%7767 = fmul float %7764, %7766
%7768 = call float @llvm.fmuladd.f32(float %7760, float %7762, float %7767)
%7769 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%7770 = load float, float* %7769
%7771 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%7772 = load float, float* %7771
%7773 = call float @llvm.fmuladd.f32(float %7770, float %7772, float %7768)
%7774 = fcmp ogt float %7773, 0.000000e+00
br i1 %7774, label %7775, label %7776
7775: ; preds = %7650
store i32 0, i32* %7
br label %37477
7776: ; preds = %7650
%7777 = load float*, float** %12
%7778 = getelementptr inbounds float, float* %7777, i64 0
%7779 = load float, float* %7778
%7780 = load float*, float** %8
%7781 = getelementptr inbounds float, float* %7780, i64 0
%7782 = load float, float* %7781
%7783 = fsub float %7779, %7782
%7784 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %7783, float* %7784
%7785 = load float*, float** %12
%7786 = getelementptr inbounds float, float* %7785, i64 1
%7787 = load float, float* %7786
%7788 = load float*, float** %8
%7789 = getelementptr inbounds float, float* %7788, i64 1
%7790 = load float, float* %7789
%7791 = fsub float %7787, %7790
%7792 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %7791, float* %7792
%7793 = load float*, float** %12
%7794 = getelementptr inbounds float, float* %7793, i64 2
%7795 = load float, float* %7794
%7796 = load float*, float** %8
%7797 = getelementptr inbounds float, float* %7796, i64 2
%7798 = load float, float* %7797
%7799 = fsub float %7795, %7798
%7800 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %7799, float* %7800
%7801 = load float*, float** %10
%7802 = getelementptr inbounds float, float* %7801, i64 0
%7803 = load float, float* %7802
%7804 = load float*, float** %8
%7805 = getelementptr inbounds float, float* %7804, i64 0
%7806 = load float, float* %7805
%7807 = fsub float %7803, %7806
%7808 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %7807, float* %7808
%7809 = load float*, float** %10
%7810 = getelementptr inbounds float, float* %7809, i64 1
%7811 = load float, float* %7810
%7812 = load float*, float** %8
%7813 = getelementptr inbounds float, float* %7812, i64 1
%7814 = load float, float* %7813
%7815 = fsub float %7811, %7814
%7816 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %7815, float* %7816
%7817 = load float*, float** %10
%7818 = getelementptr inbounds float, float* %7817, i64 2
%7819 = load float, float* %7818
%7820 = load float*, float** %8
%7821 = getelementptr inbounds float, float* %7820, i64 2
%7822 = load float, float* %7821
%7823 = fsub float %7819, %7822
%7824 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %7823, float* %7824
%7825 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%7826 = load float, float* %7825
%7827 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%7828 = load float, float* %7827
%7829 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%7830 = load float, float* %7829
%7831 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%7832 = load float, float* %7831
%7833 = fmul float %7830, %7832
%7834 = fneg float %7833
%7835 = call float @llvm.fmuladd.f32(float %7826, float %7828, float %7834)
%7836 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %7835, float* %7836
%7837 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%7838 = load float, float* %7837
%7839 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%7840 = load float, float* %7839
%7841 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%7842 = load float, float* %7841
%7843 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%7844 = load float, float* %7843
%7845 = fmul float %7842, %7844
%7846 = fneg float %7845
%7847 = call float @llvm.fmuladd.f32(float %7838, float %7840, float %7846)
%7848 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %7847, float* %7848
%7849 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%7850 = load float, float* %7849
%7851 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%7852 = load float, float* %7851
%7853 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%7854 = load float, float* %7853
%7855 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%7856 = load float, float* %7855
%7857 = fmul float %7854, %7856
%7858 = fneg float %7857
%7859 = call float @llvm.fmuladd.f32(float %7850, float %7852, float %7858)
%7860 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %7859, float* %7860
%7861 = load float*, float** %11
%7862 = getelementptr inbounds float, float* %7861, i64 0
%7863 = load float, float* %7862
%7864 = load float*, float** %8
%7865 = getelementptr inbounds float, float* %7864, i64 0
%7866 = load float, float* %7865
%7867 = fsub float %7863, %7866
%7868 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %7867, float* %7868
%7869 = load float*, float** %11
%7870 = getelementptr inbounds float, float* %7869, i64 1
%7871 = load float, float* %7870
%7872 = load float*, float** %8
%7873 = getelementptr inbounds float, float* %7872, i64 1
%7874 = load float, float* %7873
%7875 = fsub float %7871, %7874
%7876 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %7875, float* %7876
%7877 = load float*, float** %11
%7878 = getelementptr inbounds float, float* %7877, i64 2
%7879 = load float, float* %7878
%7880 = load float*, float** %8
%7881 = getelementptr inbounds float, float* %7880, i64 2
%7882 = load float, float* %7881
%7883 = fsub float %7879, %7882
%7884 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %7883, float* %7884
%7885 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%7886 = load float, float* %7885
%7887 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%7888 = load float, float* %7887
%7889 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%7890 = load float, float* %7889
%7891 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%7892 = load float, float* %7891
%7893 = fmul float %7890, %7892
%7894 = call float @llvm.fmuladd.f32(float %7886, float %7888, float %7893)
%7895 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%7896 = load float, float* %7895
%7897 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%7898 = load float, float* %7897
%7899 = call float @llvm.fmuladd.f32(float %7896, float %7898, float %7894)
%7900 = fcmp ogt float %7899, 0.000000e+00
br i1 %7900, label %7901, label %7902
7901: ; preds = %7776
store i32 0, i32* %7
br label %37477
7902: ; preds = %7776
store i32 1, i32* %7
br label %37477
7903: ; preds = %7647
%7904 = load float*, float** %11
%7905 = getelementptr inbounds float, float* %7904, i64 0
%7906 = load float, float* %7905
%7907 = load float*, float** %10
%7908 = getelementptr inbounds float, float* %7907, i64 0
%7909 = load float, float* %7908
%7910 = fsub float %7906, %7909
%7911 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %7910, float* %7911
%7912 = load float*, float** %11
%7913 = getelementptr inbounds float, float* %7912, i64 1
%7914 = load float, float* %7913
%7915 = load float*, float** %10
%7916 = getelementptr inbounds float, float* %7915, i64 1
%7917 = load float, float* %7916
%7918 = fsub float %7914, %7917
%7919 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %7918, float* %7919
%7920 = load float*, float** %11
%7921 = getelementptr inbounds float, float* %7920, i64 2
%7922 = load float, float* %7921
%7923 = load float*, float** %10
%7924 = getelementptr inbounds float, float* %7923, i64 2
%7925 = load float, float* %7924
%7926 = fsub float %7922, %7925
%7927 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %7926, float* %7927
%7928 = load float*, float** %8
%7929 = getelementptr inbounds float, float* %7928, i64 0
%7930 = load float, float* %7929
%7931 = load float*, float** %10
%7932 = getelementptr inbounds float, float* %7931, i64 0
%7933 = load float, float* %7932
%7934 = fsub float %7930, %7933
%7935 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %7934, float* %7935
%7936 = load float*, float** %8
%7937 = getelementptr inbounds float, float* %7936, i64 1
%7938 = load float, float* %7937
%7939 = load float*, float** %10
%7940 = getelementptr inbounds float, float* %7939, i64 1
%7941 = load float, float* %7940
%7942 = fsub float %7938, %7941
%7943 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %7942, float* %7943
%7944 = load float*, float** %8
%7945 = getelementptr inbounds float, float* %7944, i64 2
%7946 = load float, float* %7945
%7947 = load float*, float** %10
%7948 = getelementptr inbounds float, float* %7947, i64 2
%7949 = load float, float* %7948
%7950 = fsub float %7946, %7949
%7951 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %7950, float* %7951
%7952 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%7953 = load float, float* %7952
%7954 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%7955 = load float, float* %7954
%7956 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%7957 = load float, float* %7956
%7958 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%7959 = load float, float* %7958
%7960 = fmul float %7957, %7959
%7961 = fneg float %7960
%7962 = call float @llvm.fmuladd.f32(float %7953, float %7955, float %7961)
%7963 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %7962, float* %7963
%7964 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%7965 = load float, float* %7964
%7966 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%7967 = load float, float* %7966
%7968 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%7969 = load float, float* %7968
%7970 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%7971 = load float, float* %7970
%7972 = fmul float %7969, %7971
%7973 = fneg float %7972
%7974 = call float @llvm.fmuladd.f32(float %7965, float %7967, float %7973)
%7975 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %7974, float* %7975
%7976 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%7977 = load float, float* %7976
%7978 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%7979 = load float, float* %7978
%7980 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%7981 = load float, float* %7980
%7982 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%7983 = load float, float* %7982
%7984 = fmul float %7981, %7983
%7985 = fneg float %7984
%7986 = call float @llvm.fmuladd.f32(float %7977, float %7979, float %7985)
%7987 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %7986, float* %7987
%7988 = load float*, float** %12
%7989 = getelementptr inbounds float, float* %7988, i64 0
%7990 = load float, float* %7989
%7991 = load float*, float** %10
%7992 = getelementptr inbounds float, float* %7991, i64 0
%7993 = load float, float* %7992
%7994 = fsub float %7990, %7993
%7995 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %7994, float* %7995
%7996 = load float*, float** %12
%7997 = getelementptr inbounds float, float* %7996, i64 1
%7998 = load float, float* %7997
%7999 = load float*, float** %10
%8000 = getelementptr inbounds float, float* %7999, i64 1
%8001 = load float, float* %8000
%8002 = fsub float %7998, %8001
%8003 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %8002, float* %8003
%8004 = load float*, float** %12
%8005 = getelementptr inbounds float, float* %8004, i64 2
%8006 = load float, float* %8005
%8007 = load float*, float** %10
%8008 = getelementptr inbounds float, float* %8007, i64 2
%8009 = load float, float* %8008
%8010 = fsub float %8006, %8009
%8011 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %8010, float* %8011
%8012 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%8013 = load float, float* %8012
%8014 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%8015 = load float, float* %8014
%8016 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%8017 = load float, float* %8016
%8018 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%8019 = load float, float* %8018
%8020 = fmul float %8017, %8019
%8021 = call float @llvm.fmuladd.f32(float %8013, float %8015, float %8020)
%8022 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%8023 = load float, float* %8022
%8024 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%8025 = load float, float* %8024
%8026 = call float @llvm.fmuladd.f32(float %8023, float %8025, float %8021)
%8027 = fcmp ogt float %8026, 0.000000e+00
br i1 %8027, label %8028, label %8029
8028: ; preds = %7903
store i32 0, i32* %7
br label %37477
8029: ; preds = %7903
%8030 = load float*, float** %11
%8031 = getelementptr inbounds float, float* %8030, i64 0
%8032 = load float, float* %8031
%8033 = load float*, float** %8
%8034 = getelementptr inbounds float, float* %8033, i64 0
%8035 = load float, float* %8034
%8036 = fsub float %8032, %8035
%8037 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %8036, float* %8037
%8038 = load float*, float** %11
%8039 = getelementptr inbounds float, float* %8038, i64 1
%8040 = load float, float* %8039
%8041 = load float*, float** %8
%8042 = getelementptr inbounds float, float* %8041, i64 1
%8043 = load float, float* %8042
%8044 = fsub float %8040, %8043
%8045 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %8044, float* %8045
%8046 = load float*, float** %11
%8047 = getelementptr inbounds float, float* %8046, i64 2
%8048 = load float, float* %8047
%8049 = load float*, float** %8
%8050 = getelementptr inbounds float, float* %8049, i64 2
%8051 = load float, float* %8050
%8052 = fsub float %8048, %8051
%8053 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %8052, float* %8053
%8054 = load float*, float** %9
%8055 = getelementptr inbounds float, float* %8054, i64 0
%8056 = load float, float* %8055
%8057 = load float*, float** %8
%8058 = getelementptr inbounds float, float* %8057, i64 0
%8059 = load float, float* %8058
%8060 = fsub float %8056, %8059
%8061 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %8060, float* %8061
%8062 = load float*, float** %9
%8063 = getelementptr inbounds float, float* %8062, i64 1
%8064 = load float, float* %8063
%8065 = load float*, float** %8
%8066 = getelementptr inbounds float, float* %8065, i64 1
%8067 = load float, float* %8066
%8068 = fsub float %8064, %8067
%8069 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %8068, float* %8069
%8070 = load float*, float** %9
%8071 = getelementptr inbounds float, float* %8070, i64 2
%8072 = load float, float* %8071
%8073 = load float*, float** %8
%8074 = getelementptr inbounds float, float* %8073, i64 2
%8075 = load float, float* %8074
%8076 = fsub float %8072, %8075
%8077 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %8076, float* %8077
%8078 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%8079 = load float, float* %8078
%8080 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%8081 = load float, float* %8080
%8082 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%8083 = load float, float* %8082
%8084 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%8085 = load float, float* %8084
%8086 = fmul float %8083, %8085
%8087 = fneg float %8086
%8088 = call float @llvm.fmuladd.f32(float %8079, float %8081, float %8087)
%8089 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %8088, float* %8089
%8090 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%8091 = load float, float* %8090
%8092 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%8093 = load float, float* %8092
%8094 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%8095 = load float, float* %8094
%8096 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%8097 = load float, float* %8096
%8098 = fmul float %8095, %8097
%8099 = fneg float %8098
%8100 = call float @llvm.fmuladd.f32(float %8091, float %8093, float %8099)
%8101 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %8100, float* %8101
%8102 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%8103 = load float, float* %8102
%8104 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%8105 = load float, float* %8104
%8106 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%8107 = load float, float* %8106
%8108 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%8109 = load float, float* %8108
%8110 = fmul float %8107, %8109
%8111 = fneg float %8110
%8112 = call float @llvm.fmuladd.f32(float %8103, float %8105, float %8111)
%8113 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %8112, float* %8113
%8114 = load float*, float** %13
%8115 = getelementptr inbounds float, float* %8114, i64 0
%8116 = load float, float* %8115
%8117 = load float*, float** %8
%8118 = getelementptr inbounds float, float* %8117, i64 0
%8119 = load float, float* %8118
%8120 = fsub float %8116, %8119
%8121 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %8120, float* %8121
%8122 = load float*, float** %13
%8123 = getelementptr inbounds float, float* %8122, i64 1
%8124 = load float, float* %8123
%8125 = load float*, float** %8
%8126 = getelementptr inbounds float, float* %8125, i64 1
%8127 = load float, float* %8126
%8128 = fsub float %8124, %8127
%8129 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %8128, float* %8129
%8130 = load float*, float** %13
%8131 = getelementptr inbounds float, float* %8130, i64 2
%8132 = load float, float* %8131
%8133 = load float*, float** %8
%8134 = getelementptr inbounds float, float* %8133, i64 2
%8135 = load float, float* %8134
%8136 = fsub float %8132, %8135
%8137 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %8136, float* %8137
%8138 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%8139 = load float, float* %8138
%8140 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%8141 = load float, float* %8140
%8142 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%8143 = load float, float* %8142
%8144 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%8145 = load float, float* %8144
%8146 = fmul float %8143, %8145
%8147 = call float @llvm.fmuladd.f32(float %8139, float %8141, float %8146)
%8148 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%8149 = load float, float* %8148
%8150 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%8151 = load float, float* %8150
%8152 = call float @llvm.fmuladd.f32(float %8149, float %8151, float %8147)
%8153 = fcmp ogt float %8152, 0.000000e+00
br i1 %8153, label %8154, label %8155
8154: ; preds = %8029
store i32 0, i32* %7
br label %37477
8155: ; preds = %8029
store i32 1, i32* %7
br label %37477
8156: ; preds = %7388
%8157 = load float, float* %18
%8158 = fcmp olt float %8157, 0.000000e+00
br i1 %8158, label %8159, label %8668
8159: ; preds = %8156
%8160 = load float, float* %19
%8161 = fcmp oge float %8160, 0.000000e+00
br i1 %8161, label %8162, label %8415
8162: ; preds = %8159
%8163 = load float*, float** %12
%8164 = getelementptr inbounds float, float* %8163, i64 0
%8165 = load float, float* %8164
%8166 = load float*, float** %10
%8167 = getelementptr inbounds float, float* %8166, i64 0
%8168 = load float, float* %8167
%8169 = fsub float %8165, %8168
%8170 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %8169, float* %8170
%8171 = load float*, float** %12
%8172 = getelementptr inbounds float, float* %8171, i64 1
%8173 = load float, float* %8172
%8174 = load float*, float** %10
%8175 = getelementptr inbounds float, float* %8174, i64 1
%8176 = load float, float* %8175
%8177 = fsub float %8173, %8176
%8178 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %8177, float* %8178
%8179 = load float*, float** %12
%8180 = getelementptr inbounds float, float* %8179, i64 2
%8181 = load float, float* %8180
%8182 = load float*, float** %10
%8183 = getelementptr inbounds float, float* %8182, i64 2
%8184 = load float, float* %8183
%8185 = fsub float %8181, %8184
%8186 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %8185, float* %8186
%8187 = load float*, float** %8
%8188 = getelementptr inbounds float, float* %8187, i64 0
%8189 = load float, float* %8188
%8190 = load float*, float** %10
%8191 = getelementptr inbounds float, float* %8190, i64 0
%8192 = load float, float* %8191
%8193 = fsub float %8189, %8192
%8194 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %8193, float* %8194
%8195 = load float*, float** %8
%8196 = getelementptr inbounds float, float* %8195, i64 1
%8197 = load float, float* %8196
%8198 = load float*, float** %10
%8199 = getelementptr inbounds float, float* %8198, i64 1
%8200 = load float, float* %8199
%8201 = fsub float %8197, %8200
%8202 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %8201, float* %8202
%8203 = load float*, float** %8
%8204 = getelementptr inbounds float, float* %8203, i64 2
%8205 = load float, float* %8204
%8206 = load float*, float** %10
%8207 = getelementptr inbounds float, float* %8206, i64 2
%8208 = load float, float* %8207
%8209 = fsub float %8205, %8208
%8210 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %8209, float* %8210
%8211 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%8212 = load float, float* %8211
%8213 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%8214 = load float, float* %8213
%8215 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%8216 = load float, float* %8215
%8217 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%8218 = load float, float* %8217
%8219 = fmul float %8216, %8218
%8220 = fneg float %8219
%8221 = call float @llvm.fmuladd.f32(float %8212, float %8214, float %8220)
%8222 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %8221, float* %8222
%8223 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%8224 = load float, float* %8223
%8225 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%8226 = load float, float* %8225
%8227 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%8228 = load float, float* %8227
%8229 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%8230 = load float, float* %8229
%8231 = fmul float %8228, %8230
%8232 = fneg float %8231
%8233 = call float @llvm.fmuladd.f32(float %8224, float %8226, float %8232)
%8234 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %8233, float* %8234
%8235 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%8236 = load float, float* %8235
%8237 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%8238 = load float, float* %8237
%8239 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%8240 = load float, float* %8239
%8241 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%8242 = load float, float* %8241
%8243 = fmul float %8240, %8242
%8244 = fneg float %8243
%8245 = call float @llvm.fmuladd.f32(float %8236, float %8238, float %8244)
%8246 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %8245, float* %8246
%8247 = load float*, float** %13
%8248 = getelementptr inbounds float, float* %8247, i64 0
%8249 = load float, float* %8248
%8250 = load float*, float** %10
%8251 = getelementptr inbounds float, float* %8250, i64 0
%8252 = load float, float* %8251
%8253 = fsub float %8249, %8252
%8254 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %8253, float* %8254
%8255 = load float*, float** %13
%8256 = getelementptr inbounds float, float* %8255, i64 1
%8257 = load float, float* %8256
%8258 = load float*, float** %10
%8259 = getelementptr inbounds float, float* %8258, i64 1
%8260 = load float, float* %8259
%8261 = fsub float %8257, %8260
%8262 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %8261, float* %8262
%8263 = load float*, float** %13
%8264 = getelementptr inbounds float, float* %8263, i64 2
%8265 = load float, float* %8264
%8266 = load float*, float** %10
%8267 = getelementptr inbounds float, float* %8266, i64 2
%8268 = load float, float* %8267
%8269 = fsub float %8265, %8268
%8270 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %8269, float* %8270
%8271 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%8272 = load float, float* %8271
%8273 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%8274 = load float, float* %8273
%8275 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%8276 = load float, float* %8275
%8277 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%8278 = load float, float* %8277
%8279 = fmul float %8276, %8278
%8280 = call float @llvm.fmuladd.f32(float %8272, float %8274, float %8279)
%8281 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%8282 = load float, float* %8281
%8283 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%8284 = load float, float* %8283
%8285 = call float @llvm.fmuladd.f32(float %8282, float %8284, float %8280)
%8286 = fcmp ogt float %8285, 0.000000e+00
br i1 %8286, label %8287, label %8288
8287: ; preds = %8162
store i32 0, i32* %7
br label %37477
8288: ; preds = %8162
%8289 = load float*, float** %12
%8290 = getelementptr inbounds float, float* %8289, i64 0
%8291 = load float, float* %8290
%8292 = load float*, float** %8
%8293 = getelementptr inbounds float, float* %8292, i64 0
%8294 = load float, float* %8293
%8295 = fsub float %8291, %8294
%8296 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %8295, float* %8296
%8297 = load float*, float** %12
%8298 = getelementptr inbounds float, float* %8297, i64 1
%8299 = load float, float* %8298
%8300 = load float*, float** %8
%8301 = getelementptr inbounds float, float* %8300, i64 1
%8302 = load float, float* %8301
%8303 = fsub float %8299, %8302
%8304 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %8303, float* %8304
%8305 = load float*, float** %12
%8306 = getelementptr inbounds float, float* %8305, i64 2
%8307 = load float, float* %8306
%8308 = load float*, float** %8
%8309 = getelementptr inbounds float, float* %8308, i64 2
%8310 = load float, float* %8309
%8311 = fsub float %8307, %8310
%8312 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %8311, float* %8312
%8313 = load float*, float** %9
%8314 = getelementptr inbounds float, float* %8313, i64 0
%8315 = load float, float* %8314
%8316 = load float*, float** %8
%8317 = getelementptr inbounds float, float* %8316, i64 0
%8318 = load float, float* %8317
%8319 = fsub float %8315, %8318
%8320 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %8319, float* %8320
%8321 = load float*, float** %9
%8322 = getelementptr inbounds float, float* %8321, i64 1
%8323 = load float, float* %8322
%8324 = load float*, float** %8
%8325 = getelementptr inbounds float, float* %8324, i64 1
%8326 = load float, float* %8325
%8327 = fsub float %8323, %8326
%8328 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %8327, float* %8328
%8329 = load float*, float** %9
%8330 = getelementptr inbounds float, float* %8329, i64 2
%8331 = load float, float* %8330
%8332 = load float*, float** %8
%8333 = getelementptr inbounds float, float* %8332, i64 2
%8334 = load float, float* %8333
%8335 = fsub float %8331, %8334
%8336 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %8335, float* %8336
%8337 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%8338 = load float, float* %8337
%8339 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%8340 = load float, float* %8339
%8341 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%8342 = load float, float* %8341
%8343 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%8344 = load float, float* %8343
%8345 = fmul float %8342, %8344
%8346 = fneg float %8345
%8347 = call float @llvm.fmuladd.f32(float %8338, float %8340, float %8346)
%8348 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %8347, float* %8348
%8349 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%8350 = load float, float* %8349
%8351 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%8352 = load float, float* %8351
%8353 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%8354 = load float, float* %8353
%8355 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%8356 = load float, float* %8355
%8357 = fmul float %8354, %8356
%8358 = fneg float %8357
%8359 = call float @llvm.fmuladd.f32(float %8350, float %8352, float %8358)
%8360 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %8359, float* %8360
%8361 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%8362 = load float, float* %8361
%8363 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%8364 = load float, float* %8363
%8365 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%8366 = load float, float* %8365
%8367 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%8368 = load float, float* %8367
%8369 = fmul float %8366, %8368
%8370 = fneg float %8369
%8371 = call float @llvm.fmuladd.f32(float %8362, float %8364, float %8370)
%8372 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %8371, float* %8372
%8373 = load float*, float** %11
%8374 = getelementptr inbounds float, float* %8373, i64 0
%8375 = load float, float* %8374
%8376 = load float*, float** %8
%8377 = getelementptr inbounds float, float* %8376, i64 0
%8378 = load float, float* %8377
%8379 = fsub float %8375, %8378
%8380 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %8379, float* %8380
%8381 = load float*, float** %11
%8382 = getelementptr inbounds float, float* %8381, i64 1
%8383 = load float, float* %8382
%8384 = load float*, float** %8
%8385 = getelementptr inbounds float, float* %8384, i64 1
%8386 = load float, float* %8385
%8387 = fsub float %8383, %8386
%8388 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %8387, float* %8388
%8389 = load float*, float** %11
%8390 = getelementptr inbounds float, float* %8389, i64 2
%8391 = load float, float* %8390
%8392 = load float*, float** %8
%8393 = getelementptr inbounds float, float* %8392, i64 2
%8394 = load float, float* %8393
%8395 = fsub float %8391, %8394
%8396 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %8395, float* %8396
%8397 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%8398 = load float, float* %8397
%8399 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%8400 = load float, float* %8399
%8401 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%8402 = load float, float* %8401
%8403 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%8404 = load float, float* %8403
%8405 = fmul float %8402, %8404
%8406 = call float @llvm.fmuladd.f32(float %8398, float %8400, float %8405)
%8407 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%8408 = load float, float* %8407
%8409 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%8410 = load float, float* %8409
%8411 = call float @llvm.fmuladd.f32(float %8408, float %8410, float %8406)
%8412 = fcmp ogt float %8411, 0.000000e+00
br i1 %8412, label %8413, label %8414
8413: ; preds = %8288
store i32 0, i32* %7
br label %37477
8414: ; preds = %8288
store i32 1, i32* %7
br label %37477
8415: ; preds = %8159
%8416 = load float*, float** %11
%8417 = getelementptr inbounds float, float* %8416, i64 0
%8418 = load float, float* %8417
%8419 = load float*, float** %9
%8420 = getelementptr inbounds float, float* %8419, i64 0
%8421 = load float, float* %8420
%8422 = fsub float %8418, %8421
%8423 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %8422, float* %8423
%8424 = load float*, float** %11
%8425 = getelementptr inbounds float, float* %8424, i64 1
%8426 = load float, float* %8425
%8427 = load float*, float** %9
%8428 = getelementptr inbounds float, float* %8427, i64 1
%8429 = load float, float* %8428
%8430 = fsub float %8426, %8429
%8431 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %8430, float* %8431
%8432 = load float*, float** %11
%8433 = getelementptr inbounds float, float* %8432, i64 2
%8434 = load float, float* %8433
%8435 = load float*, float** %9
%8436 = getelementptr inbounds float, float* %8435, i64 2
%8437 = load float, float* %8436
%8438 = fsub float %8434, %8437
%8439 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %8438, float* %8439
%8440 = load float*, float** %8
%8441 = getelementptr inbounds float, float* %8440, i64 0
%8442 = load float, float* %8441
%8443 = load float*, float** %9
%8444 = getelementptr inbounds float, float* %8443, i64 0
%8445 = load float, float* %8444
%8446 = fsub float %8442, %8445
%8447 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %8446, float* %8447
%8448 = load float*, float** %8
%8449 = getelementptr inbounds float, float* %8448, i64 1
%8450 = load float, float* %8449
%8451 = load float*, float** %9
%8452 = getelementptr inbounds float, float* %8451, i64 1
%8453 = load float, float* %8452
%8454 = fsub float %8450, %8453
%8455 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %8454, float* %8455
%8456 = load float*, float** %8
%8457 = getelementptr inbounds float, float* %8456, i64 2
%8458 = load float, float* %8457
%8459 = load float*, float** %9
%8460 = getelementptr inbounds float, float* %8459, i64 2
%8461 = load float, float* %8460
%8462 = fsub float %8458, %8461
%8463 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %8462, float* %8463
%8464 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%8465 = load float, float* %8464
%8466 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%8467 = load float, float* %8466
%8468 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%8469 = load float, float* %8468
%8470 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%8471 = load float, float* %8470
%8472 = fmul float %8469, %8471
%8473 = fneg float %8472
%8474 = call float @llvm.fmuladd.f32(float %8465, float %8467, float %8473)
%8475 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %8474, float* %8475
%8476 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%8477 = load float, float* %8476
%8478 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%8479 = load float, float* %8478
%8480 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%8481 = load float, float* %8480
%8482 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%8483 = load float, float* %8482
%8484 = fmul float %8481, %8483
%8485 = fneg float %8484
%8486 = call float @llvm.fmuladd.f32(float %8477, float %8479, float %8485)
%8487 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %8486, float* %8487
%8488 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%8489 = load float, float* %8488
%8490 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%8491 = load float, float* %8490
%8492 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%8493 = load float, float* %8492
%8494 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%8495 = load float, float* %8494
%8496 = fmul float %8493, %8495
%8497 = fneg float %8496
%8498 = call float @llvm.fmuladd.f32(float %8489, float %8491, float %8497)
%8499 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %8498, float* %8499
%8500 = load float*, float** %12
%8501 = getelementptr inbounds float, float* %8500, i64 0
%8502 = load float, float* %8501
%8503 = load float*, float** %9
%8504 = getelementptr inbounds float, float* %8503, i64 0
%8505 = load float, float* %8504
%8506 = fsub float %8502, %8505
%8507 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %8506, float* %8507
%8508 = load float*, float** %12
%8509 = getelementptr inbounds float, float* %8508, i64 1
%8510 = load float, float* %8509
%8511 = load float*, float** %9
%8512 = getelementptr inbounds float, float* %8511, i64 1
%8513 = load float, float* %8512
%8514 = fsub float %8510, %8513
%8515 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %8514, float* %8515
%8516 = load float*, float** %12
%8517 = getelementptr inbounds float, float* %8516, i64 2
%8518 = load float, float* %8517
%8519 = load float*, float** %9
%8520 = getelementptr inbounds float, float* %8519, i64 2
%8521 = load float, float* %8520
%8522 = fsub float %8518, %8521
%8523 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %8522, float* %8523
%8524 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%8525 = load float, float* %8524
%8526 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%8527 = load float, float* %8526
%8528 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%8529 = load float, float* %8528
%8530 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%8531 = load float, float* %8530
%8532 = fmul float %8529, %8531
%8533 = call float @llvm.fmuladd.f32(float %8525, float %8527, float %8532)
%8534 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%8535 = load float, float* %8534
%8536 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%8537 = load float, float* %8536
%8538 = call float @llvm.fmuladd.f32(float %8535, float %8537, float %8533)
%8539 = fcmp ogt float %8538, 0.000000e+00
br i1 %8539, label %8540, label %8541
8540: ; preds = %8415
store i32 0, i32* %7
br label %37477
8541: ; preds = %8415
%8542 = load float*, float** %11
%8543 = getelementptr inbounds float, float* %8542, i64 0
%8544 = load float, float* %8543
%8545 = load float*, float** %8
%8546 = getelementptr inbounds float, float* %8545, i64 0
%8547 = load float, float* %8546
%8548 = fsub float %8544, %8547
%8549 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %8548, float* %8549
%8550 = load float*, float** %11
%8551 = getelementptr inbounds float, float* %8550, i64 1
%8552 = load float, float* %8551
%8553 = load float*, float** %8
%8554 = getelementptr inbounds float, float* %8553, i64 1
%8555 = load float, float* %8554
%8556 = fsub float %8552, %8555
%8557 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %8556, float* %8557
%8558 = load float*, float** %11
%8559 = getelementptr inbounds float, float* %8558, i64 2
%8560 = load float, float* %8559
%8561 = load float*, float** %8
%8562 = getelementptr inbounds float, float* %8561, i64 2
%8563 = load float, float* %8562
%8564 = fsub float %8560, %8563
%8565 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %8564, float* %8565
%8566 = load float*, float** %10
%8567 = getelementptr inbounds float, float* %8566, i64 0
%8568 = load float, float* %8567
%8569 = load float*, float** %8
%8570 = getelementptr inbounds float, float* %8569, i64 0
%8571 = load float, float* %8570
%8572 = fsub float %8568, %8571
%8573 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %8572, float* %8573
%8574 = load float*, float** %10
%8575 = getelementptr inbounds float, float* %8574, i64 1
%8576 = load float, float* %8575
%8577 = load float*, float** %8
%8578 = getelementptr inbounds float, float* %8577, i64 1
%8579 = load float, float* %8578
%8580 = fsub float %8576, %8579
%8581 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %8580, float* %8581
%8582 = load float*, float** %10
%8583 = getelementptr inbounds float, float* %8582, i64 2
%8584 = load float, float* %8583
%8585 = load float*, float** %8
%8586 = getelementptr inbounds float, float* %8585, i64 2
%8587 = load float, float* %8586
%8588 = fsub float %8584, %8587
%8589 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %8588, float* %8589
%8590 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%8591 = load float, float* %8590
%8592 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%8593 = load float, float* %8592
%8594 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%8595 = load float, float* %8594
%8596 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%8597 = load float, float* %8596
%8598 = fmul float %8595, %8597
%8599 = fneg float %8598
%8600 = call float @llvm.fmuladd.f32(float %8591, float %8593, float %8599)
%8601 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %8600, float* %8601
%8602 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%8603 = load float, float* %8602
%8604 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%8605 = load float, float* %8604
%8606 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%8607 = load float, float* %8606
%8608 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%8609 = load float, float* %8608
%8610 = fmul float %8607, %8609
%8611 = fneg float %8610
%8612 = call float @llvm.fmuladd.f32(float %8603, float %8605, float %8611)
%8613 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %8612, float* %8613
%8614 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%8615 = load float, float* %8614
%8616 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%8617 = load float, float* %8616
%8618 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%8619 = load float, float* %8618
%8620 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%8621 = load float, float* %8620
%8622 = fmul float %8619, %8621
%8623 = fneg float %8622
%8624 = call float @llvm.fmuladd.f32(float %8615, float %8617, float %8623)
%8625 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %8624, float* %8625
%8626 = load float*, float** %13
%8627 = getelementptr inbounds float, float* %8626, i64 0
%8628 = load float, float* %8627
%8629 = load float*, float** %8
%8630 = getelementptr inbounds float, float* %8629, i64 0
%8631 = load float, float* %8630
%8632 = fsub float %8628, %8631
%8633 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %8632, float* %8633
%8634 = load float*, float** %13
%8635 = getelementptr inbounds float, float* %8634, i64 1
%8636 = load float, float* %8635
%8637 = load float*, float** %8
%8638 = getelementptr inbounds float, float* %8637, i64 1
%8639 = load float, float* %8638
%8640 = fsub float %8636, %8639
%8641 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %8640, float* %8641
%8642 = load float*, float** %13
%8643 = getelementptr inbounds float, float* %8642, i64 2
%8644 = load float, float* %8643
%8645 = load float*, float** %8
%8646 = getelementptr inbounds float, float* %8645, i64 2
%8647 = load float, float* %8646
%8648 = fsub float %8644, %8647
%8649 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %8648, float* %8649
%8650 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%8651 = load float, float* %8650
%8652 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%8653 = load float, float* %8652
%8654 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%8655 = load float, float* %8654
%8656 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%8657 = load float, float* %8656
%8658 = fmul float %8655, %8657
%8659 = call float @llvm.fmuladd.f32(float %8651, float %8653, float %8658)
%8660 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%8661 = load float, float* %8660
%8662 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%8663 = load float, float* %8662
%8664 = call float @llvm.fmuladd.f32(float %8661, float %8663, float %8659)
%8665 = fcmp ogt float %8664, 0.000000e+00
br i1 %8665, label %8666, label %8667
8666: ; preds = %8541
store i32 0, i32* %7
br label %37477
8667: ; preds = %8541
store i32 1, i32* %7
br label %37477
8668: ; preds = %8156
%8669 = load float, float* %18
%8670 = fcmp ogt float %8669, 0.000000e+00
br i1 %8670, label %8671, label %9180
8671: ; preds = %8668
%8672 = load float, float* %19
%8673 = fcmp ogt float %8672, 0.000000e+00
br i1 %8673, label %8674, label %8927
8674: ; preds = %8671
%8675 = load float*, float** %11
%8676 = getelementptr inbounds float, float* %8675, i64 0
%8677 = load float, float* %8676
%8678 = load float*, float** %10
%8679 = getelementptr inbounds float, float* %8678, i64 0
%8680 = load float, float* %8679
%8681 = fsub float %8677, %8680
%8682 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %8681, float* %8682
%8683 = load float*, float** %11
%8684 = getelementptr inbounds float, float* %8683, i64 1
%8685 = load float, float* %8684
%8686 = load float*, float** %10
%8687 = getelementptr inbounds float, float* %8686, i64 1
%8688 = load float, float* %8687
%8689 = fsub float %8685, %8688
%8690 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %8689, float* %8690
%8691 = load float*, float** %11
%8692 = getelementptr inbounds float, float* %8691, i64 2
%8693 = load float, float* %8692
%8694 = load float*, float** %10
%8695 = getelementptr inbounds float, float* %8694, i64 2
%8696 = load float, float* %8695
%8697 = fsub float %8693, %8696
%8698 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %8697, float* %8698
%8699 = load float*, float** %8
%8700 = getelementptr inbounds float, float* %8699, i64 0
%8701 = load float, float* %8700
%8702 = load float*, float** %10
%8703 = getelementptr inbounds float, float* %8702, i64 0
%8704 = load float, float* %8703
%8705 = fsub float %8701, %8704
%8706 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %8705, float* %8706
%8707 = load float*, float** %8
%8708 = getelementptr inbounds float, float* %8707, i64 1
%8709 = load float, float* %8708
%8710 = load float*, float** %10
%8711 = getelementptr inbounds float, float* %8710, i64 1
%8712 = load float, float* %8711
%8713 = fsub float %8709, %8712
%8714 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %8713, float* %8714
%8715 = load float*, float** %8
%8716 = getelementptr inbounds float, float* %8715, i64 2
%8717 = load float, float* %8716
%8718 = load float*, float** %10
%8719 = getelementptr inbounds float, float* %8718, i64 2
%8720 = load float, float* %8719
%8721 = fsub float %8717, %8720
%8722 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %8721, float* %8722
%8723 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%8724 = load float, float* %8723
%8725 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%8726 = load float, float* %8725
%8727 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%8728 = load float, float* %8727
%8729 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%8730 = load float, float* %8729
%8731 = fmul float %8728, %8730
%8732 = fneg float %8731
%8733 = call float @llvm.fmuladd.f32(float %8724, float %8726, float %8732)
%8734 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %8733, float* %8734
%8735 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%8736 = load float, float* %8735
%8737 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%8738 = load float, float* %8737
%8739 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%8740 = load float, float* %8739
%8741 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%8742 = load float, float* %8741
%8743 = fmul float %8740, %8742
%8744 = fneg float %8743
%8745 = call float @llvm.fmuladd.f32(float %8736, float %8738, float %8744)
%8746 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %8745, float* %8746
%8747 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%8748 = load float, float* %8747
%8749 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%8750 = load float, float* %8749
%8751 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%8752 = load float, float* %8751
%8753 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%8754 = load float, float* %8753
%8755 = fmul float %8752, %8754
%8756 = fneg float %8755
%8757 = call float @llvm.fmuladd.f32(float %8748, float %8750, float %8756)
%8758 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %8757, float* %8758
%8759 = load float*, float** %12
%8760 = getelementptr inbounds float, float* %8759, i64 0
%8761 = load float, float* %8760
%8762 = load float*, float** %10
%8763 = getelementptr inbounds float, float* %8762, i64 0
%8764 = load float, float* %8763
%8765 = fsub float %8761, %8764
%8766 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %8765, float* %8766
%8767 = load float*, float** %12
%8768 = getelementptr inbounds float, float* %8767, i64 1
%8769 = load float, float* %8768
%8770 = load float*, float** %10
%8771 = getelementptr inbounds float, float* %8770, i64 1
%8772 = load float, float* %8771
%8773 = fsub float %8769, %8772
%8774 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %8773, float* %8774
%8775 = load float*, float** %12
%8776 = getelementptr inbounds float, float* %8775, i64 2
%8777 = load float, float* %8776
%8778 = load float*, float** %10
%8779 = getelementptr inbounds float, float* %8778, i64 2
%8780 = load float, float* %8779
%8781 = fsub float %8777, %8780
%8782 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %8781, float* %8782
%8783 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%8784 = load float, float* %8783
%8785 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%8786 = load float, float* %8785
%8787 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%8788 = load float, float* %8787
%8789 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%8790 = load float, float* %8789
%8791 = fmul float %8788, %8790
%8792 = call float @llvm.fmuladd.f32(float %8784, float %8786, float %8791)
%8793 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%8794 = load float, float* %8793
%8795 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%8796 = load float, float* %8795
%8797 = call float @llvm.fmuladd.f32(float %8794, float %8796, float %8792)
%8798 = fcmp ogt float %8797, 0.000000e+00
br i1 %8798, label %8799, label %8800
8799: ; preds = %8674
store i32 0, i32* %7
br label %37477
8800: ; preds = %8674
%8801 = load float*, float** %11
%8802 = getelementptr inbounds float, float* %8801, i64 0
%8803 = load float, float* %8802
%8804 = load float*, float** %8
%8805 = getelementptr inbounds float, float* %8804, i64 0
%8806 = load float, float* %8805
%8807 = fsub float %8803, %8806
%8808 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %8807, float* %8808
%8809 = load float*, float** %11
%8810 = getelementptr inbounds float, float* %8809, i64 1
%8811 = load float, float* %8810
%8812 = load float*, float** %8
%8813 = getelementptr inbounds float, float* %8812, i64 1
%8814 = load float, float* %8813
%8815 = fsub float %8811, %8814
%8816 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %8815, float* %8816
%8817 = load float*, float** %11
%8818 = getelementptr inbounds float, float* %8817, i64 2
%8819 = load float, float* %8818
%8820 = load float*, float** %8
%8821 = getelementptr inbounds float, float* %8820, i64 2
%8822 = load float, float* %8821
%8823 = fsub float %8819, %8822
%8824 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %8823, float* %8824
%8825 = load float*, float** %9
%8826 = getelementptr inbounds float, float* %8825, i64 0
%8827 = load float, float* %8826
%8828 = load float*, float** %8
%8829 = getelementptr inbounds float, float* %8828, i64 0
%8830 = load float, float* %8829
%8831 = fsub float %8827, %8830
%8832 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %8831, float* %8832
%8833 = load float*, float** %9
%8834 = getelementptr inbounds float, float* %8833, i64 1
%8835 = load float, float* %8834
%8836 = load float*, float** %8
%8837 = getelementptr inbounds float, float* %8836, i64 1
%8838 = load float, float* %8837
%8839 = fsub float %8835, %8838
%8840 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %8839, float* %8840
%8841 = load float*, float** %9
%8842 = getelementptr inbounds float, float* %8841, i64 2
%8843 = load float, float* %8842
%8844 = load float*, float** %8
%8845 = getelementptr inbounds float, float* %8844, i64 2
%8846 = load float, float* %8845
%8847 = fsub float %8843, %8846
%8848 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %8847, float* %8848
%8849 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%8850 = load float, float* %8849
%8851 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%8852 = load float, float* %8851
%8853 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%8854 = load float, float* %8853
%8855 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%8856 = load float, float* %8855
%8857 = fmul float %8854, %8856
%8858 = fneg float %8857
%8859 = call float @llvm.fmuladd.f32(float %8850, float %8852, float %8858)
%8860 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %8859, float* %8860
%8861 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%8862 = load float, float* %8861
%8863 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%8864 = load float, float* %8863
%8865 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%8866 = load float, float* %8865
%8867 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%8868 = load float, float* %8867
%8869 = fmul float %8866, %8868
%8870 = fneg float %8869
%8871 = call float @llvm.fmuladd.f32(float %8862, float %8864, float %8870)
%8872 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %8871, float* %8872
%8873 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%8874 = load float, float* %8873
%8875 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%8876 = load float, float* %8875
%8877 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%8878 = load float, float* %8877
%8879 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%8880 = load float, float* %8879
%8881 = fmul float %8878, %8880
%8882 = fneg float %8881
%8883 = call float @llvm.fmuladd.f32(float %8874, float %8876, float %8882)
%8884 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %8883, float* %8884
%8885 = load float*, float** %13
%8886 = getelementptr inbounds float, float* %8885, i64 0
%8887 = load float, float* %8886
%8888 = load float*, float** %8
%8889 = getelementptr inbounds float, float* %8888, i64 0
%8890 = load float, float* %8889
%8891 = fsub float %8887, %8890
%8892 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %8891, float* %8892
%8893 = load float*, float** %13
%8894 = getelementptr inbounds float, float* %8893, i64 1
%8895 = load float, float* %8894
%8896 = load float*, float** %8
%8897 = getelementptr inbounds float, float* %8896, i64 1
%8898 = load float, float* %8897
%8899 = fsub float %8895, %8898
%8900 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %8899, float* %8900
%8901 = load float*, float** %13
%8902 = getelementptr inbounds float, float* %8901, i64 2
%8903 = load float, float* %8902
%8904 = load float*, float** %8
%8905 = getelementptr inbounds float, float* %8904, i64 2
%8906 = load float, float* %8905
%8907 = fsub float %8903, %8906
%8908 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %8907, float* %8908
%8909 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%8910 = load float, float* %8909
%8911 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%8912 = load float, float* %8911
%8913 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%8914 = load float, float* %8913
%8915 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%8916 = load float, float* %8915
%8917 = fmul float %8914, %8916
%8918 = call float @llvm.fmuladd.f32(float %8910, float %8912, float %8917)
%8919 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%8920 = load float, float* %8919
%8921 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%8922 = load float, float* %8921
%8923 = call float @llvm.fmuladd.f32(float %8920, float %8922, float %8918)
%8924 = fcmp ogt float %8923, 0.000000e+00
br i1 %8924, label %8925, label %8926
8925: ; preds = %8800
store i32 0, i32* %7
br label %37477
8926: ; preds = %8800
store i32 1, i32* %7
br label %37477
8927: ; preds = %8671
%8928 = load float*, float** %12
%8929 = getelementptr inbounds float, float* %8928, i64 0
%8930 = load float, float* %8929
%8931 = load float*, float** %9
%8932 = getelementptr inbounds float, float* %8931, i64 0
%8933 = load float, float* %8932
%8934 = fsub float %8930, %8933
%8935 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %8934, float* %8935
%8936 = load float*, float** %12
%8937 = getelementptr inbounds float, float* %8936, i64 1
%8938 = load float, float* %8937
%8939 = load float*, float** %9
%8940 = getelementptr inbounds float, float* %8939, i64 1
%8941 = load float, float* %8940
%8942 = fsub float %8938, %8941
%8943 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %8942, float* %8943
%8944 = load float*, float** %12
%8945 = getelementptr inbounds float, float* %8944, i64 2
%8946 = load float, float* %8945
%8947 = load float*, float** %9
%8948 = getelementptr inbounds float, float* %8947, i64 2
%8949 = load float, float* %8948
%8950 = fsub float %8946, %8949
%8951 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %8950, float* %8951
%8952 = load float*, float** %8
%8953 = getelementptr inbounds float, float* %8952, i64 0
%8954 = load float, float* %8953
%8955 = load float*, float** %9
%8956 = getelementptr inbounds float, float* %8955, i64 0
%8957 = load float, float* %8956
%8958 = fsub float %8954, %8957
%8959 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %8958, float* %8959
%8960 = load float*, float** %8
%8961 = getelementptr inbounds float, float* %8960, i64 1
%8962 = load float, float* %8961
%8963 = load float*, float** %9
%8964 = getelementptr inbounds float, float* %8963, i64 1
%8965 = load float, float* %8964
%8966 = fsub float %8962, %8965
%8967 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %8966, float* %8967
%8968 = load float*, float** %8
%8969 = getelementptr inbounds float, float* %8968, i64 2
%8970 = load float, float* %8969
%8971 = load float*, float** %9
%8972 = getelementptr inbounds float, float* %8971, i64 2
%8973 = load float, float* %8972
%8974 = fsub float %8970, %8973
%8975 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %8974, float* %8975
%8976 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%8977 = load float, float* %8976
%8978 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%8979 = load float, float* %8978
%8980 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%8981 = load float, float* %8980
%8982 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%8983 = load float, float* %8982
%8984 = fmul float %8981, %8983
%8985 = fneg float %8984
%8986 = call float @llvm.fmuladd.f32(float %8977, float %8979, float %8985)
%8987 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %8986, float* %8987
%8988 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%8989 = load float, float* %8988
%8990 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%8991 = load float, float* %8990
%8992 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%8993 = load float, float* %8992
%8994 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%8995 = load float, float* %8994
%8996 = fmul float %8993, %8995
%8997 = fneg float %8996
%8998 = call float @llvm.fmuladd.f32(float %8989, float %8991, float %8997)
%8999 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %8998, float* %8999
%9000 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%9001 = load float, float* %9000
%9002 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%9003 = load float, float* %9002
%9004 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%9005 = load float, float* %9004
%9006 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%9007 = load float, float* %9006
%9008 = fmul float %9005, %9007
%9009 = fneg float %9008
%9010 = call float @llvm.fmuladd.f32(float %9001, float %9003, float %9009)
%9011 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %9010, float* %9011
%9012 = load float*, float** %13
%9013 = getelementptr inbounds float, float* %9012, i64 0
%9014 = load float, float* %9013
%9015 = load float*, float** %9
%9016 = getelementptr inbounds float, float* %9015, i64 0
%9017 = load float, float* %9016
%9018 = fsub float %9014, %9017
%9019 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %9018, float* %9019
%9020 = load float*, float** %13
%9021 = getelementptr inbounds float, float* %9020, i64 1
%9022 = load float, float* %9021
%9023 = load float*, float** %9
%9024 = getelementptr inbounds float, float* %9023, i64 1
%9025 = load float, float* %9024
%9026 = fsub float %9022, %9025
%9027 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %9026, float* %9027
%9028 = load float*, float** %13
%9029 = getelementptr inbounds float, float* %9028, i64 2
%9030 = load float, float* %9029
%9031 = load float*, float** %9
%9032 = getelementptr inbounds float, float* %9031, i64 2
%9033 = load float, float* %9032
%9034 = fsub float %9030, %9033
%9035 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %9034, float* %9035
%9036 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%9037 = load float, float* %9036
%9038 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%9039 = load float, float* %9038
%9040 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%9041 = load float, float* %9040
%9042 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%9043 = load float, float* %9042
%9044 = fmul float %9041, %9043
%9045 = call float @llvm.fmuladd.f32(float %9037, float %9039, float %9044)
%9046 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%9047 = load float, float* %9046
%9048 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%9049 = load float, float* %9048
%9050 = call float @llvm.fmuladd.f32(float %9047, float %9049, float %9045)
%9051 = fcmp ogt float %9050, 0.000000e+00
br i1 %9051, label %9052, label %9053
9052: ; preds = %8927
store i32 0, i32* %7
br label %37477
9053: ; preds = %8927
%9054 = load float*, float** %12
%9055 = getelementptr inbounds float, float* %9054, i64 0
%9056 = load float, float* %9055
%9057 = load float*, float** %8
%9058 = getelementptr inbounds float, float* %9057, i64 0
%9059 = load float, float* %9058
%9060 = fsub float %9056, %9059
%9061 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %9060, float* %9061
%9062 = load float*, float** %12
%9063 = getelementptr inbounds float, float* %9062, i64 1
%9064 = load float, float* %9063
%9065 = load float*, float** %8
%9066 = getelementptr inbounds float, float* %9065, i64 1
%9067 = load float, float* %9066
%9068 = fsub float %9064, %9067
%9069 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %9068, float* %9069
%9070 = load float*, float** %12
%9071 = getelementptr inbounds float, float* %9070, i64 2
%9072 = load float, float* %9071
%9073 = load float*, float** %8
%9074 = getelementptr inbounds float, float* %9073, i64 2
%9075 = load float, float* %9074
%9076 = fsub float %9072, %9075
%9077 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %9076, float* %9077
%9078 = load float*, float** %10
%9079 = getelementptr inbounds float, float* %9078, i64 0
%9080 = load float, float* %9079
%9081 = load float*, float** %8
%9082 = getelementptr inbounds float, float* %9081, i64 0
%9083 = load float, float* %9082
%9084 = fsub float %9080, %9083
%9085 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %9084, float* %9085
%9086 = load float*, float** %10
%9087 = getelementptr inbounds float, float* %9086, i64 1
%9088 = load float, float* %9087
%9089 = load float*, float** %8
%9090 = getelementptr inbounds float, float* %9089, i64 1
%9091 = load float, float* %9090
%9092 = fsub float %9088, %9091
%9093 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %9092, float* %9093
%9094 = load float*, float** %10
%9095 = getelementptr inbounds float, float* %9094, i64 2
%9096 = load float, float* %9095
%9097 = load float*, float** %8
%9098 = getelementptr inbounds float, float* %9097, i64 2
%9099 = load float, float* %9098
%9100 = fsub float %9096, %9099
%9101 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %9100, float* %9101
%9102 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%9103 = load float, float* %9102
%9104 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%9105 = load float, float* %9104
%9106 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%9107 = load float, float* %9106
%9108 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%9109 = load float, float* %9108
%9110 = fmul float %9107, %9109
%9111 = fneg float %9110
%9112 = call float @llvm.fmuladd.f32(float %9103, float %9105, float %9111)
%9113 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %9112, float* %9113
%9114 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%9115 = load float, float* %9114
%9116 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%9117 = load float, float* %9116
%9118 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%9119 = load float, float* %9118
%9120 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%9121 = load float, float* %9120
%9122 = fmul float %9119, %9121
%9123 = fneg float %9122
%9124 = call float @llvm.fmuladd.f32(float %9115, float %9117, float %9123)
%9125 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %9124, float* %9125
%9126 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%9127 = load float, float* %9126
%9128 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%9129 = load float, float* %9128
%9130 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%9131 = load float, float* %9130
%9132 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%9133 = load float, float* %9132
%9134 = fmul float %9131, %9133
%9135 = fneg float %9134
%9136 = call float @llvm.fmuladd.f32(float %9127, float %9129, float %9135)
%9137 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %9136, float* %9137
%9138 = load float*, float** %11
%9139 = getelementptr inbounds float, float* %9138, i64 0
%9140 = load float, float* %9139
%9141 = load float*, float** %8
%9142 = getelementptr inbounds float, float* %9141, i64 0
%9143 = load float, float* %9142
%9144 = fsub float %9140, %9143
%9145 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %9144, float* %9145
%9146 = load float*, float** %11
%9147 = getelementptr inbounds float, float* %9146, i64 1
%9148 = load float, float* %9147
%9149 = load float*, float** %8
%9150 = getelementptr inbounds float, float* %9149, i64 1
%9151 = load float, float* %9150
%9152 = fsub float %9148, %9151
%9153 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %9152, float* %9153
%9154 = load float*, float** %11
%9155 = getelementptr inbounds float, float* %9154, i64 2
%9156 = load float, float* %9155
%9157 = load float*, float** %8
%9158 = getelementptr inbounds float, float* %9157, i64 2
%9159 = load float, float* %9158
%9160 = fsub float %9156, %9159
%9161 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %9160, float* %9161
%9162 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%9163 = load float, float* %9162
%9164 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%9165 = load float, float* %9164
%9166 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%9167 = load float, float* %9166
%9168 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%9169 = load float, float* %9168
%9170 = fmul float %9167, %9169
%9171 = call float @llvm.fmuladd.f32(float %9163, float %9165, float %9170)
%9172 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%9173 = load float, float* %9172
%9174 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%9175 = load float, float* %9174
%9176 = call float @llvm.fmuladd.f32(float %9173, float %9175, float %9171)
%9177 = fcmp ogt float %9176, 0.000000e+00
br i1 %9177, label %9178, label %9179
9178: ; preds = %9053
store i32 0, i32* %7
br label %37477
9179: ; preds = %9053
store i32 1, i32* %7
br label %37477
9180: ; preds = %8668
%9181 = load float, float* %19
%9182 = fcmp ogt float %9181, 0.000000e+00
br i1 %9182, label %9183, label %9436
9183: ; preds = %9180
%9184 = load float*, float** %13
%9185 = getelementptr inbounds float, float* %9184, i64 0
%9186 = load float, float* %9185
%9187 = load float*, float** %9
%9188 = getelementptr inbounds float, float* %9187, i64 0
%9189 = load float, float* %9188
%9190 = fsub float %9186, %9189
%9191 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %9190, float* %9191
%9192 = load float*, float** %13
%9193 = getelementptr inbounds float, float* %9192, i64 1
%9194 = load float, float* %9193
%9195 = load float*, float** %9
%9196 = getelementptr inbounds float, float* %9195, i64 1
%9197 = load float, float* %9196
%9198 = fsub float %9194, %9197
%9199 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %9198, float* %9199
%9200 = load float*, float** %13
%9201 = getelementptr inbounds float, float* %9200, i64 2
%9202 = load float, float* %9201
%9203 = load float*, float** %9
%9204 = getelementptr inbounds float, float* %9203, i64 2
%9205 = load float, float* %9204
%9206 = fsub float %9202, %9205
%9207 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %9206, float* %9207
%9208 = load float*, float** %8
%9209 = getelementptr inbounds float, float* %9208, i64 0
%9210 = load float, float* %9209
%9211 = load float*, float** %9
%9212 = getelementptr inbounds float, float* %9211, i64 0
%9213 = load float, float* %9212
%9214 = fsub float %9210, %9213
%9215 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %9214, float* %9215
%9216 = load float*, float** %8
%9217 = getelementptr inbounds float, float* %9216, i64 1
%9218 = load float, float* %9217
%9219 = load float*, float** %9
%9220 = getelementptr inbounds float, float* %9219, i64 1
%9221 = load float, float* %9220
%9222 = fsub float %9218, %9221
%9223 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %9222, float* %9223
%9224 = load float*, float** %8
%9225 = getelementptr inbounds float, float* %9224, i64 2
%9226 = load float, float* %9225
%9227 = load float*, float** %9
%9228 = getelementptr inbounds float, float* %9227, i64 2
%9229 = load float, float* %9228
%9230 = fsub float %9226, %9229
%9231 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %9230, float* %9231
%9232 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%9233 = load float, float* %9232
%9234 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%9235 = load float, float* %9234
%9236 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%9237 = load float, float* %9236
%9238 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%9239 = load float, float* %9238
%9240 = fmul float %9237, %9239
%9241 = fneg float %9240
%9242 = call float @llvm.fmuladd.f32(float %9233, float %9235, float %9241)
%9243 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %9242, float* %9243
%9244 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%9245 = load float, float* %9244
%9246 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%9247 = load float, float* %9246
%9248 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%9249 = load float, float* %9248
%9250 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%9251 = load float, float* %9250
%9252 = fmul float %9249, %9251
%9253 = fneg float %9252
%9254 = call float @llvm.fmuladd.f32(float %9245, float %9247, float %9253)
%9255 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %9254, float* %9255
%9256 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%9257 = load float, float* %9256
%9258 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%9259 = load float, float* %9258
%9260 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%9261 = load float, float* %9260
%9262 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%9263 = load float, float* %9262
%9264 = fmul float %9261, %9263
%9265 = fneg float %9264
%9266 = call float @llvm.fmuladd.f32(float %9257, float %9259, float %9265)
%9267 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %9266, float* %9267
%9268 = load float*, float** %11
%9269 = getelementptr inbounds float, float* %9268, i64 0
%9270 = load float, float* %9269
%9271 = load float*, float** %9
%9272 = getelementptr inbounds float, float* %9271, i64 0
%9273 = load float, float* %9272
%9274 = fsub float %9270, %9273
%9275 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %9274, float* %9275
%9276 = load float*, float** %11
%9277 = getelementptr inbounds float, float* %9276, i64 1
%9278 = load float, float* %9277
%9279 = load float*, float** %9
%9280 = getelementptr inbounds float, float* %9279, i64 1
%9281 = load float, float* %9280
%9282 = fsub float %9278, %9281
%9283 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %9282, float* %9283
%9284 = load float*, float** %11
%9285 = getelementptr inbounds float, float* %9284, i64 2
%9286 = load float, float* %9285
%9287 = load float*, float** %9
%9288 = getelementptr inbounds float, float* %9287, i64 2
%9289 = load float, float* %9288
%9290 = fsub float %9286, %9289
%9291 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %9290, float* %9291
%9292 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%9293 = load float, float* %9292
%9294 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%9295 = load float, float* %9294
%9296 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%9297 = load float, float* %9296
%9298 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%9299 = load float, float* %9298
%9300 = fmul float %9297, %9299
%9301 = call float @llvm.fmuladd.f32(float %9293, float %9295, float %9300)
%9302 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%9303 = load float, float* %9302
%9304 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%9305 = load float, float* %9304
%9306 = call float @llvm.fmuladd.f32(float %9303, float %9305, float %9301)
%9307 = fcmp ogt float %9306, 0.000000e+00
br i1 %9307, label %9308, label %9309
9308: ; preds = %9183
store i32 0, i32* %7
br label %37477
9309: ; preds = %9183
%9310 = load float*, float** %13
%9311 = getelementptr inbounds float, float* %9310, i64 0
%9312 = load float, float* %9311
%9313 = load float*, float** %8
%9314 = getelementptr inbounds float, float* %9313, i64 0
%9315 = load float, float* %9314
%9316 = fsub float %9312, %9315
%9317 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %9316, float* %9317
%9318 = load float*, float** %13
%9319 = getelementptr inbounds float, float* %9318, i64 1
%9320 = load float, float* %9319
%9321 = load float*, float** %8
%9322 = getelementptr inbounds float, float* %9321, i64 1
%9323 = load float, float* %9322
%9324 = fsub float %9320, %9323
%9325 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %9324, float* %9325
%9326 = load float*, float** %13
%9327 = getelementptr inbounds float, float* %9326, i64 2
%9328 = load float, float* %9327
%9329 = load float*, float** %8
%9330 = getelementptr inbounds float, float* %9329, i64 2
%9331 = load float, float* %9330
%9332 = fsub float %9328, %9331
%9333 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %9332, float* %9333
%9334 = load float*, float** %10
%9335 = getelementptr inbounds float, float* %9334, i64 0
%9336 = load float, float* %9335
%9337 = load float*, float** %8
%9338 = getelementptr inbounds float, float* %9337, i64 0
%9339 = load float, float* %9338
%9340 = fsub float %9336, %9339
%9341 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %9340, float* %9341
%9342 = load float*, float** %10
%9343 = getelementptr inbounds float, float* %9342, i64 1
%9344 = load float, float* %9343
%9345 = load float*, float** %8
%9346 = getelementptr inbounds float, float* %9345, i64 1
%9347 = load float, float* %9346
%9348 = fsub float %9344, %9347
%9349 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %9348, float* %9349
%9350 = load float*, float** %10
%9351 = getelementptr inbounds float, float* %9350, i64 2
%9352 = load float, float* %9351
%9353 = load float*, float** %8
%9354 = getelementptr inbounds float, float* %9353, i64 2
%9355 = load float, float* %9354
%9356 = fsub float %9352, %9355
%9357 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %9356, float* %9357
%9358 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%9359 = load float, float* %9358
%9360 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%9361 = load float, float* %9360
%9362 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%9363 = load float, float* %9362
%9364 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%9365 = load float, float* %9364
%9366 = fmul float %9363, %9365
%9367 = fneg float %9366
%9368 = call float @llvm.fmuladd.f32(float %9359, float %9361, float %9367)
%9369 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %9368, float* %9369
%9370 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%9371 = load float, float* %9370
%9372 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%9373 = load float, float* %9372
%9374 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%9375 = load float, float* %9374
%9376 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%9377 = load float, float* %9376
%9378 = fmul float %9375, %9377
%9379 = fneg float %9378
%9380 = call float @llvm.fmuladd.f32(float %9371, float %9373, float %9379)
%9381 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %9380, float* %9381
%9382 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%9383 = load float, float* %9382
%9384 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%9385 = load float, float* %9384
%9386 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%9387 = load float, float* %9386
%9388 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%9389 = load float, float* %9388
%9390 = fmul float %9387, %9389
%9391 = fneg float %9390
%9392 = call float @llvm.fmuladd.f32(float %9383, float %9385, float %9391)
%9393 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %9392, float* %9393
%9394 = load float*, float** %12
%9395 = getelementptr inbounds float, float* %9394, i64 0
%9396 = load float, float* %9395
%9397 = load float*, float** %8
%9398 = getelementptr inbounds float, float* %9397, i64 0
%9399 = load float, float* %9398
%9400 = fsub float %9396, %9399
%9401 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %9400, float* %9401
%9402 = load float*, float** %12
%9403 = getelementptr inbounds float, float* %9402, i64 1
%9404 = load float, float* %9403
%9405 = load float*, float** %8
%9406 = getelementptr inbounds float, float* %9405, i64 1
%9407 = load float, float* %9406
%9408 = fsub float %9404, %9407
%9409 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %9408, float* %9409
%9410 = load float*, float** %12
%9411 = getelementptr inbounds float, float* %9410, i64 2
%9412 = load float, float* %9411
%9413 = load float*, float** %8
%9414 = getelementptr inbounds float, float* %9413, i64 2
%9415 = load float, float* %9414
%9416 = fsub float %9412, %9415
%9417 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %9416, float* %9417
%9418 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%9419 = load float, float* %9418
%9420 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%9421 = load float, float* %9420
%9422 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%9423 = load float, float* %9422
%9424 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%9425 = load float, float* %9424
%9426 = fmul float %9423, %9425
%9427 = call float @llvm.fmuladd.f32(float %9419, float %9421, float %9426)
%9428 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%9429 = load float, float* %9428
%9430 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%9431 = load float, float* %9430
%9432 = call float @llvm.fmuladd.f32(float %9429, float %9431, float %9427)
%9433 = fcmp ogt float %9432, 0.000000e+00
br i1 %9433, label %9434, label %9435
9434: ; preds = %9309
store i32 0, i32* %7
br label %37477
9435: ; preds = %9309
store i32 1, i32* %7
br label %37477
9436: ; preds = %9180
%9437 = load float, float* %19
%9438 = fcmp olt float %9437, 0.000000e+00
br i1 %9438, label %9439, label %9692
9439: ; preds = %9436
%9440 = load float*, float** %13
%9441 = getelementptr inbounds float, float* %9440, i64 0
%9442 = load float, float* %9441
%9443 = load float*, float** %10
%9444 = getelementptr inbounds float, float* %9443, i64 0
%9445 = load float, float* %9444
%9446 = fsub float %9442, %9445
%9447 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %9446, float* %9447
%9448 = load float*, float** %13
%9449 = getelementptr inbounds float, float* %9448, i64 1
%9450 = load float, float* %9449
%9451 = load float*, float** %10
%9452 = getelementptr inbounds float, float* %9451, i64 1
%9453 = load float, float* %9452
%9454 = fsub float %9450, %9453
%9455 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %9454, float* %9455
%9456 = load float*, float** %13
%9457 = getelementptr inbounds float, float* %9456, i64 2
%9458 = load float, float* %9457
%9459 = load float*, float** %10
%9460 = getelementptr inbounds float, float* %9459, i64 2
%9461 = load float, float* %9460
%9462 = fsub float %9458, %9461
%9463 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %9462, float* %9463
%9464 = load float*, float** %8
%9465 = getelementptr inbounds float, float* %9464, i64 0
%9466 = load float, float* %9465
%9467 = load float*, float** %10
%9468 = getelementptr inbounds float, float* %9467, i64 0
%9469 = load float, float* %9468
%9470 = fsub float %9466, %9469
%9471 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %9470, float* %9471
%9472 = load float*, float** %8
%9473 = getelementptr inbounds float, float* %9472, i64 1
%9474 = load float, float* %9473
%9475 = load float*, float** %10
%9476 = getelementptr inbounds float, float* %9475, i64 1
%9477 = load float, float* %9476
%9478 = fsub float %9474, %9477
%9479 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %9478, float* %9479
%9480 = load float*, float** %8
%9481 = getelementptr inbounds float, float* %9480, i64 2
%9482 = load float, float* %9481
%9483 = load float*, float** %10
%9484 = getelementptr inbounds float, float* %9483, i64 2
%9485 = load float, float* %9484
%9486 = fsub float %9482, %9485
%9487 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %9486, float* %9487
%9488 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%9489 = load float, float* %9488
%9490 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%9491 = load float, float* %9490
%9492 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%9493 = load float, float* %9492
%9494 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%9495 = load float, float* %9494
%9496 = fmul float %9493, %9495
%9497 = fneg float %9496
%9498 = call float @llvm.fmuladd.f32(float %9489, float %9491, float %9497)
%9499 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %9498, float* %9499
%9500 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%9501 = load float, float* %9500
%9502 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%9503 = load float, float* %9502
%9504 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%9505 = load float, float* %9504
%9506 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%9507 = load float, float* %9506
%9508 = fmul float %9505, %9507
%9509 = fneg float %9508
%9510 = call float @llvm.fmuladd.f32(float %9501, float %9503, float %9509)
%9511 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %9510, float* %9511
%9512 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%9513 = load float, float* %9512
%9514 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%9515 = load float, float* %9514
%9516 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%9517 = load float, float* %9516
%9518 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%9519 = load float, float* %9518
%9520 = fmul float %9517, %9519
%9521 = fneg float %9520
%9522 = call float @llvm.fmuladd.f32(float %9513, float %9515, float %9521)
%9523 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %9522, float* %9523
%9524 = load float*, float** %11
%9525 = getelementptr inbounds float, float* %9524, i64 0
%9526 = load float, float* %9525
%9527 = load float*, float** %10
%9528 = getelementptr inbounds float, float* %9527, i64 0
%9529 = load float, float* %9528
%9530 = fsub float %9526, %9529
%9531 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %9530, float* %9531
%9532 = load float*, float** %11
%9533 = getelementptr inbounds float, float* %9532, i64 1
%9534 = load float, float* %9533
%9535 = load float*, float** %10
%9536 = getelementptr inbounds float, float* %9535, i64 1
%9537 = load float, float* %9536
%9538 = fsub float %9534, %9537
%9539 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %9538, float* %9539
%9540 = load float*, float** %11
%9541 = getelementptr inbounds float, float* %9540, i64 2
%9542 = load float, float* %9541
%9543 = load float*, float** %10
%9544 = getelementptr inbounds float, float* %9543, i64 2
%9545 = load float, float* %9544
%9546 = fsub float %9542, %9545
%9547 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %9546, float* %9547
%9548 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%9549 = load float, float* %9548
%9550 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%9551 = load float, float* %9550
%9552 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%9553 = load float, float* %9552
%9554 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%9555 = load float, float* %9554
%9556 = fmul float %9553, %9555
%9557 = call float @llvm.fmuladd.f32(float %9549, float %9551, float %9556)
%9558 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%9559 = load float, float* %9558
%9560 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%9561 = load float, float* %9560
%9562 = call float @llvm.fmuladd.f32(float %9559, float %9561, float %9557)
%9563 = fcmp ogt float %9562, 0.000000e+00
br i1 %9563, label %9564, label %9565
9564: ; preds = %9439
store i32 0, i32* %7
br label %37477
9565: ; preds = %9439
%9566 = load float*, float** %13
%9567 = getelementptr inbounds float, float* %9566, i64 0
%9568 = load float, float* %9567
%9569 = load float*, float** %8
%9570 = getelementptr inbounds float, float* %9569, i64 0
%9571 = load float, float* %9570
%9572 = fsub float %9568, %9571
%9573 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %9572, float* %9573
%9574 = load float*, float** %13
%9575 = getelementptr inbounds float, float* %9574, i64 1
%9576 = load float, float* %9575
%9577 = load float*, float** %8
%9578 = getelementptr inbounds float, float* %9577, i64 1
%9579 = load float, float* %9578
%9580 = fsub float %9576, %9579
%9581 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %9580, float* %9581
%9582 = load float*, float** %13
%9583 = getelementptr inbounds float, float* %9582, i64 2
%9584 = load float, float* %9583
%9585 = load float*, float** %8
%9586 = getelementptr inbounds float, float* %9585, i64 2
%9587 = load float, float* %9586
%9588 = fsub float %9584, %9587
%9589 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %9588, float* %9589
%9590 = load float*, float** %9
%9591 = getelementptr inbounds float, float* %9590, i64 0
%9592 = load float, float* %9591
%9593 = load float*, float** %8
%9594 = getelementptr inbounds float, float* %9593, i64 0
%9595 = load float, float* %9594
%9596 = fsub float %9592, %9595
%9597 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %9596, float* %9597
%9598 = load float*, float** %9
%9599 = getelementptr inbounds float, float* %9598, i64 1
%9600 = load float, float* %9599
%9601 = load float*, float** %8
%9602 = getelementptr inbounds float, float* %9601, i64 1
%9603 = load float, float* %9602
%9604 = fsub float %9600, %9603
%9605 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %9604, float* %9605
%9606 = load float*, float** %9
%9607 = getelementptr inbounds float, float* %9606, i64 2
%9608 = load float, float* %9607
%9609 = load float*, float** %8
%9610 = getelementptr inbounds float, float* %9609, i64 2
%9611 = load float, float* %9610
%9612 = fsub float %9608, %9611
%9613 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %9612, float* %9613
%9614 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%9615 = load float, float* %9614
%9616 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%9617 = load float, float* %9616
%9618 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%9619 = load float, float* %9618
%9620 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%9621 = load float, float* %9620
%9622 = fmul float %9619, %9621
%9623 = fneg float %9622
%9624 = call float @llvm.fmuladd.f32(float %9615, float %9617, float %9623)
%9625 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %9624, float* %9625
%9626 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%9627 = load float, float* %9626
%9628 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%9629 = load float, float* %9628
%9630 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%9631 = load float, float* %9630
%9632 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%9633 = load float, float* %9632
%9634 = fmul float %9631, %9633
%9635 = fneg float %9634
%9636 = call float @llvm.fmuladd.f32(float %9627, float %9629, float %9635)
%9637 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %9636, float* %9637
%9638 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%9639 = load float, float* %9638
%9640 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%9641 = load float, float* %9640
%9642 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%9643 = load float, float* %9642
%9644 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%9645 = load float, float* %9644
%9646 = fmul float %9643, %9645
%9647 = fneg float %9646
%9648 = call float @llvm.fmuladd.f32(float %9639, float %9641, float %9647)
%9649 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %9648, float* %9649
%9650 = load float*, float** %12
%9651 = getelementptr inbounds float, float* %9650, i64 0
%9652 = load float, float* %9651
%9653 = load float*, float** %8
%9654 = getelementptr inbounds float, float* %9653, i64 0
%9655 = load float, float* %9654
%9656 = fsub float %9652, %9655
%9657 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %9656, float* %9657
%9658 = load float*, float** %12
%9659 = getelementptr inbounds float, float* %9658, i64 1
%9660 = load float, float* %9659
%9661 = load float*, float** %8
%9662 = getelementptr inbounds float, float* %9661, i64 1
%9663 = load float, float* %9662
%9664 = fsub float %9660, %9663
%9665 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %9664, float* %9665
%9666 = load float*, float** %12
%9667 = getelementptr inbounds float, float* %9666, i64 2
%9668 = load float, float* %9667
%9669 = load float*, float** %8
%9670 = getelementptr inbounds float, float* %9669, i64 2
%9671 = load float, float* %9670
%9672 = fsub float %9668, %9671
%9673 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %9672, float* %9673
%9674 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%9675 = load float, float* %9674
%9676 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%9677 = load float, float* %9676
%9678 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%9679 = load float, float* %9678
%9680 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%9681 = load float, float* %9680
%9682 = fmul float %9679, %9681
%9683 = call float @llvm.fmuladd.f32(float %9675, float %9677, float %9682)
%9684 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%9685 = load float, float* %9684
%9686 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%9687 = load float, float* %9686
%9688 = call float @llvm.fmuladd.f32(float %9685, float %9687, float %9683)
%9689 = fcmp ogt float %9688, 0.000000e+00
br i1 %9689, label %9690, label %9691
9690: ; preds = %9565
store i32 0, i32* %7
br label %37477
9691: ; preds = %9565
store i32 1, i32* %7
br label %37477
9692: ; preds = %9436
%9693 = load float*, float** %8
%9694 = load float*, float** %9
%9695 = load float*, float** %10
%9696 = load float*, float** %11
%9697 = load float*, float** %12
%9698 = load float*, float** %13
%9699 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%9700 = getelementptr inbounds [3 x float], [3 x float]* %23, i64 0, i64 0
%9701 = call i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...) bitcast (i32 (...)* @coplanar_tri_tri3d to i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...)*)(float* %9693, float* %9694, float* %9695, float* %9696, float* %9697, float* %9698, float* %9699, float* %9700)
store i32 %9701, i32* %7
br label %37477
9702: ; preds = %447
%9703 = load float, float* %14
%9704 = fcmp olt float %9703, 0.000000e+00
br i1 %9704, label %9705, label %18957
9705: ; preds = %9702
%9706 = load float, float* %15
%9707 = fcmp olt float %9706, 0.000000e+00
br i1 %9707, label %9708, label %12790
9708: ; preds = %9705
%9709 = load float, float* %17
%9710 = fcmp ogt float %9709, 0.000000e+00
br i1 %9710, label %9711, label %10476
9711: ; preds = %9708
%9712 = load float, float* %18
%9713 = fcmp ogt float %9712, 0.000000e+00
br i1 %9713, label %9714, label %9967
9714: ; preds = %9711
%9715 = load float*, float** %13
%9716 = getelementptr inbounds float, float* %9715, i64 0
%9717 = load float, float* %9716
%9718 = load float*, float** %9
%9719 = getelementptr inbounds float, float* %9718, i64 0
%9720 = load float, float* %9719
%9721 = fsub float %9717, %9720
%9722 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %9721, float* %9722
%9723 = load float*, float** %13
%9724 = getelementptr inbounds float, float* %9723, i64 1
%9725 = load float, float* %9724
%9726 = load float*, float** %9
%9727 = getelementptr inbounds float, float* %9726, i64 1
%9728 = load float, float* %9727
%9729 = fsub float %9725, %9728
%9730 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %9729, float* %9730
%9731 = load float*, float** %13
%9732 = getelementptr inbounds float, float* %9731, i64 2
%9733 = load float, float* %9732
%9734 = load float*, float** %9
%9735 = getelementptr inbounds float, float* %9734, i64 2
%9736 = load float, float* %9735
%9737 = fsub float %9733, %9736
%9738 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %9737, float* %9738
%9739 = load float*, float** %10
%9740 = getelementptr inbounds float, float* %9739, i64 0
%9741 = load float, float* %9740
%9742 = load float*, float** %9
%9743 = getelementptr inbounds float, float* %9742, i64 0
%9744 = load float, float* %9743
%9745 = fsub float %9741, %9744
%9746 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %9745, float* %9746
%9747 = load float*, float** %10
%9748 = getelementptr inbounds float, float* %9747, i64 1
%9749 = load float, float* %9748
%9750 = load float*, float** %9
%9751 = getelementptr inbounds float, float* %9750, i64 1
%9752 = load float, float* %9751
%9753 = fsub float %9749, %9752
%9754 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %9753, float* %9754
%9755 = load float*, float** %10
%9756 = getelementptr inbounds float, float* %9755, i64 2
%9757 = load float, float* %9756
%9758 = load float*, float** %9
%9759 = getelementptr inbounds float, float* %9758, i64 2
%9760 = load float, float* %9759
%9761 = fsub float %9757, %9760
%9762 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %9761, float* %9762
%9763 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%9764 = load float, float* %9763
%9765 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%9766 = load float, float* %9765
%9767 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%9768 = load float, float* %9767
%9769 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%9770 = load float, float* %9769
%9771 = fmul float %9768, %9770
%9772 = fneg float %9771
%9773 = call float @llvm.fmuladd.f32(float %9764, float %9766, float %9772)
%9774 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %9773, float* %9774
%9775 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%9776 = load float, float* %9775
%9777 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%9778 = load float, float* %9777
%9779 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%9780 = load float, float* %9779
%9781 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%9782 = load float, float* %9781
%9783 = fmul float %9780, %9782
%9784 = fneg float %9783
%9785 = call float @llvm.fmuladd.f32(float %9776, float %9778, float %9784)
%9786 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %9785, float* %9786
%9787 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%9788 = load float, float* %9787
%9789 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%9790 = load float, float* %9789
%9791 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%9792 = load float, float* %9791
%9793 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%9794 = load float, float* %9793
%9795 = fmul float %9792, %9794
%9796 = fneg float %9795
%9797 = call float @llvm.fmuladd.f32(float %9788, float %9790, float %9796)
%9798 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %9797, float* %9798
%9799 = load float*, float** %11
%9800 = getelementptr inbounds float, float* %9799, i64 0
%9801 = load float, float* %9800
%9802 = load float*, float** %9
%9803 = getelementptr inbounds float, float* %9802, i64 0
%9804 = load float, float* %9803
%9805 = fsub float %9801, %9804
%9806 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %9805, float* %9806
%9807 = load float*, float** %11
%9808 = getelementptr inbounds float, float* %9807, i64 1
%9809 = load float, float* %9808
%9810 = load float*, float** %9
%9811 = getelementptr inbounds float, float* %9810, i64 1
%9812 = load float, float* %9811
%9813 = fsub float %9809, %9812
%9814 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %9813, float* %9814
%9815 = load float*, float** %11
%9816 = getelementptr inbounds float, float* %9815, i64 2
%9817 = load float, float* %9816
%9818 = load float*, float** %9
%9819 = getelementptr inbounds float, float* %9818, i64 2
%9820 = load float, float* %9819
%9821 = fsub float %9817, %9820
%9822 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %9821, float* %9822
%9823 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%9824 = load float, float* %9823
%9825 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%9826 = load float, float* %9825
%9827 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%9828 = load float, float* %9827
%9829 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%9830 = load float, float* %9829
%9831 = fmul float %9828, %9830
%9832 = call float @llvm.fmuladd.f32(float %9824, float %9826, float %9831)
%9833 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%9834 = load float, float* %9833
%9835 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%9836 = load float, float* %9835
%9837 = call float @llvm.fmuladd.f32(float %9834, float %9836, float %9832)
%9838 = fcmp ogt float %9837, 0.000000e+00
br i1 %9838, label %9839, label %9840
9839: ; preds = %9714
store i32 0, i32* %7
br label %37477
9840: ; preds = %9714
%9841 = load float*, float** %13
%9842 = getelementptr inbounds float, float* %9841, i64 0
%9843 = load float, float* %9842
%9844 = load float*, float** %10
%9845 = getelementptr inbounds float, float* %9844, i64 0
%9846 = load float, float* %9845
%9847 = fsub float %9843, %9846
%9848 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %9847, float* %9848
%9849 = load float*, float** %13
%9850 = getelementptr inbounds float, float* %9849, i64 1
%9851 = load float, float* %9850
%9852 = load float*, float** %10
%9853 = getelementptr inbounds float, float* %9852, i64 1
%9854 = load float, float* %9853
%9855 = fsub float %9851, %9854
%9856 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %9855, float* %9856
%9857 = load float*, float** %13
%9858 = getelementptr inbounds float, float* %9857, i64 2
%9859 = load float, float* %9858
%9860 = load float*, float** %10
%9861 = getelementptr inbounds float, float* %9860, i64 2
%9862 = load float, float* %9861
%9863 = fsub float %9859, %9862
%9864 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %9863, float* %9864
%9865 = load float*, float** %8
%9866 = getelementptr inbounds float, float* %9865, i64 0
%9867 = load float, float* %9866
%9868 = load float*, float** %10
%9869 = getelementptr inbounds float, float* %9868, i64 0
%9870 = load float, float* %9869
%9871 = fsub float %9867, %9870
%9872 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %9871, float* %9872
%9873 = load float*, float** %8
%9874 = getelementptr inbounds float, float* %9873, i64 1
%9875 = load float, float* %9874
%9876 = load float*, float** %10
%9877 = getelementptr inbounds float, float* %9876, i64 1
%9878 = load float, float* %9877
%9879 = fsub float %9875, %9878
%9880 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %9879, float* %9880
%9881 = load float*, float** %8
%9882 = getelementptr inbounds float, float* %9881, i64 2
%9883 = load float, float* %9882
%9884 = load float*, float** %10
%9885 = getelementptr inbounds float, float* %9884, i64 2
%9886 = load float, float* %9885
%9887 = fsub float %9883, %9886
%9888 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %9887, float* %9888
%9889 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%9890 = load float, float* %9889
%9891 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%9892 = load float, float* %9891
%9893 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%9894 = load float, float* %9893
%9895 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%9896 = load float, float* %9895
%9897 = fmul float %9894, %9896
%9898 = fneg float %9897
%9899 = call float @llvm.fmuladd.f32(float %9890, float %9892, float %9898)
%9900 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %9899, float* %9900
%9901 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%9902 = load float, float* %9901
%9903 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%9904 = load float, float* %9903
%9905 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%9906 = load float, float* %9905
%9907 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%9908 = load float, float* %9907
%9909 = fmul float %9906, %9908
%9910 = fneg float %9909
%9911 = call float @llvm.fmuladd.f32(float %9902, float %9904, float %9910)
%9912 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %9911, float* %9912
%9913 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%9914 = load float, float* %9913
%9915 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%9916 = load float, float* %9915
%9917 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%9918 = load float, float* %9917
%9919 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%9920 = load float, float* %9919
%9921 = fmul float %9918, %9920
%9922 = fneg float %9921
%9923 = call float @llvm.fmuladd.f32(float %9914, float %9916, float %9922)
%9924 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %9923, float* %9924
%9925 = load float*, float** %12
%9926 = getelementptr inbounds float, float* %9925, i64 0
%9927 = load float, float* %9926
%9928 = load float*, float** %10
%9929 = getelementptr inbounds float, float* %9928, i64 0
%9930 = load float, float* %9929
%9931 = fsub float %9927, %9930
%9932 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %9931, float* %9932
%9933 = load float*, float** %12
%9934 = getelementptr inbounds float, float* %9933, i64 1
%9935 = load float, float* %9934
%9936 = load float*, float** %10
%9937 = getelementptr inbounds float, float* %9936, i64 1
%9938 = load float, float* %9937
%9939 = fsub float %9935, %9938
%9940 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %9939, float* %9940
%9941 = load float*, float** %12
%9942 = getelementptr inbounds float, float* %9941, i64 2
%9943 = load float, float* %9942
%9944 = load float*, float** %10
%9945 = getelementptr inbounds float, float* %9944, i64 2
%9946 = load float, float* %9945
%9947 = fsub float %9943, %9946
%9948 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %9947, float* %9948
%9949 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%9950 = load float, float* %9949
%9951 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%9952 = load float, float* %9951
%9953 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%9954 = load float, float* %9953
%9955 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%9956 = load float, float* %9955
%9957 = fmul float %9954, %9956
%9958 = call float @llvm.fmuladd.f32(float %9950, float %9952, float %9957)
%9959 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%9960 = load float, float* %9959
%9961 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%9962 = load float, float* %9961
%9963 = call float @llvm.fmuladd.f32(float %9960, float %9962, float %9958)
%9964 = fcmp ogt float %9963, 0.000000e+00
br i1 %9964, label %9965, label %9966
9965: ; preds = %9840
store i32 0, i32* %7
br label %37477
9966: ; preds = %9840
store i32 1, i32* %7
br label %37477
9967: ; preds = %9711
%9968 = load float, float* %19
%9969 = fcmp ogt float %9968, 0.000000e+00
br i1 %9969, label %9970, label %10223
9970: ; preds = %9967
%9971 = load float*, float** %12
%9972 = getelementptr inbounds float, float* %9971, i64 0
%9973 = load float, float* %9972
%9974 = load float*, float** %9
%9975 = getelementptr inbounds float, float* %9974, i64 0
%9976 = load float, float* %9975
%9977 = fsub float %9973, %9976
%9978 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %9977, float* %9978
%9979 = load float*, float** %12
%9980 = getelementptr inbounds float, float* %9979, i64 1
%9981 = load float, float* %9980
%9982 = load float*, float** %9
%9983 = getelementptr inbounds float, float* %9982, i64 1
%9984 = load float, float* %9983
%9985 = fsub float %9981, %9984
%9986 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %9985, float* %9986
%9987 = load float*, float** %12
%9988 = getelementptr inbounds float, float* %9987, i64 2
%9989 = load float, float* %9988
%9990 = load float*, float** %9
%9991 = getelementptr inbounds float, float* %9990, i64 2
%9992 = load float, float* %9991
%9993 = fsub float %9989, %9992
%9994 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %9993, float* %9994
%9995 = load float*, float** %10
%9996 = getelementptr inbounds float, float* %9995, i64 0
%9997 = load float, float* %9996
%9998 = load float*, float** %9
%9999 = getelementptr inbounds float, float* %9998, i64 0
%10000 = load float, float* %9999
%10001 = fsub float %9997, %10000
%10002 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %10001, float* %10002
%10003 = load float*, float** %10
%10004 = getelementptr inbounds float, float* %10003, i64 1
%10005 = load float, float* %10004
%10006 = load float*, float** %9
%10007 = getelementptr inbounds float, float* %10006, i64 1
%10008 = load float, float* %10007
%10009 = fsub float %10005, %10008
%10010 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %10009, float* %10010
%10011 = load float*, float** %10
%10012 = getelementptr inbounds float, float* %10011, i64 2
%10013 = load float, float* %10012
%10014 = load float*, float** %9
%10015 = getelementptr inbounds float, float* %10014, i64 2
%10016 = load float, float* %10015
%10017 = fsub float %10013, %10016
%10018 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %10017, float* %10018
%10019 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%10020 = load float, float* %10019
%10021 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%10022 = load float, float* %10021
%10023 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%10024 = load float, float* %10023
%10025 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%10026 = load float, float* %10025
%10027 = fmul float %10024, %10026
%10028 = fneg float %10027
%10029 = call float @llvm.fmuladd.f32(float %10020, float %10022, float %10028)
%10030 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %10029, float* %10030
%10031 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%10032 = load float, float* %10031
%10033 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%10034 = load float, float* %10033
%10035 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%10036 = load float, float* %10035
%10037 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%10038 = load float, float* %10037
%10039 = fmul float %10036, %10038
%10040 = fneg float %10039
%10041 = call float @llvm.fmuladd.f32(float %10032, float %10034, float %10040)
%10042 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %10041, float* %10042
%10043 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%10044 = load float, float* %10043
%10045 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%10046 = load float, float* %10045
%10047 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%10048 = load float, float* %10047
%10049 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%10050 = load float, float* %10049
%10051 = fmul float %10048, %10050
%10052 = fneg float %10051
%10053 = call float @llvm.fmuladd.f32(float %10044, float %10046, float %10052)
%10054 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %10053, float* %10054
%10055 = load float*, float** %13
%10056 = getelementptr inbounds float, float* %10055, i64 0
%10057 = load float, float* %10056
%10058 = load float*, float** %9
%10059 = getelementptr inbounds float, float* %10058, i64 0
%10060 = load float, float* %10059
%10061 = fsub float %10057, %10060
%10062 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %10061, float* %10062
%10063 = load float*, float** %13
%10064 = getelementptr inbounds float, float* %10063, i64 1
%10065 = load float, float* %10064
%10066 = load float*, float** %9
%10067 = getelementptr inbounds float, float* %10066, i64 1
%10068 = load float, float* %10067
%10069 = fsub float %10065, %10068
%10070 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %10069, float* %10070
%10071 = load float*, float** %13
%10072 = getelementptr inbounds float, float* %10071, i64 2
%10073 = load float, float* %10072
%10074 = load float*, float** %9
%10075 = getelementptr inbounds float, float* %10074, i64 2
%10076 = load float, float* %10075
%10077 = fsub float %10073, %10076
%10078 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %10077, float* %10078
%10079 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%10080 = load float, float* %10079
%10081 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%10082 = load float, float* %10081
%10083 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%10084 = load float, float* %10083
%10085 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%10086 = load float, float* %10085
%10087 = fmul float %10084, %10086
%10088 = call float @llvm.fmuladd.f32(float %10080, float %10082, float %10087)
%10089 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%10090 = load float, float* %10089
%10091 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%10092 = load float, float* %10091
%10093 = call float @llvm.fmuladd.f32(float %10090, float %10092, float %10088)
%10094 = fcmp ogt float %10093, 0.000000e+00
br i1 %10094, label %10095, label %10096
10095: ; preds = %9970
store i32 0, i32* %7
br label %37477
10096: ; preds = %9970
%10097 = load float*, float** %12
%10098 = getelementptr inbounds float, float* %10097, i64 0
%10099 = load float, float* %10098
%10100 = load float*, float** %10
%10101 = getelementptr inbounds float, float* %10100, i64 0
%10102 = load float, float* %10101
%10103 = fsub float %10099, %10102
%10104 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %10103, float* %10104
%10105 = load float*, float** %12
%10106 = getelementptr inbounds float, float* %10105, i64 1
%10107 = load float, float* %10106
%10108 = load float*, float** %10
%10109 = getelementptr inbounds float, float* %10108, i64 1
%10110 = load float, float* %10109
%10111 = fsub float %10107, %10110
%10112 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %10111, float* %10112
%10113 = load float*, float** %12
%10114 = getelementptr inbounds float, float* %10113, i64 2
%10115 = load float, float* %10114
%10116 = load float*, float** %10
%10117 = getelementptr inbounds float, float* %10116, i64 2
%10118 = load float, float* %10117
%10119 = fsub float %10115, %10118
%10120 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %10119, float* %10120
%10121 = load float*, float** %8
%10122 = getelementptr inbounds float, float* %10121, i64 0
%10123 = load float, float* %10122
%10124 = load float*, float** %10
%10125 = getelementptr inbounds float, float* %10124, i64 0
%10126 = load float, float* %10125
%10127 = fsub float %10123, %10126
%10128 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %10127, float* %10128
%10129 = load float*, float** %8
%10130 = getelementptr inbounds float, float* %10129, i64 1
%10131 = load float, float* %10130
%10132 = load float*, float** %10
%10133 = getelementptr inbounds float, float* %10132, i64 1
%10134 = load float, float* %10133
%10135 = fsub float %10131, %10134
%10136 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %10135, float* %10136
%10137 = load float*, float** %8
%10138 = getelementptr inbounds float, float* %10137, i64 2
%10139 = load float, float* %10138
%10140 = load float*, float** %10
%10141 = getelementptr inbounds float, float* %10140, i64 2
%10142 = load float, float* %10141
%10143 = fsub float %10139, %10142
%10144 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %10143, float* %10144
%10145 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%10146 = load float, float* %10145
%10147 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%10148 = load float, float* %10147
%10149 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%10150 = load float, float* %10149
%10151 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%10152 = load float, float* %10151
%10153 = fmul float %10150, %10152
%10154 = fneg float %10153
%10155 = call float @llvm.fmuladd.f32(float %10146, float %10148, float %10154)
%10156 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %10155, float* %10156
%10157 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%10158 = load float, float* %10157
%10159 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%10160 = load float, float* %10159
%10161 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%10162 = load float, float* %10161
%10163 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%10164 = load float, float* %10163
%10165 = fmul float %10162, %10164
%10166 = fneg float %10165
%10167 = call float @llvm.fmuladd.f32(float %10158, float %10160, float %10166)
%10168 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %10167, float* %10168
%10169 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%10170 = load float, float* %10169
%10171 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%10172 = load float, float* %10171
%10173 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%10174 = load float, float* %10173
%10175 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%10176 = load float, float* %10175
%10177 = fmul float %10174, %10176
%10178 = fneg float %10177
%10179 = call float @llvm.fmuladd.f32(float %10170, float %10172, float %10178)
%10180 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %10179, float* %10180
%10181 = load float*, float** %11
%10182 = getelementptr inbounds float, float* %10181, i64 0
%10183 = load float, float* %10182
%10184 = load float*, float** %10
%10185 = getelementptr inbounds float, float* %10184, i64 0
%10186 = load float, float* %10185
%10187 = fsub float %10183, %10186
%10188 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %10187, float* %10188
%10189 = load float*, float** %11
%10190 = getelementptr inbounds float, float* %10189, i64 1
%10191 = load float, float* %10190
%10192 = load float*, float** %10
%10193 = getelementptr inbounds float, float* %10192, i64 1
%10194 = load float, float* %10193
%10195 = fsub float %10191, %10194
%10196 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %10195, float* %10196
%10197 = load float*, float** %11
%10198 = getelementptr inbounds float, float* %10197, i64 2
%10199 = load float, float* %10198
%10200 = load float*, float** %10
%10201 = getelementptr inbounds float, float* %10200, i64 2
%10202 = load float, float* %10201
%10203 = fsub float %10199, %10202
%10204 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %10203, float* %10204
%10205 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%10206 = load float, float* %10205
%10207 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%10208 = load float, float* %10207
%10209 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%10210 = load float, float* %10209
%10211 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%10212 = load float, float* %10211
%10213 = fmul float %10210, %10212
%10214 = call float @llvm.fmuladd.f32(float %10206, float %10208, float %10213)
%10215 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%10216 = load float, float* %10215
%10217 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%10218 = load float, float* %10217
%10219 = call float @llvm.fmuladd.f32(float %10216, float %10218, float %10214)
%10220 = fcmp ogt float %10219, 0.000000e+00
br i1 %10220, label %10221, label %10222
10221: ; preds = %10096
store i32 0, i32* %7
br label %37477
10222: ; preds = %10096
store i32 1, i32* %7
br label %37477
10223: ; preds = %9967
%10224 = load float*, float** %11
%10225 = getelementptr inbounds float, float* %10224, i64 0
%10226 = load float, float* %10225
%10227 = load float*, float** %8
%10228 = getelementptr inbounds float, float* %10227, i64 0
%10229 = load float, float* %10228
%10230 = fsub float %10226, %10229
%10231 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %10230, float* %10231
%10232 = load float*, float** %11
%10233 = getelementptr inbounds float, float* %10232, i64 1
%10234 = load float, float* %10233
%10235 = load float*, float** %8
%10236 = getelementptr inbounds float, float* %10235, i64 1
%10237 = load float, float* %10236
%10238 = fsub float %10234, %10237
%10239 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %10238, float* %10239
%10240 = load float*, float** %11
%10241 = getelementptr inbounds float, float* %10240, i64 2
%10242 = load float, float* %10241
%10243 = load float*, float** %8
%10244 = getelementptr inbounds float, float* %10243, i64 2
%10245 = load float, float* %10244
%10246 = fsub float %10242, %10245
%10247 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %10246, float* %10247
%10248 = load float*, float** %10
%10249 = getelementptr inbounds float, float* %10248, i64 0
%10250 = load float, float* %10249
%10251 = load float*, float** %8
%10252 = getelementptr inbounds float, float* %10251, i64 0
%10253 = load float, float* %10252
%10254 = fsub float %10250, %10253
%10255 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %10254, float* %10255
%10256 = load float*, float** %10
%10257 = getelementptr inbounds float, float* %10256, i64 1
%10258 = load float, float* %10257
%10259 = load float*, float** %8
%10260 = getelementptr inbounds float, float* %10259, i64 1
%10261 = load float, float* %10260
%10262 = fsub float %10258, %10261
%10263 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %10262, float* %10263
%10264 = load float*, float** %10
%10265 = getelementptr inbounds float, float* %10264, i64 2
%10266 = load float, float* %10265
%10267 = load float*, float** %8
%10268 = getelementptr inbounds float, float* %10267, i64 2
%10269 = load float, float* %10268
%10270 = fsub float %10266, %10269
%10271 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %10270, float* %10271
%10272 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%10273 = load float, float* %10272
%10274 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%10275 = load float, float* %10274
%10276 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%10277 = load float, float* %10276
%10278 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%10279 = load float, float* %10278
%10280 = fmul float %10277, %10279
%10281 = fneg float %10280
%10282 = call float @llvm.fmuladd.f32(float %10273, float %10275, float %10281)
%10283 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %10282, float* %10283
%10284 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%10285 = load float, float* %10284
%10286 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%10287 = load float, float* %10286
%10288 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%10289 = load float, float* %10288
%10290 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%10291 = load float, float* %10290
%10292 = fmul float %10289, %10291
%10293 = fneg float %10292
%10294 = call float @llvm.fmuladd.f32(float %10285, float %10287, float %10293)
%10295 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %10294, float* %10295
%10296 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%10297 = load float, float* %10296
%10298 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%10299 = load float, float* %10298
%10300 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%10301 = load float, float* %10300
%10302 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%10303 = load float, float* %10302
%10304 = fmul float %10301, %10303
%10305 = fneg float %10304
%10306 = call float @llvm.fmuladd.f32(float %10297, float %10299, float %10305)
%10307 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %10306, float* %10307
%10308 = load float*, float** %12
%10309 = getelementptr inbounds float, float* %10308, i64 0
%10310 = load float, float* %10309
%10311 = load float*, float** %8
%10312 = getelementptr inbounds float, float* %10311, i64 0
%10313 = load float, float* %10312
%10314 = fsub float %10310, %10313
%10315 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %10314, float* %10315
%10316 = load float*, float** %12
%10317 = getelementptr inbounds float, float* %10316, i64 1
%10318 = load float, float* %10317
%10319 = load float*, float** %8
%10320 = getelementptr inbounds float, float* %10319, i64 1
%10321 = load float, float* %10320
%10322 = fsub float %10318, %10321
%10323 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %10322, float* %10323
%10324 = load float*, float** %12
%10325 = getelementptr inbounds float, float* %10324, i64 2
%10326 = load float, float* %10325
%10327 = load float*, float** %8
%10328 = getelementptr inbounds float, float* %10327, i64 2
%10329 = load float, float* %10328
%10330 = fsub float %10326, %10329
%10331 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %10330, float* %10331
%10332 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%10333 = load float, float* %10332
%10334 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%10335 = load float, float* %10334
%10336 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%10337 = load float, float* %10336
%10338 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%10339 = load float, float* %10338
%10340 = fmul float %10337, %10339
%10341 = call float @llvm.fmuladd.f32(float %10333, float %10335, float %10340)
%10342 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%10343 = load float, float* %10342
%10344 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%10345 = load float, float* %10344
%10346 = call float @llvm.fmuladd.f32(float %10343, float %10345, float %10341)
%10347 = fcmp ogt float %10346, 0.000000e+00
br i1 %10347, label %10348, label %10349
10348: ; preds = %10223
store i32 0, i32* %7
br label %37477
10349: ; preds = %10223
%10350 = load float*, float** %11
%10351 = getelementptr inbounds float, float* %10350, i64 0
%10352 = load float, float* %10351
%10353 = load float*, float** %10
%10354 = getelementptr inbounds float, float* %10353, i64 0
%10355 = load float, float* %10354
%10356 = fsub float %10352, %10355
%10357 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %10356, float* %10357
%10358 = load float*, float** %11
%10359 = getelementptr inbounds float, float* %10358, i64 1
%10360 = load float, float* %10359
%10361 = load float*, float** %10
%10362 = getelementptr inbounds float, float* %10361, i64 1
%10363 = load float, float* %10362
%10364 = fsub float %10360, %10363
%10365 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %10364, float* %10365
%10366 = load float*, float** %11
%10367 = getelementptr inbounds float, float* %10366, i64 2
%10368 = load float, float* %10367
%10369 = load float*, float** %10
%10370 = getelementptr inbounds float, float* %10369, i64 2
%10371 = load float, float* %10370
%10372 = fsub float %10368, %10371
%10373 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %10372, float* %10373
%10374 = load float*, float** %9
%10375 = getelementptr inbounds float, float* %10374, i64 0
%10376 = load float, float* %10375
%10377 = load float*, float** %10
%10378 = getelementptr inbounds float, float* %10377, i64 0
%10379 = load float, float* %10378
%10380 = fsub float %10376, %10379
%10381 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %10380, float* %10381
%10382 = load float*, float** %9
%10383 = getelementptr inbounds float, float* %10382, i64 1
%10384 = load float, float* %10383
%10385 = load float*, float** %10
%10386 = getelementptr inbounds float, float* %10385, i64 1
%10387 = load float, float* %10386
%10388 = fsub float %10384, %10387
%10389 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %10388, float* %10389
%10390 = load float*, float** %9
%10391 = getelementptr inbounds float, float* %10390, i64 2
%10392 = load float, float* %10391
%10393 = load float*, float** %10
%10394 = getelementptr inbounds float, float* %10393, i64 2
%10395 = load float, float* %10394
%10396 = fsub float %10392, %10395
%10397 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %10396, float* %10397
%10398 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%10399 = load float, float* %10398
%10400 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%10401 = load float, float* %10400
%10402 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%10403 = load float, float* %10402
%10404 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%10405 = load float, float* %10404
%10406 = fmul float %10403, %10405
%10407 = fneg float %10406
%10408 = call float @llvm.fmuladd.f32(float %10399, float %10401, float %10407)
%10409 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %10408, float* %10409
%10410 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%10411 = load float, float* %10410
%10412 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%10413 = load float, float* %10412
%10414 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%10415 = load float, float* %10414
%10416 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%10417 = load float, float* %10416
%10418 = fmul float %10415, %10417
%10419 = fneg float %10418
%10420 = call float @llvm.fmuladd.f32(float %10411, float %10413, float %10419)
%10421 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %10420, float* %10421
%10422 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%10423 = load float, float* %10422
%10424 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%10425 = load float, float* %10424
%10426 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%10427 = load float, float* %10426
%10428 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%10429 = load float, float* %10428
%10430 = fmul float %10427, %10429
%10431 = fneg float %10430
%10432 = call float @llvm.fmuladd.f32(float %10423, float %10425, float %10431)
%10433 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %10432, float* %10433
%10434 = load float*, float** %13
%10435 = getelementptr inbounds float, float* %10434, i64 0
%10436 = load float, float* %10435
%10437 = load float*, float** %10
%10438 = getelementptr inbounds float, float* %10437, i64 0
%10439 = load float, float* %10438
%10440 = fsub float %10436, %10439
%10441 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %10440, float* %10441
%10442 = load float*, float** %13
%10443 = getelementptr inbounds float, float* %10442, i64 1
%10444 = load float, float* %10443
%10445 = load float*, float** %10
%10446 = getelementptr inbounds float, float* %10445, i64 1
%10447 = load float, float* %10446
%10448 = fsub float %10444, %10447
%10449 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %10448, float* %10449
%10450 = load float*, float** %13
%10451 = getelementptr inbounds float, float* %10450, i64 2
%10452 = load float, float* %10451
%10453 = load float*, float** %10
%10454 = getelementptr inbounds float, float* %10453, i64 2
%10455 = load float, float* %10454
%10456 = fsub float %10452, %10455
%10457 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %10456, float* %10457
%10458 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%10459 = load float, float* %10458
%10460 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%10461 = load float, float* %10460
%10462 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%10463 = load float, float* %10462
%10464 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%10465 = load float, float* %10464
%10466 = fmul float %10463, %10465
%10467 = call float @llvm.fmuladd.f32(float %10459, float %10461, float %10466)
%10468 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%10469 = load float, float* %10468
%10470 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%10471 = load float, float* %10470
%10472 = call float @llvm.fmuladd.f32(float %10469, float %10471, float %10467)
%10473 = fcmp ogt float %10472, 0.000000e+00
br i1 %10473, label %10474, label %10475
10474: ; preds = %10349
store i32 0, i32* %7
br label %37477
10475: ; preds = %10349
store i32 1, i32* %7
br label %37477
10476: ; preds = %9708
%10477 = load float, float* %17
%10478 = fcmp olt float %10477, 0.000000e+00
br i1 %10478, label %10479, label %11244
10479: ; preds = %10476
%10480 = load float, float* %18
%10481 = fcmp olt float %10480, 0.000000e+00
br i1 %10481, label %10482, label %10735
10482: ; preds = %10479
%10483 = load float*, float** %13
%10484 = getelementptr inbounds float, float* %10483, i64 0
%10485 = load float, float* %10484
%10486 = load float*, float** %8
%10487 = getelementptr inbounds float, float* %10486, i64 0
%10488 = load float, float* %10487
%10489 = fsub float %10485, %10488
%10490 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %10489, float* %10490
%10491 = load float*, float** %13
%10492 = getelementptr inbounds float, float* %10491, i64 1
%10493 = load float, float* %10492
%10494 = load float*, float** %8
%10495 = getelementptr inbounds float, float* %10494, i64 1
%10496 = load float, float* %10495
%10497 = fsub float %10493, %10496
%10498 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %10497, float* %10498
%10499 = load float*, float** %13
%10500 = getelementptr inbounds float, float* %10499, i64 2
%10501 = load float, float* %10500
%10502 = load float*, float** %8
%10503 = getelementptr inbounds float, float* %10502, i64 2
%10504 = load float, float* %10503
%10505 = fsub float %10501, %10504
%10506 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %10505, float* %10506
%10507 = load float*, float** %10
%10508 = getelementptr inbounds float, float* %10507, i64 0
%10509 = load float, float* %10508
%10510 = load float*, float** %8
%10511 = getelementptr inbounds float, float* %10510, i64 0
%10512 = load float, float* %10511
%10513 = fsub float %10509, %10512
%10514 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %10513, float* %10514
%10515 = load float*, float** %10
%10516 = getelementptr inbounds float, float* %10515, i64 1
%10517 = load float, float* %10516
%10518 = load float*, float** %8
%10519 = getelementptr inbounds float, float* %10518, i64 1
%10520 = load float, float* %10519
%10521 = fsub float %10517, %10520
%10522 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %10521, float* %10522
%10523 = load float*, float** %10
%10524 = getelementptr inbounds float, float* %10523, i64 2
%10525 = load float, float* %10524
%10526 = load float*, float** %8
%10527 = getelementptr inbounds float, float* %10526, i64 2
%10528 = load float, float* %10527
%10529 = fsub float %10525, %10528
%10530 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %10529, float* %10530
%10531 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%10532 = load float, float* %10531
%10533 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%10534 = load float, float* %10533
%10535 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%10536 = load float, float* %10535
%10537 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%10538 = load float, float* %10537
%10539 = fmul float %10536, %10538
%10540 = fneg float %10539
%10541 = call float @llvm.fmuladd.f32(float %10532, float %10534, float %10540)
%10542 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %10541, float* %10542
%10543 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%10544 = load float, float* %10543
%10545 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%10546 = load float, float* %10545
%10547 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%10548 = load float, float* %10547
%10549 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%10550 = load float, float* %10549
%10551 = fmul float %10548, %10550
%10552 = fneg float %10551
%10553 = call float @llvm.fmuladd.f32(float %10544, float %10546, float %10552)
%10554 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %10553, float* %10554
%10555 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%10556 = load float, float* %10555
%10557 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%10558 = load float, float* %10557
%10559 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%10560 = load float, float* %10559
%10561 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%10562 = load float, float* %10561
%10563 = fmul float %10560, %10562
%10564 = fneg float %10563
%10565 = call float @llvm.fmuladd.f32(float %10556, float %10558, float %10564)
%10566 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %10565, float* %10566
%10567 = load float*, float** %11
%10568 = getelementptr inbounds float, float* %10567, i64 0
%10569 = load float, float* %10568
%10570 = load float*, float** %8
%10571 = getelementptr inbounds float, float* %10570, i64 0
%10572 = load float, float* %10571
%10573 = fsub float %10569, %10572
%10574 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %10573, float* %10574
%10575 = load float*, float** %11
%10576 = getelementptr inbounds float, float* %10575, i64 1
%10577 = load float, float* %10576
%10578 = load float*, float** %8
%10579 = getelementptr inbounds float, float* %10578, i64 1
%10580 = load float, float* %10579
%10581 = fsub float %10577, %10580
%10582 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %10581, float* %10582
%10583 = load float*, float** %11
%10584 = getelementptr inbounds float, float* %10583, i64 2
%10585 = load float, float* %10584
%10586 = load float*, float** %8
%10587 = getelementptr inbounds float, float* %10586, i64 2
%10588 = load float, float* %10587
%10589 = fsub float %10585, %10588
%10590 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %10589, float* %10590
%10591 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%10592 = load float, float* %10591
%10593 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%10594 = load float, float* %10593
%10595 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%10596 = load float, float* %10595
%10597 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%10598 = load float, float* %10597
%10599 = fmul float %10596, %10598
%10600 = call float @llvm.fmuladd.f32(float %10592, float %10594, float %10599)
%10601 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%10602 = load float, float* %10601
%10603 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%10604 = load float, float* %10603
%10605 = call float @llvm.fmuladd.f32(float %10602, float %10604, float %10600)
%10606 = fcmp ogt float %10605, 0.000000e+00
br i1 %10606, label %10607, label %10608
10607: ; preds = %10482
store i32 0, i32* %7
br label %37477
10608: ; preds = %10482
%10609 = load float*, float** %13
%10610 = getelementptr inbounds float, float* %10609, i64 0
%10611 = load float, float* %10610
%10612 = load float*, float** %10
%10613 = getelementptr inbounds float, float* %10612, i64 0
%10614 = load float, float* %10613
%10615 = fsub float %10611, %10614
%10616 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %10615, float* %10616
%10617 = load float*, float** %13
%10618 = getelementptr inbounds float, float* %10617, i64 1
%10619 = load float, float* %10618
%10620 = load float*, float** %10
%10621 = getelementptr inbounds float, float* %10620, i64 1
%10622 = load float, float* %10621
%10623 = fsub float %10619, %10622
%10624 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %10623, float* %10624
%10625 = load float*, float** %13
%10626 = getelementptr inbounds float, float* %10625, i64 2
%10627 = load float, float* %10626
%10628 = load float*, float** %10
%10629 = getelementptr inbounds float, float* %10628, i64 2
%10630 = load float, float* %10629
%10631 = fsub float %10627, %10630
%10632 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %10631, float* %10632
%10633 = load float*, float** %9
%10634 = getelementptr inbounds float, float* %10633, i64 0
%10635 = load float, float* %10634
%10636 = load float*, float** %10
%10637 = getelementptr inbounds float, float* %10636, i64 0
%10638 = load float, float* %10637
%10639 = fsub float %10635, %10638
%10640 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %10639, float* %10640
%10641 = load float*, float** %9
%10642 = getelementptr inbounds float, float* %10641, i64 1
%10643 = load float, float* %10642
%10644 = load float*, float** %10
%10645 = getelementptr inbounds float, float* %10644, i64 1
%10646 = load float, float* %10645
%10647 = fsub float %10643, %10646
%10648 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %10647, float* %10648
%10649 = load float*, float** %9
%10650 = getelementptr inbounds float, float* %10649, i64 2
%10651 = load float, float* %10650
%10652 = load float*, float** %10
%10653 = getelementptr inbounds float, float* %10652, i64 2
%10654 = load float, float* %10653
%10655 = fsub float %10651, %10654
%10656 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %10655, float* %10656
%10657 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%10658 = load float, float* %10657
%10659 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%10660 = load float, float* %10659
%10661 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%10662 = load float, float* %10661
%10663 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%10664 = load float, float* %10663
%10665 = fmul float %10662, %10664
%10666 = fneg float %10665
%10667 = call float @llvm.fmuladd.f32(float %10658, float %10660, float %10666)
%10668 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %10667, float* %10668
%10669 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%10670 = load float, float* %10669
%10671 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%10672 = load float, float* %10671
%10673 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%10674 = load float, float* %10673
%10675 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%10676 = load float, float* %10675
%10677 = fmul float %10674, %10676
%10678 = fneg float %10677
%10679 = call float @llvm.fmuladd.f32(float %10670, float %10672, float %10678)
%10680 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %10679, float* %10680
%10681 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%10682 = load float, float* %10681
%10683 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%10684 = load float, float* %10683
%10685 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%10686 = load float, float* %10685
%10687 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%10688 = load float, float* %10687
%10689 = fmul float %10686, %10688
%10690 = fneg float %10689
%10691 = call float @llvm.fmuladd.f32(float %10682, float %10684, float %10690)
%10692 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %10691, float* %10692
%10693 = load float*, float** %12
%10694 = getelementptr inbounds float, float* %10693, i64 0
%10695 = load float, float* %10694
%10696 = load float*, float** %10
%10697 = getelementptr inbounds float, float* %10696, i64 0
%10698 = load float, float* %10697
%10699 = fsub float %10695, %10698
%10700 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %10699, float* %10700
%10701 = load float*, float** %12
%10702 = getelementptr inbounds float, float* %10701, i64 1
%10703 = load float, float* %10702
%10704 = load float*, float** %10
%10705 = getelementptr inbounds float, float* %10704, i64 1
%10706 = load float, float* %10705
%10707 = fsub float %10703, %10706
%10708 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %10707, float* %10708
%10709 = load float*, float** %12
%10710 = getelementptr inbounds float, float* %10709, i64 2
%10711 = load float, float* %10710
%10712 = load float*, float** %10
%10713 = getelementptr inbounds float, float* %10712, i64 2
%10714 = load float, float* %10713
%10715 = fsub float %10711, %10714
%10716 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %10715, float* %10716
%10717 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%10718 = load float, float* %10717
%10719 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%10720 = load float, float* %10719
%10721 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%10722 = load float, float* %10721
%10723 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%10724 = load float, float* %10723
%10725 = fmul float %10722, %10724
%10726 = call float @llvm.fmuladd.f32(float %10718, float %10720, float %10725)
%10727 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%10728 = load float, float* %10727
%10729 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%10730 = load float, float* %10729
%10731 = call float @llvm.fmuladd.f32(float %10728, float %10730, float %10726)
%10732 = fcmp ogt float %10731, 0.000000e+00
br i1 %10732, label %10733, label %10734
10733: ; preds = %10608
store i32 0, i32* %7
br label %37477
10734: ; preds = %10608
store i32 1, i32* %7
br label %37477
10735: ; preds = %10479
%10736 = load float, float* %19
%10737 = fcmp olt float %10736, 0.000000e+00
br i1 %10737, label %10738, label %10991
10738: ; preds = %10735
%10739 = load float*, float** %12
%10740 = getelementptr inbounds float, float* %10739, i64 0
%10741 = load float, float* %10740
%10742 = load float*, float** %8
%10743 = getelementptr inbounds float, float* %10742, i64 0
%10744 = load float, float* %10743
%10745 = fsub float %10741, %10744
%10746 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %10745, float* %10746
%10747 = load float*, float** %12
%10748 = getelementptr inbounds float, float* %10747, i64 1
%10749 = load float, float* %10748
%10750 = load float*, float** %8
%10751 = getelementptr inbounds float, float* %10750, i64 1
%10752 = load float, float* %10751
%10753 = fsub float %10749, %10752
%10754 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %10753, float* %10754
%10755 = load float*, float** %12
%10756 = getelementptr inbounds float, float* %10755, i64 2
%10757 = load float, float* %10756
%10758 = load float*, float** %8
%10759 = getelementptr inbounds float, float* %10758, i64 2
%10760 = load float, float* %10759
%10761 = fsub float %10757, %10760
%10762 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %10761, float* %10762
%10763 = load float*, float** %10
%10764 = getelementptr inbounds float, float* %10763, i64 0
%10765 = load float, float* %10764
%10766 = load float*, float** %8
%10767 = getelementptr inbounds float, float* %10766, i64 0
%10768 = load float, float* %10767
%10769 = fsub float %10765, %10768
%10770 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %10769, float* %10770
%10771 = load float*, float** %10
%10772 = getelementptr inbounds float, float* %10771, i64 1
%10773 = load float, float* %10772
%10774 = load float*, float** %8
%10775 = getelementptr inbounds float, float* %10774, i64 1
%10776 = load float, float* %10775
%10777 = fsub float %10773, %10776
%10778 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %10777, float* %10778
%10779 = load float*, float** %10
%10780 = getelementptr inbounds float, float* %10779, i64 2
%10781 = load float, float* %10780
%10782 = load float*, float** %8
%10783 = getelementptr inbounds float, float* %10782, i64 2
%10784 = load float, float* %10783
%10785 = fsub float %10781, %10784
%10786 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %10785, float* %10786
%10787 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%10788 = load float, float* %10787
%10789 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%10790 = load float, float* %10789
%10791 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%10792 = load float, float* %10791
%10793 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%10794 = load float, float* %10793
%10795 = fmul float %10792, %10794
%10796 = fneg float %10795
%10797 = call float @llvm.fmuladd.f32(float %10788, float %10790, float %10796)
%10798 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %10797, float* %10798
%10799 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%10800 = load float, float* %10799
%10801 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%10802 = load float, float* %10801
%10803 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%10804 = load float, float* %10803
%10805 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%10806 = load float, float* %10805
%10807 = fmul float %10804, %10806
%10808 = fneg float %10807
%10809 = call float @llvm.fmuladd.f32(float %10800, float %10802, float %10808)
%10810 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %10809, float* %10810
%10811 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%10812 = load float, float* %10811
%10813 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%10814 = load float, float* %10813
%10815 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%10816 = load float, float* %10815
%10817 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%10818 = load float, float* %10817
%10819 = fmul float %10816, %10818
%10820 = fneg float %10819
%10821 = call float @llvm.fmuladd.f32(float %10812, float %10814, float %10820)
%10822 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %10821, float* %10822
%10823 = load float*, float** %13
%10824 = getelementptr inbounds float, float* %10823, i64 0
%10825 = load float, float* %10824
%10826 = load float*, float** %8
%10827 = getelementptr inbounds float, float* %10826, i64 0
%10828 = load float, float* %10827
%10829 = fsub float %10825, %10828
%10830 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %10829, float* %10830
%10831 = load float*, float** %13
%10832 = getelementptr inbounds float, float* %10831, i64 1
%10833 = load float, float* %10832
%10834 = load float*, float** %8
%10835 = getelementptr inbounds float, float* %10834, i64 1
%10836 = load float, float* %10835
%10837 = fsub float %10833, %10836
%10838 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %10837, float* %10838
%10839 = load float*, float** %13
%10840 = getelementptr inbounds float, float* %10839, i64 2
%10841 = load float, float* %10840
%10842 = load float*, float** %8
%10843 = getelementptr inbounds float, float* %10842, i64 2
%10844 = load float, float* %10843
%10845 = fsub float %10841, %10844
%10846 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %10845, float* %10846
%10847 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%10848 = load float, float* %10847
%10849 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%10850 = load float, float* %10849
%10851 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%10852 = load float, float* %10851
%10853 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%10854 = load float, float* %10853
%10855 = fmul float %10852, %10854
%10856 = call float @llvm.fmuladd.f32(float %10848, float %10850, float %10855)
%10857 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%10858 = load float, float* %10857
%10859 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%10860 = load float, float* %10859
%10861 = call float @llvm.fmuladd.f32(float %10858, float %10860, float %10856)
%10862 = fcmp ogt float %10861, 0.000000e+00
br i1 %10862, label %10863, label %10864
10863: ; preds = %10738
store i32 0, i32* %7
br label %37477
10864: ; preds = %10738
%10865 = load float*, float** %12
%10866 = getelementptr inbounds float, float* %10865, i64 0
%10867 = load float, float* %10866
%10868 = load float*, float** %10
%10869 = getelementptr inbounds float, float* %10868, i64 0
%10870 = load float, float* %10869
%10871 = fsub float %10867, %10870
%10872 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %10871, float* %10872
%10873 = load float*, float** %12
%10874 = getelementptr inbounds float, float* %10873, i64 1
%10875 = load float, float* %10874
%10876 = load float*, float** %10
%10877 = getelementptr inbounds float, float* %10876, i64 1
%10878 = load float, float* %10877
%10879 = fsub float %10875, %10878
%10880 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %10879, float* %10880
%10881 = load float*, float** %12
%10882 = getelementptr inbounds float, float* %10881, i64 2
%10883 = load float, float* %10882
%10884 = load float*, float** %10
%10885 = getelementptr inbounds float, float* %10884, i64 2
%10886 = load float, float* %10885
%10887 = fsub float %10883, %10886
%10888 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %10887, float* %10888
%10889 = load float*, float** %9
%10890 = getelementptr inbounds float, float* %10889, i64 0
%10891 = load float, float* %10890
%10892 = load float*, float** %10
%10893 = getelementptr inbounds float, float* %10892, i64 0
%10894 = load float, float* %10893
%10895 = fsub float %10891, %10894
%10896 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %10895, float* %10896
%10897 = load float*, float** %9
%10898 = getelementptr inbounds float, float* %10897, i64 1
%10899 = load float, float* %10898
%10900 = load float*, float** %10
%10901 = getelementptr inbounds float, float* %10900, i64 1
%10902 = load float, float* %10901
%10903 = fsub float %10899, %10902
%10904 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %10903, float* %10904
%10905 = load float*, float** %9
%10906 = getelementptr inbounds float, float* %10905, i64 2
%10907 = load float, float* %10906
%10908 = load float*, float** %10
%10909 = getelementptr inbounds float, float* %10908, i64 2
%10910 = load float, float* %10909
%10911 = fsub float %10907, %10910
%10912 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %10911, float* %10912
%10913 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%10914 = load float, float* %10913
%10915 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%10916 = load float, float* %10915
%10917 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%10918 = load float, float* %10917
%10919 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%10920 = load float, float* %10919
%10921 = fmul float %10918, %10920
%10922 = fneg float %10921
%10923 = call float @llvm.fmuladd.f32(float %10914, float %10916, float %10922)
%10924 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %10923, float* %10924
%10925 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%10926 = load float, float* %10925
%10927 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%10928 = load float, float* %10927
%10929 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%10930 = load float, float* %10929
%10931 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%10932 = load float, float* %10931
%10933 = fmul float %10930, %10932
%10934 = fneg float %10933
%10935 = call float @llvm.fmuladd.f32(float %10926, float %10928, float %10934)
%10936 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %10935, float* %10936
%10937 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%10938 = load float, float* %10937
%10939 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%10940 = load float, float* %10939
%10941 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%10942 = load float, float* %10941
%10943 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%10944 = load float, float* %10943
%10945 = fmul float %10942, %10944
%10946 = fneg float %10945
%10947 = call float @llvm.fmuladd.f32(float %10938, float %10940, float %10946)
%10948 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %10947, float* %10948
%10949 = load float*, float** %11
%10950 = getelementptr inbounds float, float* %10949, i64 0
%10951 = load float, float* %10950
%10952 = load float*, float** %10
%10953 = getelementptr inbounds float, float* %10952, i64 0
%10954 = load float, float* %10953
%10955 = fsub float %10951, %10954
%10956 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %10955, float* %10956
%10957 = load float*, float** %11
%10958 = getelementptr inbounds float, float* %10957, i64 1
%10959 = load float, float* %10958
%10960 = load float*, float** %10
%10961 = getelementptr inbounds float, float* %10960, i64 1
%10962 = load float, float* %10961
%10963 = fsub float %10959, %10962
%10964 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %10963, float* %10964
%10965 = load float*, float** %11
%10966 = getelementptr inbounds float, float* %10965, i64 2
%10967 = load float, float* %10966
%10968 = load float*, float** %10
%10969 = getelementptr inbounds float, float* %10968, i64 2
%10970 = load float, float* %10969
%10971 = fsub float %10967, %10970
%10972 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %10971, float* %10972
%10973 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%10974 = load float, float* %10973
%10975 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%10976 = load float, float* %10975
%10977 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%10978 = load float, float* %10977
%10979 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%10980 = load float, float* %10979
%10981 = fmul float %10978, %10980
%10982 = call float @llvm.fmuladd.f32(float %10974, float %10976, float %10981)
%10983 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%10984 = load float, float* %10983
%10985 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%10986 = load float, float* %10985
%10987 = call float @llvm.fmuladd.f32(float %10984, float %10986, float %10982)
%10988 = fcmp ogt float %10987, 0.000000e+00
br i1 %10988, label %10989, label %10990
10989: ; preds = %10864
store i32 0, i32* %7
br label %37477
10990: ; preds = %10864
store i32 1, i32* %7
br label %37477
10991: ; preds = %10735
%10992 = load float*, float** %11
%10993 = getelementptr inbounds float, float* %10992, i64 0
%10994 = load float, float* %10993
%10995 = load float*, float** %9
%10996 = getelementptr inbounds float, float* %10995, i64 0
%10997 = load float, float* %10996
%10998 = fsub float %10994, %10997
%10999 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %10998, float* %10999
%11000 = load float*, float** %11
%11001 = getelementptr inbounds float, float* %11000, i64 1
%11002 = load float, float* %11001
%11003 = load float*, float** %9
%11004 = getelementptr inbounds float, float* %11003, i64 1
%11005 = load float, float* %11004
%11006 = fsub float %11002, %11005
%11007 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %11006, float* %11007
%11008 = load float*, float** %11
%11009 = getelementptr inbounds float, float* %11008, i64 2
%11010 = load float, float* %11009
%11011 = load float*, float** %9
%11012 = getelementptr inbounds float, float* %11011, i64 2
%11013 = load float, float* %11012
%11014 = fsub float %11010, %11013
%11015 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %11014, float* %11015
%11016 = load float*, float** %10
%11017 = getelementptr inbounds float, float* %11016, i64 0
%11018 = load float, float* %11017
%11019 = load float*, float** %9
%11020 = getelementptr inbounds float, float* %11019, i64 0
%11021 = load float, float* %11020
%11022 = fsub float %11018, %11021
%11023 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %11022, float* %11023
%11024 = load float*, float** %10
%11025 = getelementptr inbounds float, float* %11024, i64 1
%11026 = load float, float* %11025
%11027 = load float*, float** %9
%11028 = getelementptr inbounds float, float* %11027, i64 1
%11029 = load float, float* %11028
%11030 = fsub float %11026, %11029
%11031 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %11030, float* %11031
%11032 = load float*, float** %10
%11033 = getelementptr inbounds float, float* %11032, i64 2
%11034 = load float, float* %11033
%11035 = load float*, float** %9
%11036 = getelementptr inbounds float, float* %11035, i64 2
%11037 = load float, float* %11036
%11038 = fsub float %11034, %11037
%11039 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %11038, float* %11039
%11040 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%11041 = load float, float* %11040
%11042 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%11043 = load float, float* %11042
%11044 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%11045 = load float, float* %11044
%11046 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%11047 = load float, float* %11046
%11048 = fmul float %11045, %11047
%11049 = fneg float %11048
%11050 = call float @llvm.fmuladd.f32(float %11041, float %11043, float %11049)
%11051 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %11050, float* %11051
%11052 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%11053 = load float, float* %11052
%11054 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%11055 = load float, float* %11054
%11056 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%11057 = load float, float* %11056
%11058 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%11059 = load float, float* %11058
%11060 = fmul float %11057, %11059
%11061 = fneg float %11060
%11062 = call float @llvm.fmuladd.f32(float %11053, float %11055, float %11061)
%11063 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %11062, float* %11063
%11064 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%11065 = load float, float* %11064
%11066 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%11067 = load float, float* %11066
%11068 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%11069 = load float, float* %11068
%11070 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%11071 = load float, float* %11070
%11072 = fmul float %11069, %11071
%11073 = fneg float %11072
%11074 = call float @llvm.fmuladd.f32(float %11065, float %11067, float %11073)
%11075 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %11074, float* %11075
%11076 = load float*, float** %12
%11077 = getelementptr inbounds float, float* %11076, i64 0
%11078 = load float, float* %11077
%11079 = load float*, float** %9
%11080 = getelementptr inbounds float, float* %11079, i64 0
%11081 = load float, float* %11080
%11082 = fsub float %11078, %11081
%11083 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %11082, float* %11083
%11084 = load float*, float** %12
%11085 = getelementptr inbounds float, float* %11084, i64 1
%11086 = load float, float* %11085
%11087 = load float*, float** %9
%11088 = getelementptr inbounds float, float* %11087, i64 1
%11089 = load float, float* %11088
%11090 = fsub float %11086, %11089
%11091 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %11090, float* %11091
%11092 = load float*, float** %12
%11093 = getelementptr inbounds float, float* %11092, i64 2
%11094 = load float, float* %11093
%11095 = load float*, float** %9
%11096 = getelementptr inbounds float, float* %11095, i64 2
%11097 = load float, float* %11096
%11098 = fsub float %11094, %11097
%11099 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %11098, float* %11099
%11100 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%11101 = load float, float* %11100
%11102 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%11103 = load float, float* %11102
%11104 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%11105 = load float, float* %11104
%11106 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%11107 = load float, float* %11106
%11108 = fmul float %11105, %11107
%11109 = call float @llvm.fmuladd.f32(float %11101, float %11103, float %11108)
%11110 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%11111 = load float, float* %11110
%11112 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%11113 = load float, float* %11112
%11114 = call float @llvm.fmuladd.f32(float %11111, float %11113, float %11109)
%11115 = fcmp ogt float %11114, 0.000000e+00
br i1 %11115, label %11116, label %11117
11116: ; preds = %10991
store i32 0, i32* %7
br label %37477
11117: ; preds = %10991
%11118 = load float*, float** %11
%11119 = getelementptr inbounds float, float* %11118, i64 0
%11120 = load float, float* %11119
%11121 = load float*, float** %10
%11122 = getelementptr inbounds float, float* %11121, i64 0
%11123 = load float, float* %11122
%11124 = fsub float %11120, %11123
%11125 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %11124, float* %11125
%11126 = load float*, float** %11
%11127 = getelementptr inbounds float, float* %11126, i64 1
%11128 = load float, float* %11127
%11129 = load float*, float** %10
%11130 = getelementptr inbounds float, float* %11129, i64 1
%11131 = load float, float* %11130
%11132 = fsub float %11128, %11131
%11133 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %11132, float* %11133
%11134 = load float*, float** %11
%11135 = getelementptr inbounds float, float* %11134, i64 2
%11136 = load float, float* %11135
%11137 = load float*, float** %10
%11138 = getelementptr inbounds float, float* %11137, i64 2
%11139 = load float, float* %11138
%11140 = fsub float %11136, %11139
%11141 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %11140, float* %11141
%11142 = load float*, float** %8
%11143 = getelementptr inbounds float, float* %11142, i64 0
%11144 = load float, float* %11143
%11145 = load float*, float** %10
%11146 = getelementptr inbounds float, float* %11145, i64 0
%11147 = load float, float* %11146
%11148 = fsub float %11144, %11147
%11149 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %11148, float* %11149
%11150 = load float*, float** %8
%11151 = getelementptr inbounds float, float* %11150, i64 1
%11152 = load float, float* %11151
%11153 = load float*, float** %10
%11154 = getelementptr inbounds float, float* %11153, i64 1
%11155 = load float, float* %11154
%11156 = fsub float %11152, %11155
%11157 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %11156, float* %11157
%11158 = load float*, float** %8
%11159 = getelementptr inbounds float, float* %11158, i64 2
%11160 = load float, float* %11159
%11161 = load float*, float** %10
%11162 = getelementptr inbounds float, float* %11161, i64 2
%11163 = load float, float* %11162
%11164 = fsub float %11160, %11163
%11165 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %11164, float* %11165
%11166 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%11167 = load float, float* %11166
%11168 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%11169 = load float, float* %11168
%11170 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%11171 = load float, float* %11170
%11172 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%11173 = load float, float* %11172
%11174 = fmul float %11171, %11173
%11175 = fneg float %11174
%11176 = call float @llvm.fmuladd.f32(float %11167, float %11169, float %11175)
%11177 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %11176, float* %11177
%11178 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%11179 = load float, float* %11178
%11180 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%11181 = load float, float* %11180
%11182 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%11183 = load float, float* %11182
%11184 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%11185 = load float, float* %11184
%11186 = fmul float %11183, %11185
%11187 = fneg float %11186
%11188 = call float @llvm.fmuladd.f32(float %11179, float %11181, float %11187)
%11189 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %11188, float* %11189
%11190 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%11191 = load float, float* %11190
%11192 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%11193 = load float, float* %11192
%11194 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%11195 = load float, float* %11194
%11196 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%11197 = load float, float* %11196
%11198 = fmul float %11195, %11197
%11199 = fneg float %11198
%11200 = call float @llvm.fmuladd.f32(float %11191, float %11193, float %11199)
%11201 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %11200, float* %11201
%11202 = load float*, float** %13
%11203 = getelementptr inbounds float, float* %11202, i64 0
%11204 = load float, float* %11203
%11205 = load float*, float** %10
%11206 = getelementptr inbounds float, float* %11205, i64 0
%11207 = load float, float* %11206
%11208 = fsub float %11204, %11207
%11209 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %11208, float* %11209
%11210 = load float*, float** %13
%11211 = getelementptr inbounds float, float* %11210, i64 1
%11212 = load float, float* %11211
%11213 = load float*, float** %10
%11214 = getelementptr inbounds float, float* %11213, i64 1
%11215 = load float, float* %11214
%11216 = fsub float %11212, %11215
%11217 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %11216, float* %11217
%11218 = load float*, float** %13
%11219 = getelementptr inbounds float, float* %11218, i64 2
%11220 = load float, float* %11219
%11221 = load float*, float** %10
%11222 = getelementptr inbounds float, float* %11221, i64 2
%11223 = load float, float* %11222
%11224 = fsub float %11220, %11223
%11225 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %11224, float* %11225
%11226 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%11227 = load float, float* %11226
%11228 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%11229 = load float, float* %11228
%11230 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%11231 = load float, float* %11230
%11232 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%11233 = load float, float* %11232
%11234 = fmul float %11231, %11233
%11235 = call float @llvm.fmuladd.f32(float %11227, float %11229, float %11234)
%11236 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%11237 = load float, float* %11236
%11238 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%11239 = load float, float* %11238
%11240 = call float @llvm.fmuladd.f32(float %11237, float %11239, float %11235)
%11241 = fcmp ogt float %11240, 0.000000e+00
br i1 %11241, label %11242, label %11243
11242: ; preds = %11117
store i32 0, i32* %7
br label %37477
11243: ; preds = %11117
store i32 1, i32* %7
br label %37477
11244: ; preds = %10476
%11245 = load float, float* %18
%11246 = fcmp olt float %11245, 0.000000e+00
br i1 %11246, label %11247, label %11756
11247: ; preds = %11244
%11248 = load float, float* %19
%11249 = fcmp oge float %11248, 0.000000e+00
br i1 %11249, label %11250, label %11503
11250: ; preds = %11247
%11251 = load float*, float** %12
%11252 = getelementptr inbounds float, float* %11251, i64 0
%11253 = load float, float* %11252
%11254 = load float*, float** %9
%11255 = getelementptr inbounds float, float* %11254, i64 0
%11256 = load float, float* %11255
%11257 = fsub float %11253, %11256
%11258 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %11257, float* %11258
%11259 = load float*, float** %12
%11260 = getelementptr inbounds float, float* %11259, i64 1
%11261 = load float, float* %11260
%11262 = load float*, float** %9
%11263 = getelementptr inbounds float, float* %11262, i64 1
%11264 = load float, float* %11263
%11265 = fsub float %11261, %11264
%11266 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %11265, float* %11266
%11267 = load float*, float** %12
%11268 = getelementptr inbounds float, float* %11267, i64 2
%11269 = load float, float* %11268
%11270 = load float*, float** %9
%11271 = getelementptr inbounds float, float* %11270, i64 2
%11272 = load float, float* %11271
%11273 = fsub float %11269, %11272
%11274 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %11273, float* %11274
%11275 = load float*, float** %10
%11276 = getelementptr inbounds float, float* %11275, i64 0
%11277 = load float, float* %11276
%11278 = load float*, float** %9
%11279 = getelementptr inbounds float, float* %11278, i64 0
%11280 = load float, float* %11279
%11281 = fsub float %11277, %11280
%11282 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %11281, float* %11282
%11283 = load float*, float** %10
%11284 = getelementptr inbounds float, float* %11283, i64 1
%11285 = load float, float* %11284
%11286 = load float*, float** %9
%11287 = getelementptr inbounds float, float* %11286, i64 1
%11288 = load float, float* %11287
%11289 = fsub float %11285, %11288
%11290 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %11289, float* %11290
%11291 = load float*, float** %10
%11292 = getelementptr inbounds float, float* %11291, i64 2
%11293 = load float, float* %11292
%11294 = load float*, float** %9
%11295 = getelementptr inbounds float, float* %11294, i64 2
%11296 = load float, float* %11295
%11297 = fsub float %11293, %11296
%11298 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %11297, float* %11298
%11299 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%11300 = load float, float* %11299
%11301 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%11302 = load float, float* %11301
%11303 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%11304 = load float, float* %11303
%11305 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%11306 = load float, float* %11305
%11307 = fmul float %11304, %11306
%11308 = fneg float %11307
%11309 = call float @llvm.fmuladd.f32(float %11300, float %11302, float %11308)
%11310 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %11309, float* %11310
%11311 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%11312 = load float, float* %11311
%11313 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%11314 = load float, float* %11313
%11315 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%11316 = load float, float* %11315
%11317 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%11318 = load float, float* %11317
%11319 = fmul float %11316, %11318
%11320 = fneg float %11319
%11321 = call float @llvm.fmuladd.f32(float %11312, float %11314, float %11320)
%11322 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %11321, float* %11322
%11323 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%11324 = load float, float* %11323
%11325 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%11326 = load float, float* %11325
%11327 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%11328 = load float, float* %11327
%11329 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%11330 = load float, float* %11329
%11331 = fmul float %11328, %11330
%11332 = fneg float %11331
%11333 = call float @llvm.fmuladd.f32(float %11324, float %11326, float %11332)
%11334 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %11333, float* %11334
%11335 = load float*, float** %13
%11336 = getelementptr inbounds float, float* %11335, i64 0
%11337 = load float, float* %11336
%11338 = load float*, float** %9
%11339 = getelementptr inbounds float, float* %11338, i64 0
%11340 = load float, float* %11339
%11341 = fsub float %11337, %11340
%11342 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %11341, float* %11342
%11343 = load float*, float** %13
%11344 = getelementptr inbounds float, float* %11343, i64 1
%11345 = load float, float* %11344
%11346 = load float*, float** %9
%11347 = getelementptr inbounds float, float* %11346, i64 1
%11348 = load float, float* %11347
%11349 = fsub float %11345, %11348
%11350 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %11349, float* %11350
%11351 = load float*, float** %13
%11352 = getelementptr inbounds float, float* %11351, i64 2
%11353 = load float, float* %11352
%11354 = load float*, float** %9
%11355 = getelementptr inbounds float, float* %11354, i64 2
%11356 = load float, float* %11355
%11357 = fsub float %11353, %11356
%11358 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %11357, float* %11358
%11359 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%11360 = load float, float* %11359
%11361 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%11362 = load float, float* %11361
%11363 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%11364 = load float, float* %11363
%11365 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%11366 = load float, float* %11365
%11367 = fmul float %11364, %11366
%11368 = call float @llvm.fmuladd.f32(float %11360, float %11362, float %11367)
%11369 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%11370 = load float, float* %11369
%11371 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%11372 = load float, float* %11371
%11373 = call float @llvm.fmuladd.f32(float %11370, float %11372, float %11368)
%11374 = fcmp ogt float %11373, 0.000000e+00
br i1 %11374, label %11375, label %11376
11375: ; preds = %11250
store i32 0, i32* %7
br label %37477
11376: ; preds = %11250
%11377 = load float*, float** %12
%11378 = getelementptr inbounds float, float* %11377, i64 0
%11379 = load float, float* %11378
%11380 = load float*, float** %10
%11381 = getelementptr inbounds float, float* %11380, i64 0
%11382 = load float, float* %11381
%11383 = fsub float %11379, %11382
%11384 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %11383, float* %11384
%11385 = load float*, float** %12
%11386 = getelementptr inbounds float, float* %11385, i64 1
%11387 = load float, float* %11386
%11388 = load float*, float** %10
%11389 = getelementptr inbounds float, float* %11388, i64 1
%11390 = load float, float* %11389
%11391 = fsub float %11387, %11390
%11392 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %11391, float* %11392
%11393 = load float*, float** %12
%11394 = getelementptr inbounds float, float* %11393, i64 2
%11395 = load float, float* %11394
%11396 = load float*, float** %10
%11397 = getelementptr inbounds float, float* %11396, i64 2
%11398 = load float, float* %11397
%11399 = fsub float %11395, %11398
%11400 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %11399, float* %11400
%11401 = load float*, float** %8
%11402 = getelementptr inbounds float, float* %11401, i64 0
%11403 = load float, float* %11402
%11404 = load float*, float** %10
%11405 = getelementptr inbounds float, float* %11404, i64 0
%11406 = load float, float* %11405
%11407 = fsub float %11403, %11406
%11408 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %11407, float* %11408
%11409 = load float*, float** %8
%11410 = getelementptr inbounds float, float* %11409, i64 1
%11411 = load float, float* %11410
%11412 = load float*, float** %10
%11413 = getelementptr inbounds float, float* %11412, i64 1
%11414 = load float, float* %11413
%11415 = fsub float %11411, %11414
%11416 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %11415, float* %11416
%11417 = load float*, float** %8
%11418 = getelementptr inbounds float, float* %11417, i64 2
%11419 = load float, float* %11418
%11420 = load float*, float** %10
%11421 = getelementptr inbounds float, float* %11420, i64 2
%11422 = load float, float* %11421
%11423 = fsub float %11419, %11422
%11424 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %11423, float* %11424
%11425 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%11426 = load float, float* %11425
%11427 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%11428 = load float, float* %11427
%11429 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%11430 = load float, float* %11429
%11431 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%11432 = load float, float* %11431
%11433 = fmul float %11430, %11432
%11434 = fneg float %11433
%11435 = call float @llvm.fmuladd.f32(float %11426, float %11428, float %11434)
%11436 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %11435, float* %11436
%11437 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%11438 = load float, float* %11437
%11439 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%11440 = load float, float* %11439
%11441 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%11442 = load float, float* %11441
%11443 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%11444 = load float, float* %11443
%11445 = fmul float %11442, %11444
%11446 = fneg float %11445
%11447 = call float @llvm.fmuladd.f32(float %11438, float %11440, float %11446)
%11448 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %11447, float* %11448
%11449 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%11450 = load float, float* %11449
%11451 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%11452 = load float, float* %11451
%11453 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%11454 = load float, float* %11453
%11455 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%11456 = load float, float* %11455
%11457 = fmul float %11454, %11456
%11458 = fneg float %11457
%11459 = call float @llvm.fmuladd.f32(float %11450, float %11452, float %11458)
%11460 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %11459, float* %11460
%11461 = load float*, float** %11
%11462 = getelementptr inbounds float, float* %11461, i64 0
%11463 = load float, float* %11462
%11464 = load float*, float** %10
%11465 = getelementptr inbounds float, float* %11464, i64 0
%11466 = load float, float* %11465
%11467 = fsub float %11463, %11466
%11468 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %11467, float* %11468
%11469 = load float*, float** %11
%11470 = getelementptr inbounds float, float* %11469, i64 1
%11471 = load float, float* %11470
%11472 = load float*, float** %10
%11473 = getelementptr inbounds float, float* %11472, i64 1
%11474 = load float, float* %11473
%11475 = fsub float %11471, %11474
%11476 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %11475, float* %11476
%11477 = load float*, float** %11
%11478 = getelementptr inbounds float, float* %11477, i64 2
%11479 = load float, float* %11478
%11480 = load float*, float** %10
%11481 = getelementptr inbounds float, float* %11480, i64 2
%11482 = load float, float* %11481
%11483 = fsub float %11479, %11482
%11484 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %11483, float* %11484
%11485 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%11486 = load float, float* %11485
%11487 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%11488 = load float, float* %11487
%11489 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%11490 = load float, float* %11489
%11491 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%11492 = load float, float* %11491
%11493 = fmul float %11490, %11492
%11494 = call float @llvm.fmuladd.f32(float %11486, float %11488, float %11493)
%11495 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%11496 = load float, float* %11495
%11497 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%11498 = load float, float* %11497
%11499 = call float @llvm.fmuladd.f32(float %11496, float %11498, float %11494)
%11500 = fcmp ogt float %11499, 0.000000e+00
br i1 %11500, label %11501, label %11502
11501: ; preds = %11376
store i32 0, i32* %7
br label %37477
11502: ; preds = %11376
store i32 1, i32* %7
br label %37477
11503: ; preds = %11247
%11504 = load float*, float** %11
%11505 = getelementptr inbounds float, float* %11504, i64 0
%11506 = load float, float* %11505
%11507 = load float*, float** %8
%11508 = getelementptr inbounds float, float* %11507, i64 0
%11509 = load float, float* %11508
%11510 = fsub float %11506, %11509
%11511 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %11510, float* %11511
%11512 = load float*, float** %11
%11513 = getelementptr inbounds float, float* %11512, i64 1
%11514 = load float, float* %11513
%11515 = load float*, float** %8
%11516 = getelementptr inbounds float, float* %11515, i64 1
%11517 = load float, float* %11516
%11518 = fsub float %11514, %11517
%11519 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %11518, float* %11519
%11520 = load float*, float** %11
%11521 = getelementptr inbounds float, float* %11520, i64 2
%11522 = load float, float* %11521
%11523 = load float*, float** %8
%11524 = getelementptr inbounds float, float* %11523, i64 2
%11525 = load float, float* %11524
%11526 = fsub float %11522, %11525
%11527 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %11526, float* %11527
%11528 = load float*, float** %10
%11529 = getelementptr inbounds float, float* %11528, i64 0
%11530 = load float, float* %11529
%11531 = load float*, float** %8
%11532 = getelementptr inbounds float, float* %11531, i64 0
%11533 = load float, float* %11532
%11534 = fsub float %11530, %11533
%11535 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %11534, float* %11535
%11536 = load float*, float** %10
%11537 = getelementptr inbounds float, float* %11536, i64 1
%11538 = load float, float* %11537
%11539 = load float*, float** %8
%11540 = getelementptr inbounds float, float* %11539, i64 1
%11541 = load float, float* %11540
%11542 = fsub float %11538, %11541
%11543 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %11542, float* %11543
%11544 = load float*, float** %10
%11545 = getelementptr inbounds float, float* %11544, i64 2
%11546 = load float, float* %11545
%11547 = load float*, float** %8
%11548 = getelementptr inbounds float, float* %11547, i64 2
%11549 = load float, float* %11548
%11550 = fsub float %11546, %11549
%11551 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %11550, float* %11551
%11552 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%11553 = load float, float* %11552
%11554 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%11555 = load float, float* %11554
%11556 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%11557 = load float, float* %11556
%11558 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%11559 = load float, float* %11558
%11560 = fmul float %11557, %11559
%11561 = fneg float %11560
%11562 = call float @llvm.fmuladd.f32(float %11553, float %11555, float %11561)
%11563 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %11562, float* %11563
%11564 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%11565 = load float, float* %11564
%11566 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%11567 = load float, float* %11566
%11568 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%11569 = load float, float* %11568
%11570 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%11571 = load float, float* %11570
%11572 = fmul float %11569, %11571
%11573 = fneg float %11572
%11574 = call float @llvm.fmuladd.f32(float %11565, float %11567, float %11573)
%11575 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %11574, float* %11575
%11576 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%11577 = load float, float* %11576
%11578 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%11579 = load float, float* %11578
%11580 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%11581 = load float, float* %11580
%11582 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%11583 = load float, float* %11582
%11584 = fmul float %11581, %11583
%11585 = fneg float %11584
%11586 = call float @llvm.fmuladd.f32(float %11577, float %11579, float %11585)
%11587 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %11586, float* %11587
%11588 = load float*, float** %12
%11589 = getelementptr inbounds float, float* %11588, i64 0
%11590 = load float, float* %11589
%11591 = load float*, float** %8
%11592 = getelementptr inbounds float, float* %11591, i64 0
%11593 = load float, float* %11592
%11594 = fsub float %11590, %11593
%11595 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %11594, float* %11595
%11596 = load float*, float** %12
%11597 = getelementptr inbounds float, float* %11596, i64 1
%11598 = load float, float* %11597
%11599 = load float*, float** %8
%11600 = getelementptr inbounds float, float* %11599, i64 1
%11601 = load float, float* %11600
%11602 = fsub float %11598, %11601
%11603 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %11602, float* %11603
%11604 = load float*, float** %12
%11605 = getelementptr inbounds float, float* %11604, i64 2
%11606 = load float, float* %11605
%11607 = load float*, float** %8
%11608 = getelementptr inbounds float, float* %11607, i64 2
%11609 = load float, float* %11608
%11610 = fsub float %11606, %11609
%11611 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %11610, float* %11611
%11612 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%11613 = load float, float* %11612
%11614 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%11615 = load float, float* %11614
%11616 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%11617 = load float, float* %11616
%11618 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%11619 = load float, float* %11618
%11620 = fmul float %11617, %11619
%11621 = call float @llvm.fmuladd.f32(float %11613, float %11615, float %11620)
%11622 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%11623 = load float, float* %11622
%11624 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%11625 = load float, float* %11624
%11626 = call float @llvm.fmuladd.f32(float %11623, float %11625, float %11621)
%11627 = fcmp ogt float %11626, 0.000000e+00
br i1 %11627, label %11628, label %11629
11628: ; preds = %11503
store i32 0, i32* %7
br label %37477
11629: ; preds = %11503
%11630 = load float*, float** %11
%11631 = getelementptr inbounds float, float* %11630, i64 0
%11632 = load float, float* %11631
%11633 = load float*, float** %10
%11634 = getelementptr inbounds float, float* %11633, i64 0
%11635 = load float, float* %11634
%11636 = fsub float %11632, %11635
%11637 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %11636, float* %11637
%11638 = load float*, float** %11
%11639 = getelementptr inbounds float, float* %11638, i64 1
%11640 = load float, float* %11639
%11641 = load float*, float** %10
%11642 = getelementptr inbounds float, float* %11641, i64 1
%11643 = load float, float* %11642
%11644 = fsub float %11640, %11643
%11645 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %11644, float* %11645
%11646 = load float*, float** %11
%11647 = getelementptr inbounds float, float* %11646, i64 2
%11648 = load float, float* %11647
%11649 = load float*, float** %10
%11650 = getelementptr inbounds float, float* %11649, i64 2
%11651 = load float, float* %11650
%11652 = fsub float %11648, %11651
%11653 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %11652, float* %11653
%11654 = load float*, float** %9
%11655 = getelementptr inbounds float, float* %11654, i64 0
%11656 = load float, float* %11655
%11657 = load float*, float** %10
%11658 = getelementptr inbounds float, float* %11657, i64 0
%11659 = load float, float* %11658
%11660 = fsub float %11656, %11659
%11661 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %11660, float* %11661
%11662 = load float*, float** %9
%11663 = getelementptr inbounds float, float* %11662, i64 1
%11664 = load float, float* %11663
%11665 = load float*, float** %10
%11666 = getelementptr inbounds float, float* %11665, i64 1
%11667 = load float, float* %11666
%11668 = fsub float %11664, %11667
%11669 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %11668, float* %11669
%11670 = load float*, float** %9
%11671 = getelementptr inbounds float, float* %11670, i64 2
%11672 = load float, float* %11671
%11673 = load float*, float** %10
%11674 = getelementptr inbounds float, float* %11673, i64 2
%11675 = load float, float* %11674
%11676 = fsub float %11672, %11675
%11677 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %11676, float* %11677
%11678 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%11679 = load float, float* %11678
%11680 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%11681 = load float, float* %11680
%11682 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%11683 = load float, float* %11682
%11684 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%11685 = load float, float* %11684
%11686 = fmul float %11683, %11685
%11687 = fneg float %11686
%11688 = call float @llvm.fmuladd.f32(float %11679, float %11681, float %11687)
%11689 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %11688, float* %11689
%11690 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%11691 = load float, float* %11690
%11692 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%11693 = load float, float* %11692
%11694 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%11695 = load float, float* %11694
%11696 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%11697 = load float, float* %11696
%11698 = fmul float %11695, %11697
%11699 = fneg float %11698
%11700 = call float @llvm.fmuladd.f32(float %11691, float %11693, float %11699)
%11701 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %11700, float* %11701
%11702 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%11703 = load float, float* %11702
%11704 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%11705 = load float, float* %11704
%11706 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%11707 = load float, float* %11706
%11708 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%11709 = load float, float* %11708
%11710 = fmul float %11707, %11709
%11711 = fneg float %11710
%11712 = call float @llvm.fmuladd.f32(float %11703, float %11705, float %11711)
%11713 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %11712, float* %11713
%11714 = load float*, float** %13
%11715 = getelementptr inbounds float, float* %11714, i64 0
%11716 = load float, float* %11715
%11717 = load float*, float** %10
%11718 = getelementptr inbounds float, float* %11717, i64 0
%11719 = load float, float* %11718
%11720 = fsub float %11716, %11719
%11721 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %11720, float* %11721
%11722 = load float*, float** %13
%11723 = getelementptr inbounds float, float* %11722, i64 1
%11724 = load float, float* %11723
%11725 = load float*, float** %10
%11726 = getelementptr inbounds float, float* %11725, i64 1
%11727 = load float, float* %11726
%11728 = fsub float %11724, %11727
%11729 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %11728, float* %11729
%11730 = load float*, float** %13
%11731 = getelementptr inbounds float, float* %11730, i64 2
%11732 = load float, float* %11731
%11733 = load float*, float** %10
%11734 = getelementptr inbounds float, float* %11733, i64 2
%11735 = load float, float* %11734
%11736 = fsub float %11732, %11735
%11737 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %11736, float* %11737
%11738 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%11739 = load float, float* %11738
%11740 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%11741 = load float, float* %11740
%11742 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%11743 = load float, float* %11742
%11744 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%11745 = load float, float* %11744
%11746 = fmul float %11743, %11745
%11747 = call float @llvm.fmuladd.f32(float %11739, float %11741, float %11746)
%11748 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%11749 = load float, float* %11748
%11750 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%11751 = load float, float* %11750
%11752 = call float @llvm.fmuladd.f32(float %11749, float %11751, float %11747)
%11753 = fcmp ogt float %11752, 0.000000e+00
br i1 %11753, label %11754, label %11755
11754: ; preds = %11629
store i32 0, i32* %7
br label %37477
11755: ; preds = %11629
store i32 1, i32* %7
br label %37477
11756: ; preds = %11244
%11757 = load float, float* %18
%11758 = fcmp ogt float %11757, 0.000000e+00
br i1 %11758, label %11759, label %12268
11759: ; preds = %11756
%11760 = load float, float* %19
%11761 = fcmp ogt float %11760, 0.000000e+00
br i1 %11761, label %11762, label %12015
11762: ; preds = %11759
%11763 = load float*, float** %11
%11764 = getelementptr inbounds float, float* %11763, i64 0
%11765 = load float, float* %11764
%11766 = load float*, float** %9
%11767 = getelementptr inbounds float, float* %11766, i64 0
%11768 = load float, float* %11767
%11769 = fsub float %11765, %11768
%11770 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %11769, float* %11770
%11771 = load float*, float** %11
%11772 = getelementptr inbounds float, float* %11771, i64 1
%11773 = load float, float* %11772
%11774 = load float*, float** %9
%11775 = getelementptr inbounds float, float* %11774, i64 1
%11776 = load float, float* %11775
%11777 = fsub float %11773, %11776
%11778 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %11777, float* %11778
%11779 = load float*, float** %11
%11780 = getelementptr inbounds float, float* %11779, i64 2
%11781 = load float, float* %11780
%11782 = load float*, float** %9
%11783 = getelementptr inbounds float, float* %11782, i64 2
%11784 = load float, float* %11783
%11785 = fsub float %11781, %11784
%11786 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %11785, float* %11786
%11787 = load float*, float** %10
%11788 = getelementptr inbounds float, float* %11787, i64 0
%11789 = load float, float* %11788
%11790 = load float*, float** %9
%11791 = getelementptr inbounds float, float* %11790, i64 0
%11792 = load float, float* %11791
%11793 = fsub float %11789, %11792
%11794 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %11793, float* %11794
%11795 = load float*, float** %10
%11796 = getelementptr inbounds float, float* %11795, i64 1
%11797 = load float, float* %11796
%11798 = load float*, float** %9
%11799 = getelementptr inbounds float, float* %11798, i64 1
%11800 = load float, float* %11799
%11801 = fsub float %11797, %11800
%11802 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %11801, float* %11802
%11803 = load float*, float** %10
%11804 = getelementptr inbounds float, float* %11803, i64 2
%11805 = load float, float* %11804
%11806 = load float*, float** %9
%11807 = getelementptr inbounds float, float* %11806, i64 2
%11808 = load float, float* %11807
%11809 = fsub float %11805, %11808
%11810 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %11809, float* %11810
%11811 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%11812 = load float, float* %11811
%11813 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%11814 = load float, float* %11813
%11815 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%11816 = load float, float* %11815
%11817 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%11818 = load float, float* %11817
%11819 = fmul float %11816, %11818
%11820 = fneg float %11819
%11821 = call float @llvm.fmuladd.f32(float %11812, float %11814, float %11820)
%11822 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %11821, float* %11822
%11823 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%11824 = load float, float* %11823
%11825 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%11826 = load float, float* %11825
%11827 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%11828 = load float, float* %11827
%11829 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%11830 = load float, float* %11829
%11831 = fmul float %11828, %11830
%11832 = fneg float %11831
%11833 = call float @llvm.fmuladd.f32(float %11824, float %11826, float %11832)
%11834 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %11833, float* %11834
%11835 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%11836 = load float, float* %11835
%11837 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%11838 = load float, float* %11837
%11839 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%11840 = load float, float* %11839
%11841 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%11842 = load float, float* %11841
%11843 = fmul float %11840, %11842
%11844 = fneg float %11843
%11845 = call float @llvm.fmuladd.f32(float %11836, float %11838, float %11844)
%11846 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %11845, float* %11846
%11847 = load float*, float** %12
%11848 = getelementptr inbounds float, float* %11847, i64 0
%11849 = load float, float* %11848
%11850 = load float*, float** %9
%11851 = getelementptr inbounds float, float* %11850, i64 0
%11852 = load float, float* %11851
%11853 = fsub float %11849, %11852
%11854 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %11853, float* %11854
%11855 = load float*, float** %12
%11856 = getelementptr inbounds float, float* %11855, i64 1
%11857 = load float, float* %11856
%11858 = load float*, float** %9
%11859 = getelementptr inbounds float, float* %11858, i64 1
%11860 = load float, float* %11859
%11861 = fsub float %11857, %11860
%11862 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %11861, float* %11862
%11863 = load float*, float** %12
%11864 = getelementptr inbounds float, float* %11863, i64 2
%11865 = load float, float* %11864
%11866 = load float*, float** %9
%11867 = getelementptr inbounds float, float* %11866, i64 2
%11868 = load float, float* %11867
%11869 = fsub float %11865, %11868
%11870 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %11869, float* %11870
%11871 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%11872 = load float, float* %11871
%11873 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%11874 = load float, float* %11873
%11875 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%11876 = load float, float* %11875
%11877 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%11878 = load float, float* %11877
%11879 = fmul float %11876, %11878
%11880 = call float @llvm.fmuladd.f32(float %11872, float %11874, float %11879)
%11881 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%11882 = load float, float* %11881
%11883 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%11884 = load float, float* %11883
%11885 = call float @llvm.fmuladd.f32(float %11882, float %11884, float %11880)
%11886 = fcmp ogt float %11885, 0.000000e+00
br i1 %11886, label %11887, label %11888
11887: ; preds = %11762
store i32 0, i32* %7
br label %37477
11888: ; preds = %11762
%11889 = load float*, float** %11
%11890 = getelementptr inbounds float, float* %11889, i64 0
%11891 = load float, float* %11890
%11892 = load float*, float** %10
%11893 = getelementptr inbounds float, float* %11892, i64 0
%11894 = load float, float* %11893
%11895 = fsub float %11891, %11894
%11896 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %11895, float* %11896
%11897 = load float*, float** %11
%11898 = getelementptr inbounds float, float* %11897, i64 1
%11899 = load float, float* %11898
%11900 = load float*, float** %10
%11901 = getelementptr inbounds float, float* %11900, i64 1
%11902 = load float, float* %11901
%11903 = fsub float %11899, %11902
%11904 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %11903, float* %11904
%11905 = load float*, float** %11
%11906 = getelementptr inbounds float, float* %11905, i64 2
%11907 = load float, float* %11906
%11908 = load float*, float** %10
%11909 = getelementptr inbounds float, float* %11908, i64 2
%11910 = load float, float* %11909
%11911 = fsub float %11907, %11910
%11912 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %11911, float* %11912
%11913 = load float*, float** %8
%11914 = getelementptr inbounds float, float* %11913, i64 0
%11915 = load float, float* %11914
%11916 = load float*, float** %10
%11917 = getelementptr inbounds float, float* %11916, i64 0
%11918 = load float, float* %11917
%11919 = fsub float %11915, %11918
%11920 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %11919, float* %11920
%11921 = load float*, float** %8
%11922 = getelementptr inbounds float, float* %11921, i64 1
%11923 = load float, float* %11922
%11924 = load float*, float** %10
%11925 = getelementptr inbounds float, float* %11924, i64 1
%11926 = load float, float* %11925
%11927 = fsub float %11923, %11926
%11928 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %11927, float* %11928
%11929 = load float*, float** %8
%11930 = getelementptr inbounds float, float* %11929, i64 2
%11931 = load float, float* %11930
%11932 = load float*, float** %10
%11933 = getelementptr inbounds float, float* %11932, i64 2
%11934 = load float, float* %11933
%11935 = fsub float %11931, %11934
%11936 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %11935, float* %11936
%11937 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%11938 = load float, float* %11937
%11939 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%11940 = load float, float* %11939
%11941 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%11942 = load float, float* %11941
%11943 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%11944 = load float, float* %11943
%11945 = fmul float %11942, %11944
%11946 = fneg float %11945
%11947 = call float @llvm.fmuladd.f32(float %11938, float %11940, float %11946)
%11948 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %11947, float* %11948
%11949 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%11950 = load float, float* %11949
%11951 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%11952 = load float, float* %11951
%11953 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%11954 = load float, float* %11953
%11955 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%11956 = load float, float* %11955
%11957 = fmul float %11954, %11956
%11958 = fneg float %11957
%11959 = call float @llvm.fmuladd.f32(float %11950, float %11952, float %11958)
%11960 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %11959, float* %11960
%11961 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%11962 = load float, float* %11961
%11963 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%11964 = load float, float* %11963
%11965 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%11966 = load float, float* %11965
%11967 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%11968 = load float, float* %11967
%11969 = fmul float %11966, %11968
%11970 = fneg float %11969
%11971 = call float @llvm.fmuladd.f32(float %11962, float %11964, float %11970)
%11972 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %11971, float* %11972
%11973 = load float*, float** %13
%11974 = getelementptr inbounds float, float* %11973, i64 0
%11975 = load float, float* %11974
%11976 = load float*, float** %10
%11977 = getelementptr inbounds float, float* %11976, i64 0
%11978 = load float, float* %11977
%11979 = fsub float %11975, %11978
%11980 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %11979, float* %11980
%11981 = load float*, float** %13
%11982 = getelementptr inbounds float, float* %11981, i64 1
%11983 = load float, float* %11982
%11984 = load float*, float** %10
%11985 = getelementptr inbounds float, float* %11984, i64 1
%11986 = load float, float* %11985
%11987 = fsub float %11983, %11986
%11988 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %11987, float* %11988
%11989 = load float*, float** %13
%11990 = getelementptr inbounds float, float* %11989, i64 2
%11991 = load float, float* %11990
%11992 = load float*, float** %10
%11993 = getelementptr inbounds float, float* %11992, i64 2
%11994 = load float, float* %11993
%11995 = fsub float %11991, %11994
%11996 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %11995, float* %11996
%11997 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%11998 = load float, float* %11997
%11999 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%12000 = load float, float* %11999
%12001 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%12002 = load float, float* %12001
%12003 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%12004 = load float, float* %12003
%12005 = fmul float %12002, %12004
%12006 = call float @llvm.fmuladd.f32(float %11998, float %12000, float %12005)
%12007 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%12008 = load float, float* %12007
%12009 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%12010 = load float, float* %12009
%12011 = call float @llvm.fmuladd.f32(float %12008, float %12010, float %12006)
%12012 = fcmp ogt float %12011, 0.000000e+00
br i1 %12012, label %12013, label %12014
12013: ; preds = %11888
store i32 0, i32* %7
br label %37477
12014: ; preds = %11888
store i32 1, i32* %7
br label %37477
12015: ; preds = %11759
%12016 = load float*, float** %12
%12017 = getelementptr inbounds float, float* %12016, i64 0
%12018 = load float, float* %12017
%12019 = load float*, float** %8
%12020 = getelementptr inbounds float, float* %12019, i64 0
%12021 = load float, float* %12020
%12022 = fsub float %12018, %12021
%12023 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %12022, float* %12023
%12024 = load float*, float** %12
%12025 = getelementptr inbounds float, float* %12024, i64 1
%12026 = load float, float* %12025
%12027 = load float*, float** %8
%12028 = getelementptr inbounds float, float* %12027, i64 1
%12029 = load float, float* %12028
%12030 = fsub float %12026, %12029
%12031 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %12030, float* %12031
%12032 = load float*, float** %12
%12033 = getelementptr inbounds float, float* %12032, i64 2
%12034 = load float, float* %12033
%12035 = load float*, float** %8
%12036 = getelementptr inbounds float, float* %12035, i64 2
%12037 = load float, float* %12036
%12038 = fsub float %12034, %12037
%12039 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %12038, float* %12039
%12040 = load float*, float** %10
%12041 = getelementptr inbounds float, float* %12040, i64 0
%12042 = load float, float* %12041
%12043 = load float*, float** %8
%12044 = getelementptr inbounds float, float* %12043, i64 0
%12045 = load float, float* %12044
%12046 = fsub float %12042, %12045
%12047 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %12046, float* %12047
%12048 = load float*, float** %10
%12049 = getelementptr inbounds float, float* %12048, i64 1
%12050 = load float, float* %12049
%12051 = load float*, float** %8
%12052 = getelementptr inbounds float, float* %12051, i64 1
%12053 = load float, float* %12052
%12054 = fsub float %12050, %12053
%12055 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %12054, float* %12055
%12056 = load float*, float** %10
%12057 = getelementptr inbounds float, float* %12056, i64 2
%12058 = load float, float* %12057
%12059 = load float*, float** %8
%12060 = getelementptr inbounds float, float* %12059, i64 2
%12061 = load float, float* %12060
%12062 = fsub float %12058, %12061
%12063 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %12062, float* %12063
%12064 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%12065 = load float, float* %12064
%12066 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%12067 = load float, float* %12066
%12068 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%12069 = load float, float* %12068
%12070 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%12071 = load float, float* %12070
%12072 = fmul float %12069, %12071
%12073 = fneg float %12072
%12074 = call float @llvm.fmuladd.f32(float %12065, float %12067, float %12073)
%12075 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %12074, float* %12075
%12076 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%12077 = load float, float* %12076
%12078 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%12079 = load float, float* %12078
%12080 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%12081 = load float, float* %12080
%12082 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%12083 = load float, float* %12082
%12084 = fmul float %12081, %12083
%12085 = fneg float %12084
%12086 = call float @llvm.fmuladd.f32(float %12077, float %12079, float %12085)
%12087 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %12086, float* %12087
%12088 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%12089 = load float, float* %12088
%12090 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%12091 = load float, float* %12090
%12092 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%12093 = load float, float* %12092
%12094 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%12095 = load float, float* %12094
%12096 = fmul float %12093, %12095
%12097 = fneg float %12096
%12098 = call float @llvm.fmuladd.f32(float %12089, float %12091, float %12097)
%12099 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %12098, float* %12099
%12100 = load float*, float** %13
%12101 = getelementptr inbounds float, float* %12100, i64 0
%12102 = load float, float* %12101
%12103 = load float*, float** %8
%12104 = getelementptr inbounds float, float* %12103, i64 0
%12105 = load float, float* %12104
%12106 = fsub float %12102, %12105
%12107 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %12106, float* %12107
%12108 = load float*, float** %13
%12109 = getelementptr inbounds float, float* %12108, i64 1
%12110 = load float, float* %12109
%12111 = load float*, float** %8
%12112 = getelementptr inbounds float, float* %12111, i64 1
%12113 = load float, float* %12112
%12114 = fsub float %12110, %12113
%12115 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %12114, float* %12115
%12116 = load float*, float** %13
%12117 = getelementptr inbounds float, float* %12116, i64 2
%12118 = load float, float* %12117
%12119 = load float*, float** %8
%12120 = getelementptr inbounds float, float* %12119, i64 2
%12121 = load float, float* %12120
%12122 = fsub float %12118, %12121
%12123 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %12122, float* %12123
%12124 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%12125 = load float, float* %12124
%12126 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%12127 = load float, float* %12126
%12128 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%12129 = load float, float* %12128
%12130 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%12131 = load float, float* %12130
%12132 = fmul float %12129, %12131
%12133 = call float @llvm.fmuladd.f32(float %12125, float %12127, float %12132)
%12134 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%12135 = load float, float* %12134
%12136 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%12137 = load float, float* %12136
%12138 = call float @llvm.fmuladd.f32(float %12135, float %12137, float %12133)
%12139 = fcmp ogt float %12138, 0.000000e+00
br i1 %12139, label %12140, label %12141
12140: ; preds = %12015
store i32 0, i32* %7
br label %37477
12141: ; preds = %12015
%12142 = load float*, float** %12
%12143 = getelementptr inbounds float, float* %12142, i64 0
%12144 = load float, float* %12143
%12145 = load float*, float** %10
%12146 = getelementptr inbounds float, float* %12145, i64 0
%12147 = load float, float* %12146
%12148 = fsub float %12144, %12147
%12149 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %12148, float* %12149
%12150 = load float*, float** %12
%12151 = getelementptr inbounds float, float* %12150, i64 1
%12152 = load float, float* %12151
%12153 = load float*, float** %10
%12154 = getelementptr inbounds float, float* %12153, i64 1
%12155 = load float, float* %12154
%12156 = fsub float %12152, %12155
%12157 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %12156, float* %12157
%12158 = load float*, float** %12
%12159 = getelementptr inbounds float, float* %12158, i64 2
%12160 = load float, float* %12159
%12161 = load float*, float** %10
%12162 = getelementptr inbounds float, float* %12161, i64 2
%12163 = load float, float* %12162
%12164 = fsub float %12160, %12163
%12165 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %12164, float* %12165
%12166 = load float*, float** %9
%12167 = getelementptr inbounds float, float* %12166, i64 0
%12168 = load float, float* %12167
%12169 = load float*, float** %10
%12170 = getelementptr inbounds float, float* %12169, i64 0
%12171 = load float, float* %12170
%12172 = fsub float %12168, %12171
%12173 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %12172, float* %12173
%12174 = load float*, float** %9
%12175 = getelementptr inbounds float, float* %12174, i64 1
%12176 = load float, float* %12175
%12177 = load float*, float** %10
%12178 = getelementptr inbounds float, float* %12177, i64 1
%12179 = load float, float* %12178
%12180 = fsub float %12176, %12179
%12181 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %12180, float* %12181
%12182 = load float*, float** %9
%12183 = getelementptr inbounds float, float* %12182, i64 2
%12184 = load float, float* %12183
%12185 = load float*, float** %10
%12186 = getelementptr inbounds float, float* %12185, i64 2
%12187 = load float, float* %12186
%12188 = fsub float %12184, %12187
%12189 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %12188, float* %12189
%12190 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%12191 = load float, float* %12190
%12192 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%12193 = load float, float* %12192
%12194 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%12195 = load float, float* %12194
%12196 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%12197 = load float, float* %12196
%12198 = fmul float %12195, %12197
%12199 = fneg float %12198
%12200 = call float @llvm.fmuladd.f32(float %12191, float %12193, float %12199)
%12201 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %12200, float* %12201
%12202 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%12203 = load float, float* %12202
%12204 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%12205 = load float, float* %12204
%12206 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%12207 = load float, float* %12206
%12208 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%12209 = load float, float* %12208
%12210 = fmul float %12207, %12209
%12211 = fneg float %12210
%12212 = call float @llvm.fmuladd.f32(float %12203, float %12205, float %12211)
%12213 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %12212, float* %12213
%12214 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%12215 = load float, float* %12214
%12216 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%12217 = load float, float* %12216
%12218 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%12219 = load float, float* %12218
%12220 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%12221 = load float, float* %12220
%12222 = fmul float %12219, %12221
%12223 = fneg float %12222
%12224 = call float @llvm.fmuladd.f32(float %12215, float %12217, float %12223)
%12225 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %12224, float* %12225
%12226 = load float*, float** %11
%12227 = getelementptr inbounds float, float* %12226, i64 0
%12228 = load float, float* %12227
%12229 = load float*, float** %10
%12230 = getelementptr inbounds float, float* %12229, i64 0
%12231 = load float, float* %12230
%12232 = fsub float %12228, %12231
%12233 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %12232, float* %12233
%12234 = load float*, float** %11
%12235 = getelementptr inbounds float, float* %12234, i64 1
%12236 = load float, float* %12235
%12237 = load float*, float** %10
%12238 = getelementptr inbounds float, float* %12237, i64 1
%12239 = load float, float* %12238
%12240 = fsub float %12236, %12239
%12241 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %12240, float* %12241
%12242 = load float*, float** %11
%12243 = getelementptr inbounds float, float* %12242, i64 2
%12244 = load float, float* %12243
%12245 = load float*, float** %10
%12246 = getelementptr inbounds float, float* %12245, i64 2
%12247 = load float, float* %12246
%12248 = fsub float %12244, %12247
%12249 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %12248, float* %12249
%12250 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%12251 = load float, float* %12250
%12252 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%12253 = load float, float* %12252
%12254 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%12255 = load float, float* %12254
%12256 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%12257 = load float, float* %12256
%12258 = fmul float %12255, %12257
%12259 = call float @llvm.fmuladd.f32(float %12251, float %12253, float %12258)
%12260 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%12261 = load float, float* %12260
%12262 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%12263 = load float, float* %12262
%12264 = call float @llvm.fmuladd.f32(float %12261, float %12263, float %12259)
%12265 = fcmp ogt float %12264, 0.000000e+00
br i1 %12265, label %12266, label %12267
12266: ; preds = %12141
store i32 0, i32* %7
br label %37477
12267: ; preds = %12141
store i32 1, i32* %7
br label %37477
12268: ; preds = %11756
%12269 = load float, float* %19
%12270 = fcmp ogt float %12269, 0.000000e+00
br i1 %12270, label %12271, label %12524
12271: ; preds = %12268
%12272 = load float*, float** %13
%12273 = getelementptr inbounds float, float* %12272, i64 0
%12274 = load float, float* %12273
%12275 = load float*, float** %8
%12276 = getelementptr inbounds float, float* %12275, i64 0
%12277 = load float, float* %12276
%12278 = fsub float %12274, %12277
%12279 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %12278, float* %12279
%12280 = load float*, float** %13
%12281 = getelementptr inbounds float, float* %12280, i64 1
%12282 = load float, float* %12281
%12283 = load float*, float** %8
%12284 = getelementptr inbounds float, float* %12283, i64 1
%12285 = load float, float* %12284
%12286 = fsub float %12282, %12285
%12287 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %12286, float* %12287
%12288 = load float*, float** %13
%12289 = getelementptr inbounds float, float* %12288, i64 2
%12290 = load float, float* %12289
%12291 = load float*, float** %8
%12292 = getelementptr inbounds float, float* %12291, i64 2
%12293 = load float, float* %12292
%12294 = fsub float %12290, %12293
%12295 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %12294, float* %12295
%12296 = load float*, float** %10
%12297 = getelementptr inbounds float, float* %12296, i64 0
%12298 = load float, float* %12297
%12299 = load float*, float** %8
%12300 = getelementptr inbounds float, float* %12299, i64 0
%12301 = load float, float* %12300
%12302 = fsub float %12298, %12301
%12303 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %12302, float* %12303
%12304 = load float*, float** %10
%12305 = getelementptr inbounds float, float* %12304, i64 1
%12306 = load float, float* %12305
%12307 = load float*, float** %8
%12308 = getelementptr inbounds float, float* %12307, i64 1
%12309 = load float, float* %12308
%12310 = fsub float %12306, %12309
%12311 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %12310, float* %12311
%12312 = load float*, float** %10
%12313 = getelementptr inbounds float, float* %12312, i64 2
%12314 = load float, float* %12313
%12315 = load float*, float** %8
%12316 = getelementptr inbounds float, float* %12315, i64 2
%12317 = load float, float* %12316
%12318 = fsub float %12314, %12317
%12319 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %12318, float* %12319
%12320 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%12321 = load float, float* %12320
%12322 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%12323 = load float, float* %12322
%12324 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%12325 = load float, float* %12324
%12326 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%12327 = load float, float* %12326
%12328 = fmul float %12325, %12327
%12329 = fneg float %12328
%12330 = call float @llvm.fmuladd.f32(float %12321, float %12323, float %12329)
%12331 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %12330, float* %12331
%12332 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%12333 = load float, float* %12332
%12334 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%12335 = load float, float* %12334
%12336 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%12337 = load float, float* %12336
%12338 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%12339 = load float, float* %12338
%12340 = fmul float %12337, %12339
%12341 = fneg float %12340
%12342 = call float @llvm.fmuladd.f32(float %12333, float %12335, float %12341)
%12343 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %12342, float* %12343
%12344 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%12345 = load float, float* %12344
%12346 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%12347 = load float, float* %12346
%12348 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%12349 = load float, float* %12348
%12350 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%12351 = load float, float* %12350
%12352 = fmul float %12349, %12351
%12353 = fneg float %12352
%12354 = call float @llvm.fmuladd.f32(float %12345, float %12347, float %12353)
%12355 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %12354, float* %12355
%12356 = load float*, float** %11
%12357 = getelementptr inbounds float, float* %12356, i64 0
%12358 = load float, float* %12357
%12359 = load float*, float** %8
%12360 = getelementptr inbounds float, float* %12359, i64 0
%12361 = load float, float* %12360
%12362 = fsub float %12358, %12361
%12363 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %12362, float* %12363
%12364 = load float*, float** %11
%12365 = getelementptr inbounds float, float* %12364, i64 1
%12366 = load float, float* %12365
%12367 = load float*, float** %8
%12368 = getelementptr inbounds float, float* %12367, i64 1
%12369 = load float, float* %12368
%12370 = fsub float %12366, %12369
%12371 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %12370, float* %12371
%12372 = load float*, float** %11
%12373 = getelementptr inbounds float, float* %12372, i64 2
%12374 = load float, float* %12373
%12375 = load float*, float** %8
%12376 = getelementptr inbounds float, float* %12375, i64 2
%12377 = load float, float* %12376
%12378 = fsub float %12374, %12377
%12379 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %12378, float* %12379
%12380 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%12381 = load float, float* %12380
%12382 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%12383 = load float, float* %12382
%12384 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%12385 = load float, float* %12384
%12386 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%12387 = load float, float* %12386
%12388 = fmul float %12385, %12387
%12389 = call float @llvm.fmuladd.f32(float %12381, float %12383, float %12388)
%12390 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%12391 = load float, float* %12390
%12392 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%12393 = load float, float* %12392
%12394 = call float @llvm.fmuladd.f32(float %12391, float %12393, float %12389)
%12395 = fcmp ogt float %12394, 0.000000e+00
br i1 %12395, label %12396, label %12397
12396: ; preds = %12271
store i32 0, i32* %7
br label %37477
12397: ; preds = %12271
%12398 = load float*, float** %13
%12399 = getelementptr inbounds float, float* %12398, i64 0
%12400 = load float, float* %12399
%12401 = load float*, float** %10
%12402 = getelementptr inbounds float, float* %12401, i64 0
%12403 = load float, float* %12402
%12404 = fsub float %12400, %12403
%12405 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %12404, float* %12405
%12406 = load float*, float** %13
%12407 = getelementptr inbounds float, float* %12406, i64 1
%12408 = load float, float* %12407
%12409 = load float*, float** %10
%12410 = getelementptr inbounds float, float* %12409, i64 1
%12411 = load float, float* %12410
%12412 = fsub float %12408, %12411
%12413 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %12412, float* %12413
%12414 = load float*, float** %13
%12415 = getelementptr inbounds float, float* %12414, i64 2
%12416 = load float, float* %12415
%12417 = load float*, float** %10
%12418 = getelementptr inbounds float, float* %12417, i64 2
%12419 = load float, float* %12418
%12420 = fsub float %12416, %12419
%12421 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %12420, float* %12421
%12422 = load float*, float** %9
%12423 = getelementptr inbounds float, float* %12422, i64 0
%12424 = load float, float* %12423
%12425 = load float*, float** %10
%12426 = getelementptr inbounds float, float* %12425, i64 0
%12427 = load float, float* %12426
%12428 = fsub float %12424, %12427
%12429 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %12428, float* %12429
%12430 = load float*, float** %9
%12431 = getelementptr inbounds float, float* %12430, i64 1
%12432 = load float, float* %12431
%12433 = load float*, float** %10
%12434 = getelementptr inbounds float, float* %12433, i64 1
%12435 = load float, float* %12434
%12436 = fsub float %12432, %12435
%12437 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %12436, float* %12437
%12438 = load float*, float** %9
%12439 = getelementptr inbounds float, float* %12438, i64 2
%12440 = load float, float* %12439
%12441 = load float*, float** %10
%12442 = getelementptr inbounds float, float* %12441, i64 2
%12443 = load float, float* %12442
%12444 = fsub float %12440, %12443
%12445 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %12444, float* %12445
%12446 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%12447 = load float, float* %12446
%12448 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%12449 = load float, float* %12448
%12450 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%12451 = load float, float* %12450
%12452 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%12453 = load float, float* %12452
%12454 = fmul float %12451, %12453
%12455 = fneg float %12454
%12456 = call float @llvm.fmuladd.f32(float %12447, float %12449, float %12455)
%12457 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %12456, float* %12457
%12458 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%12459 = load float, float* %12458
%12460 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%12461 = load float, float* %12460
%12462 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%12463 = load float, float* %12462
%12464 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%12465 = load float, float* %12464
%12466 = fmul float %12463, %12465
%12467 = fneg float %12466
%12468 = call float @llvm.fmuladd.f32(float %12459, float %12461, float %12467)
%12469 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %12468, float* %12469
%12470 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%12471 = load float, float* %12470
%12472 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%12473 = load float, float* %12472
%12474 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%12475 = load float, float* %12474
%12476 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%12477 = load float, float* %12476
%12478 = fmul float %12475, %12477
%12479 = fneg float %12478
%12480 = call float @llvm.fmuladd.f32(float %12471, float %12473, float %12479)
%12481 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %12480, float* %12481
%12482 = load float*, float** %12
%12483 = getelementptr inbounds float, float* %12482, i64 0
%12484 = load float, float* %12483
%12485 = load float*, float** %10
%12486 = getelementptr inbounds float, float* %12485, i64 0
%12487 = load float, float* %12486
%12488 = fsub float %12484, %12487
%12489 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %12488, float* %12489
%12490 = load float*, float** %12
%12491 = getelementptr inbounds float, float* %12490, i64 1
%12492 = load float, float* %12491
%12493 = load float*, float** %10
%12494 = getelementptr inbounds float, float* %12493, i64 1
%12495 = load float, float* %12494
%12496 = fsub float %12492, %12495
%12497 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %12496, float* %12497
%12498 = load float*, float** %12
%12499 = getelementptr inbounds float, float* %12498, i64 2
%12500 = load float, float* %12499
%12501 = load float*, float** %10
%12502 = getelementptr inbounds float, float* %12501, i64 2
%12503 = load float, float* %12502
%12504 = fsub float %12500, %12503
%12505 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %12504, float* %12505
%12506 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%12507 = load float, float* %12506
%12508 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%12509 = load float, float* %12508
%12510 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%12511 = load float, float* %12510
%12512 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%12513 = load float, float* %12512
%12514 = fmul float %12511, %12513
%12515 = call float @llvm.fmuladd.f32(float %12507, float %12509, float %12514)
%12516 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%12517 = load float, float* %12516
%12518 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%12519 = load float, float* %12518
%12520 = call float @llvm.fmuladd.f32(float %12517, float %12519, float %12515)
%12521 = fcmp ogt float %12520, 0.000000e+00
br i1 %12521, label %12522, label %12523
12522: ; preds = %12397
store i32 0, i32* %7
br label %37477
12523: ; preds = %12397
store i32 1, i32* %7
br label %37477
12524: ; preds = %12268
%12525 = load float, float* %19
%12526 = fcmp olt float %12525, 0.000000e+00
br i1 %12526, label %12527, label %12780
12527: ; preds = %12524
%12528 = load float*, float** %13
%12529 = getelementptr inbounds float, float* %12528, i64 0
%12530 = load float, float* %12529
%12531 = load float*, float** %9
%12532 = getelementptr inbounds float, float* %12531, i64 0
%12533 = load float, float* %12532
%12534 = fsub float %12530, %12533
%12535 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %12534, float* %12535
%12536 = load float*, float** %13
%12537 = getelementptr inbounds float, float* %12536, i64 1
%12538 = load float, float* %12537
%12539 = load float*, float** %9
%12540 = getelementptr inbounds float, float* %12539, i64 1
%12541 = load float, float* %12540
%12542 = fsub float %12538, %12541
%12543 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %12542, float* %12543
%12544 = load float*, float** %13
%12545 = getelementptr inbounds float, float* %12544, i64 2
%12546 = load float, float* %12545
%12547 = load float*, float** %9
%12548 = getelementptr inbounds float, float* %12547, i64 2
%12549 = load float, float* %12548
%12550 = fsub float %12546, %12549
%12551 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %12550, float* %12551
%12552 = load float*, float** %10
%12553 = getelementptr inbounds float, float* %12552, i64 0
%12554 = load float, float* %12553
%12555 = load float*, float** %9
%12556 = getelementptr inbounds float, float* %12555, i64 0
%12557 = load float, float* %12556
%12558 = fsub float %12554, %12557
%12559 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %12558, float* %12559
%12560 = load float*, float** %10
%12561 = getelementptr inbounds float, float* %12560, i64 1
%12562 = load float, float* %12561
%12563 = load float*, float** %9
%12564 = getelementptr inbounds float, float* %12563, i64 1
%12565 = load float, float* %12564
%12566 = fsub float %12562, %12565
%12567 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %12566, float* %12567
%12568 = load float*, float** %10
%12569 = getelementptr inbounds float, float* %12568, i64 2
%12570 = load float, float* %12569
%12571 = load float*, float** %9
%12572 = getelementptr inbounds float, float* %12571, i64 2
%12573 = load float, float* %12572
%12574 = fsub float %12570, %12573
%12575 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %12574, float* %12575
%12576 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%12577 = load float, float* %12576
%12578 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%12579 = load float, float* %12578
%12580 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%12581 = load float, float* %12580
%12582 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%12583 = load float, float* %12582
%12584 = fmul float %12581, %12583
%12585 = fneg float %12584
%12586 = call float @llvm.fmuladd.f32(float %12577, float %12579, float %12585)
%12587 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %12586, float* %12587
%12588 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%12589 = load float, float* %12588
%12590 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%12591 = load float, float* %12590
%12592 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%12593 = load float, float* %12592
%12594 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%12595 = load float, float* %12594
%12596 = fmul float %12593, %12595
%12597 = fneg float %12596
%12598 = call float @llvm.fmuladd.f32(float %12589, float %12591, float %12597)
%12599 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %12598, float* %12599
%12600 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%12601 = load float, float* %12600
%12602 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%12603 = load float, float* %12602
%12604 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%12605 = load float, float* %12604
%12606 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%12607 = load float, float* %12606
%12608 = fmul float %12605, %12607
%12609 = fneg float %12608
%12610 = call float @llvm.fmuladd.f32(float %12601, float %12603, float %12609)
%12611 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %12610, float* %12611
%12612 = load float*, float** %11
%12613 = getelementptr inbounds float, float* %12612, i64 0
%12614 = load float, float* %12613
%12615 = load float*, float** %9
%12616 = getelementptr inbounds float, float* %12615, i64 0
%12617 = load float, float* %12616
%12618 = fsub float %12614, %12617
%12619 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %12618, float* %12619
%12620 = load float*, float** %11
%12621 = getelementptr inbounds float, float* %12620, i64 1
%12622 = load float, float* %12621
%12623 = load float*, float** %9
%12624 = getelementptr inbounds float, float* %12623, i64 1
%12625 = load float, float* %12624
%12626 = fsub float %12622, %12625
%12627 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %12626, float* %12627
%12628 = load float*, float** %11
%12629 = getelementptr inbounds float, float* %12628, i64 2
%12630 = load float, float* %12629
%12631 = load float*, float** %9
%12632 = getelementptr inbounds float, float* %12631, i64 2
%12633 = load float, float* %12632
%12634 = fsub float %12630, %12633
%12635 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %12634, float* %12635
%12636 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%12637 = load float, float* %12636
%12638 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%12639 = load float, float* %12638
%12640 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%12641 = load float, float* %12640
%12642 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%12643 = load float, float* %12642
%12644 = fmul float %12641, %12643
%12645 = call float @llvm.fmuladd.f32(float %12637, float %12639, float %12644)
%12646 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%12647 = load float, float* %12646
%12648 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%12649 = load float, float* %12648
%12650 = call float @llvm.fmuladd.f32(float %12647, float %12649, float %12645)
%12651 = fcmp ogt float %12650, 0.000000e+00
br i1 %12651, label %12652, label %12653
12652: ; preds = %12527
store i32 0, i32* %7
br label %37477
12653: ; preds = %12527
%12654 = load float*, float** %13
%12655 = getelementptr inbounds float, float* %12654, i64 0
%12656 = load float, float* %12655
%12657 = load float*, float** %10
%12658 = getelementptr inbounds float, float* %12657, i64 0
%12659 = load float, float* %12658
%12660 = fsub float %12656, %12659
%12661 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %12660, float* %12661
%12662 = load float*, float** %13
%12663 = getelementptr inbounds float, float* %12662, i64 1
%12664 = load float, float* %12663
%12665 = load float*, float** %10
%12666 = getelementptr inbounds float, float* %12665, i64 1
%12667 = load float, float* %12666
%12668 = fsub float %12664, %12667
%12669 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %12668, float* %12669
%12670 = load float*, float** %13
%12671 = getelementptr inbounds float, float* %12670, i64 2
%12672 = load float, float* %12671
%12673 = load float*, float** %10
%12674 = getelementptr inbounds float, float* %12673, i64 2
%12675 = load float, float* %12674
%12676 = fsub float %12672, %12675
%12677 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %12676, float* %12677
%12678 = load float*, float** %8
%12679 = getelementptr inbounds float, float* %12678, i64 0
%12680 = load float, float* %12679
%12681 = load float*, float** %10
%12682 = getelementptr inbounds float, float* %12681, i64 0
%12683 = load float, float* %12682
%12684 = fsub float %12680, %12683
%12685 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %12684, float* %12685
%12686 = load float*, float** %8
%12687 = getelementptr inbounds float, float* %12686, i64 1
%12688 = load float, float* %12687
%12689 = load float*, float** %10
%12690 = getelementptr inbounds float, float* %12689, i64 1
%12691 = load float, float* %12690
%12692 = fsub float %12688, %12691
%12693 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %12692, float* %12693
%12694 = load float*, float** %8
%12695 = getelementptr inbounds float, float* %12694, i64 2
%12696 = load float, float* %12695
%12697 = load float*, float** %10
%12698 = getelementptr inbounds float, float* %12697, i64 2
%12699 = load float, float* %12698
%12700 = fsub float %12696, %12699
%12701 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %12700, float* %12701
%12702 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%12703 = load float, float* %12702
%12704 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%12705 = load float, float* %12704
%12706 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%12707 = load float, float* %12706
%12708 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%12709 = load float, float* %12708
%12710 = fmul float %12707, %12709
%12711 = fneg float %12710
%12712 = call float @llvm.fmuladd.f32(float %12703, float %12705, float %12711)
%12713 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %12712, float* %12713
%12714 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%12715 = load float, float* %12714
%12716 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%12717 = load float, float* %12716
%12718 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%12719 = load float, float* %12718
%12720 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%12721 = load float, float* %12720
%12722 = fmul float %12719, %12721
%12723 = fneg float %12722
%12724 = call float @llvm.fmuladd.f32(float %12715, float %12717, float %12723)
%12725 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %12724, float* %12725
%12726 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%12727 = load float, float* %12726
%12728 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%12729 = load float, float* %12728
%12730 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%12731 = load float, float* %12730
%12732 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%12733 = load float, float* %12732
%12734 = fmul float %12731, %12733
%12735 = fneg float %12734
%12736 = call float @llvm.fmuladd.f32(float %12727, float %12729, float %12735)
%12737 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %12736, float* %12737
%12738 = load float*, float** %12
%12739 = getelementptr inbounds float, float* %12738, i64 0
%12740 = load float, float* %12739
%12741 = load float*, float** %10
%12742 = getelementptr inbounds float, float* %12741, i64 0
%12743 = load float, float* %12742
%12744 = fsub float %12740, %12743
%12745 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %12744, float* %12745
%12746 = load float*, float** %12
%12747 = getelementptr inbounds float, float* %12746, i64 1
%12748 = load float, float* %12747
%12749 = load float*, float** %10
%12750 = getelementptr inbounds float, float* %12749, i64 1
%12751 = load float, float* %12750
%12752 = fsub float %12748, %12751
%12753 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %12752, float* %12753
%12754 = load float*, float** %12
%12755 = getelementptr inbounds float, float* %12754, i64 2
%12756 = load float, float* %12755
%12757 = load float*, float** %10
%12758 = getelementptr inbounds float, float* %12757, i64 2
%12759 = load float, float* %12758
%12760 = fsub float %12756, %12759
%12761 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %12760, float* %12761
%12762 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%12763 = load float, float* %12762
%12764 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%12765 = load float, float* %12764
%12766 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%12767 = load float, float* %12766
%12768 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%12769 = load float, float* %12768
%12770 = fmul float %12767, %12769
%12771 = call float @llvm.fmuladd.f32(float %12763, float %12765, float %12770)
%12772 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%12773 = load float, float* %12772
%12774 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%12775 = load float, float* %12774
%12776 = call float @llvm.fmuladd.f32(float %12773, float %12775, float %12771)
%12777 = fcmp ogt float %12776, 0.000000e+00
br i1 %12777, label %12778, label %12779
12778: ; preds = %12653
store i32 0, i32* %7
br label %37477
12779: ; preds = %12653
store i32 1, i32* %7
br label %37477
12780: ; preds = %12524
%12781 = load float*, float** %10
%12782 = load float*, float** %8
%12783 = load float*, float** %9
%12784 = load float*, float** %11
%12785 = load float*, float** %12
%12786 = load float*, float** %13
%12787 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%12788 = getelementptr inbounds [3 x float], [3 x float]* %23, i64 0, i64 0
%12789 = call i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...) bitcast (i32 (...)* @coplanar_tri_tri3d to i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...)*)(float* %12781, float* %12782, float* %12783, float* %12784, float* %12785, float* %12786, float* %12787, float* %12788)
store i32 %12789, i32* %7
br label %37477
12790: ; preds = %9705
%12791 = load float, float* %16
%12792 = fcmp olt float %12791, 0.000000e+00
br i1 %12792, label %12793, label %15875
12793: ; preds = %12790
%12794 = load float, float* %17
%12795 = fcmp ogt float %12794, 0.000000e+00
br i1 %12795, label %12796, label %13561
12796: ; preds = %12793
%12797 = load float, float* %18
%12798 = fcmp ogt float %12797, 0.000000e+00
br i1 %12798, label %12799, label %13052
12799: ; preds = %12796
%12800 = load float*, float** %13
%12801 = getelementptr inbounds float, float* %12800, i64 0
%12802 = load float, float* %12801
%12803 = load float*, float** %8
%12804 = getelementptr inbounds float, float* %12803, i64 0
%12805 = load float, float* %12804
%12806 = fsub float %12802, %12805
%12807 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %12806, float* %12807
%12808 = load float*, float** %13
%12809 = getelementptr inbounds float, float* %12808, i64 1
%12810 = load float, float* %12809
%12811 = load float*, float** %8
%12812 = getelementptr inbounds float, float* %12811, i64 1
%12813 = load float, float* %12812
%12814 = fsub float %12810, %12813
%12815 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %12814, float* %12815
%12816 = load float*, float** %13
%12817 = getelementptr inbounds float, float* %12816, i64 2
%12818 = load float, float* %12817
%12819 = load float*, float** %8
%12820 = getelementptr inbounds float, float* %12819, i64 2
%12821 = load float, float* %12820
%12822 = fsub float %12818, %12821
%12823 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %12822, float* %12823
%12824 = load float*, float** %9
%12825 = getelementptr inbounds float, float* %12824, i64 0
%12826 = load float, float* %12825
%12827 = load float*, float** %8
%12828 = getelementptr inbounds float, float* %12827, i64 0
%12829 = load float, float* %12828
%12830 = fsub float %12826, %12829
%12831 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %12830, float* %12831
%12832 = load float*, float** %9
%12833 = getelementptr inbounds float, float* %12832, i64 1
%12834 = load float, float* %12833
%12835 = load float*, float** %8
%12836 = getelementptr inbounds float, float* %12835, i64 1
%12837 = load float, float* %12836
%12838 = fsub float %12834, %12837
%12839 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %12838, float* %12839
%12840 = load float*, float** %9
%12841 = getelementptr inbounds float, float* %12840, i64 2
%12842 = load float, float* %12841
%12843 = load float*, float** %8
%12844 = getelementptr inbounds float, float* %12843, i64 2
%12845 = load float, float* %12844
%12846 = fsub float %12842, %12845
%12847 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %12846, float* %12847
%12848 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%12849 = load float, float* %12848
%12850 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%12851 = load float, float* %12850
%12852 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%12853 = load float, float* %12852
%12854 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%12855 = load float, float* %12854
%12856 = fmul float %12853, %12855
%12857 = fneg float %12856
%12858 = call float @llvm.fmuladd.f32(float %12849, float %12851, float %12857)
%12859 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %12858, float* %12859
%12860 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%12861 = load float, float* %12860
%12862 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%12863 = load float, float* %12862
%12864 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%12865 = load float, float* %12864
%12866 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%12867 = load float, float* %12866
%12868 = fmul float %12865, %12867
%12869 = fneg float %12868
%12870 = call float @llvm.fmuladd.f32(float %12861, float %12863, float %12869)
%12871 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %12870, float* %12871
%12872 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%12873 = load float, float* %12872
%12874 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%12875 = load float, float* %12874
%12876 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%12877 = load float, float* %12876
%12878 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%12879 = load float, float* %12878
%12880 = fmul float %12877, %12879
%12881 = fneg float %12880
%12882 = call float @llvm.fmuladd.f32(float %12873, float %12875, float %12881)
%12883 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %12882, float* %12883
%12884 = load float*, float** %11
%12885 = getelementptr inbounds float, float* %12884, i64 0
%12886 = load float, float* %12885
%12887 = load float*, float** %8
%12888 = getelementptr inbounds float, float* %12887, i64 0
%12889 = load float, float* %12888
%12890 = fsub float %12886, %12889
%12891 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %12890, float* %12891
%12892 = load float*, float** %11
%12893 = getelementptr inbounds float, float* %12892, i64 1
%12894 = load float, float* %12893
%12895 = load float*, float** %8
%12896 = getelementptr inbounds float, float* %12895, i64 1
%12897 = load float, float* %12896
%12898 = fsub float %12894, %12897
%12899 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %12898, float* %12899
%12900 = load float*, float** %11
%12901 = getelementptr inbounds float, float* %12900, i64 2
%12902 = load float, float* %12901
%12903 = load float*, float** %8
%12904 = getelementptr inbounds float, float* %12903, i64 2
%12905 = load float, float* %12904
%12906 = fsub float %12902, %12905
%12907 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %12906, float* %12907
%12908 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%12909 = load float, float* %12908
%12910 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%12911 = load float, float* %12910
%12912 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%12913 = load float, float* %12912
%12914 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%12915 = load float, float* %12914
%12916 = fmul float %12913, %12915
%12917 = call float @llvm.fmuladd.f32(float %12909, float %12911, float %12916)
%12918 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%12919 = load float, float* %12918
%12920 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%12921 = load float, float* %12920
%12922 = call float @llvm.fmuladd.f32(float %12919, float %12921, float %12917)
%12923 = fcmp ogt float %12922, 0.000000e+00
br i1 %12923, label %12924, label %12925
12924: ; preds = %12799
store i32 0, i32* %7
br label %37477
12925: ; preds = %12799
%12926 = load float*, float** %13
%12927 = getelementptr inbounds float, float* %12926, i64 0
%12928 = load float, float* %12927
%12929 = load float*, float** %9
%12930 = getelementptr inbounds float, float* %12929, i64 0
%12931 = load float, float* %12930
%12932 = fsub float %12928, %12931
%12933 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %12932, float* %12933
%12934 = load float*, float** %13
%12935 = getelementptr inbounds float, float* %12934, i64 1
%12936 = load float, float* %12935
%12937 = load float*, float** %9
%12938 = getelementptr inbounds float, float* %12937, i64 1
%12939 = load float, float* %12938
%12940 = fsub float %12936, %12939
%12941 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %12940, float* %12941
%12942 = load float*, float** %13
%12943 = getelementptr inbounds float, float* %12942, i64 2
%12944 = load float, float* %12943
%12945 = load float*, float** %9
%12946 = getelementptr inbounds float, float* %12945, i64 2
%12947 = load float, float* %12946
%12948 = fsub float %12944, %12947
%12949 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %12948, float* %12949
%12950 = load float*, float** %10
%12951 = getelementptr inbounds float, float* %12950, i64 0
%12952 = load float, float* %12951
%12953 = load float*, float** %9
%12954 = getelementptr inbounds float, float* %12953, i64 0
%12955 = load float, float* %12954
%12956 = fsub float %12952, %12955
%12957 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %12956, float* %12957
%12958 = load float*, float** %10
%12959 = getelementptr inbounds float, float* %12958, i64 1
%12960 = load float, float* %12959
%12961 = load float*, float** %9
%12962 = getelementptr inbounds float, float* %12961, i64 1
%12963 = load float, float* %12962
%12964 = fsub float %12960, %12963
%12965 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %12964, float* %12965
%12966 = load float*, float** %10
%12967 = getelementptr inbounds float, float* %12966, i64 2
%12968 = load float, float* %12967
%12969 = load float*, float** %9
%12970 = getelementptr inbounds float, float* %12969, i64 2
%12971 = load float, float* %12970
%12972 = fsub float %12968, %12971
%12973 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %12972, float* %12973
%12974 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%12975 = load float, float* %12974
%12976 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%12977 = load float, float* %12976
%12978 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%12979 = load float, float* %12978
%12980 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%12981 = load float, float* %12980
%12982 = fmul float %12979, %12981
%12983 = fneg float %12982
%12984 = call float @llvm.fmuladd.f32(float %12975, float %12977, float %12983)
%12985 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %12984, float* %12985
%12986 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%12987 = load float, float* %12986
%12988 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%12989 = load float, float* %12988
%12990 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%12991 = load float, float* %12990
%12992 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%12993 = load float, float* %12992
%12994 = fmul float %12991, %12993
%12995 = fneg float %12994
%12996 = call float @llvm.fmuladd.f32(float %12987, float %12989, float %12995)
%12997 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %12996, float* %12997
%12998 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%12999 = load float, float* %12998
%13000 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%13001 = load float, float* %13000
%13002 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%13003 = load float, float* %13002
%13004 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%13005 = load float, float* %13004
%13006 = fmul float %13003, %13005
%13007 = fneg float %13006
%13008 = call float @llvm.fmuladd.f32(float %12999, float %13001, float %13007)
%13009 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %13008, float* %13009
%13010 = load float*, float** %12
%13011 = getelementptr inbounds float, float* %13010, i64 0
%13012 = load float, float* %13011
%13013 = load float*, float** %9
%13014 = getelementptr inbounds float, float* %13013, i64 0
%13015 = load float, float* %13014
%13016 = fsub float %13012, %13015
%13017 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %13016, float* %13017
%13018 = load float*, float** %12
%13019 = getelementptr inbounds float, float* %13018, i64 1
%13020 = load float, float* %13019
%13021 = load float*, float** %9
%13022 = getelementptr inbounds float, float* %13021, i64 1
%13023 = load float, float* %13022
%13024 = fsub float %13020, %13023
%13025 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %13024, float* %13025
%13026 = load float*, float** %12
%13027 = getelementptr inbounds float, float* %13026, i64 2
%13028 = load float, float* %13027
%13029 = load float*, float** %9
%13030 = getelementptr inbounds float, float* %13029, i64 2
%13031 = load float, float* %13030
%13032 = fsub float %13028, %13031
%13033 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %13032, float* %13033
%13034 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%13035 = load float, float* %13034
%13036 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%13037 = load float, float* %13036
%13038 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%13039 = load float, float* %13038
%13040 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%13041 = load float, float* %13040
%13042 = fmul float %13039, %13041
%13043 = call float @llvm.fmuladd.f32(float %13035, float %13037, float %13042)
%13044 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%13045 = load float, float* %13044
%13046 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%13047 = load float, float* %13046
%13048 = call float @llvm.fmuladd.f32(float %13045, float %13047, float %13043)
%13049 = fcmp ogt float %13048, 0.000000e+00
br i1 %13049, label %13050, label %13051
13050: ; preds = %12925
store i32 0, i32* %7
br label %37477
13051: ; preds = %12925
store i32 1, i32* %7
br label %37477
13052: ; preds = %12796
%13053 = load float, float* %19
%13054 = fcmp ogt float %13053, 0.000000e+00
br i1 %13054, label %13055, label %13308
13055: ; preds = %13052
%13056 = load float*, float** %12
%13057 = getelementptr inbounds float, float* %13056, i64 0
%13058 = load float, float* %13057
%13059 = load float*, float** %8
%13060 = getelementptr inbounds float, float* %13059, i64 0
%13061 = load float, float* %13060
%13062 = fsub float %13058, %13061
%13063 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %13062, float* %13063
%13064 = load float*, float** %12
%13065 = getelementptr inbounds float, float* %13064, i64 1
%13066 = load float, float* %13065
%13067 = load float*, float** %8
%13068 = getelementptr inbounds float, float* %13067, i64 1
%13069 = load float, float* %13068
%13070 = fsub float %13066, %13069
%13071 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %13070, float* %13071
%13072 = load float*, float** %12
%13073 = getelementptr inbounds float, float* %13072, i64 2
%13074 = load float, float* %13073
%13075 = load float*, float** %8
%13076 = getelementptr inbounds float, float* %13075, i64 2
%13077 = load float, float* %13076
%13078 = fsub float %13074, %13077
%13079 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %13078, float* %13079
%13080 = load float*, float** %9
%13081 = getelementptr inbounds float, float* %13080, i64 0
%13082 = load float, float* %13081
%13083 = load float*, float** %8
%13084 = getelementptr inbounds float, float* %13083, i64 0
%13085 = load float, float* %13084
%13086 = fsub float %13082, %13085
%13087 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %13086, float* %13087
%13088 = load float*, float** %9
%13089 = getelementptr inbounds float, float* %13088, i64 1
%13090 = load float, float* %13089
%13091 = load float*, float** %8
%13092 = getelementptr inbounds float, float* %13091, i64 1
%13093 = load float, float* %13092
%13094 = fsub float %13090, %13093
%13095 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %13094, float* %13095
%13096 = load float*, float** %9
%13097 = getelementptr inbounds float, float* %13096, i64 2
%13098 = load float, float* %13097
%13099 = load float*, float** %8
%13100 = getelementptr inbounds float, float* %13099, i64 2
%13101 = load float, float* %13100
%13102 = fsub float %13098, %13101
%13103 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %13102, float* %13103
%13104 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%13105 = load float, float* %13104
%13106 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%13107 = load float, float* %13106
%13108 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%13109 = load float, float* %13108
%13110 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%13111 = load float, float* %13110
%13112 = fmul float %13109, %13111
%13113 = fneg float %13112
%13114 = call float @llvm.fmuladd.f32(float %13105, float %13107, float %13113)
%13115 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %13114, float* %13115
%13116 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%13117 = load float, float* %13116
%13118 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%13119 = load float, float* %13118
%13120 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%13121 = load float, float* %13120
%13122 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%13123 = load float, float* %13122
%13124 = fmul float %13121, %13123
%13125 = fneg float %13124
%13126 = call float @llvm.fmuladd.f32(float %13117, float %13119, float %13125)
%13127 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %13126, float* %13127
%13128 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%13129 = load float, float* %13128
%13130 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%13131 = load float, float* %13130
%13132 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%13133 = load float, float* %13132
%13134 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%13135 = load float, float* %13134
%13136 = fmul float %13133, %13135
%13137 = fneg float %13136
%13138 = call float @llvm.fmuladd.f32(float %13129, float %13131, float %13137)
%13139 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %13138, float* %13139
%13140 = load float*, float** %13
%13141 = getelementptr inbounds float, float* %13140, i64 0
%13142 = load float, float* %13141
%13143 = load float*, float** %8
%13144 = getelementptr inbounds float, float* %13143, i64 0
%13145 = load float, float* %13144
%13146 = fsub float %13142, %13145
%13147 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %13146, float* %13147
%13148 = load float*, float** %13
%13149 = getelementptr inbounds float, float* %13148, i64 1
%13150 = load float, float* %13149
%13151 = load float*, float** %8
%13152 = getelementptr inbounds float, float* %13151, i64 1
%13153 = load float, float* %13152
%13154 = fsub float %13150, %13153
%13155 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %13154, float* %13155
%13156 = load float*, float** %13
%13157 = getelementptr inbounds float, float* %13156, i64 2
%13158 = load float, float* %13157
%13159 = load float*, float** %8
%13160 = getelementptr inbounds float, float* %13159, i64 2
%13161 = load float, float* %13160
%13162 = fsub float %13158, %13161
%13163 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %13162, float* %13163
%13164 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%13165 = load float, float* %13164
%13166 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%13167 = load float, float* %13166
%13168 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%13169 = load float, float* %13168
%13170 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%13171 = load float, float* %13170
%13172 = fmul float %13169, %13171
%13173 = call float @llvm.fmuladd.f32(float %13165, float %13167, float %13172)
%13174 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%13175 = load float, float* %13174
%13176 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%13177 = load float, float* %13176
%13178 = call float @llvm.fmuladd.f32(float %13175, float %13177, float %13173)
%13179 = fcmp ogt float %13178, 0.000000e+00
br i1 %13179, label %13180, label %13181
13180: ; preds = %13055
store i32 0, i32* %7
br label %37477
13181: ; preds = %13055
%13182 = load float*, float** %12
%13183 = getelementptr inbounds float, float* %13182, i64 0
%13184 = load float, float* %13183
%13185 = load float*, float** %9
%13186 = getelementptr inbounds float, float* %13185, i64 0
%13187 = load float, float* %13186
%13188 = fsub float %13184, %13187
%13189 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %13188, float* %13189
%13190 = load float*, float** %12
%13191 = getelementptr inbounds float, float* %13190, i64 1
%13192 = load float, float* %13191
%13193 = load float*, float** %9
%13194 = getelementptr inbounds float, float* %13193, i64 1
%13195 = load float, float* %13194
%13196 = fsub float %13192, %13195
%13197 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %13196, float* %13197
%13198 = load float*, float** %12
%13199 = getelementptr inbounds float, float* %13198, i64 2
%13200 = load float, float* %13199
%13201 = load float*, float** %9
%13202 = getelementptr inbounds float, float* %13201, i64 2
%13203 = load float, float* %13202
%13204 = fsub float %13200, %13203
%13205 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %13204, float* %13205
%13206 = load float*, float** %10
%13207 = getelementptr inbounds float, float* %13206, i64 0
%13208 = load float, float* %13207
%13209 = load float*, float** %9
%13210 = getelementptr inbounds float, float* %13209, i64 0
%13211 = load float, float* %13210
%13212 = fsub float %13208, %13211
%13213 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %13212, float* %13213
%13214 = load float*, float** %10
%13215 = getelementptr inbounds float, float* %13214, i64 1
%13216 = load float, float* %13215
%13217 = load float*, float** %9
%13218 = getelementptr inbounds float, float* %13217, i64 1
%13219 = load float, float* %13218
%13220 = fsub float %13216, %13219
%13221 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %13220, float* %13221
%13222 = load float*, float** %10
%13223 = getelementptr inbounds float, float* %13222, i64 2
%13224 = load float, float* %13223
%13225 = load float*, float** %9
%13226 = getelementptr inbounds float, float* %13225, i64 2
%13227 = load float, float* %13226
%13228 = fsub float %13224, %13227
%13229 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %13228, float* %13229
%13230 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%13231 = load float, float* %13230
%13232 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%13233 = load float, float* %13232
%13234 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%13235 = load float, float* %13234
%13236 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%13237 = load float, float* %13236
%13238 = fmul float %13235, %13237
%13239 = fneg float %13238
%13240 = call float @llvm.fmuladd.f32(float %13231, float %13233, float %13239)
%13241 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %13240, float* %13241
%13242 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%13243 = load float, float* %13242
%13244 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%13245 = load float, float* %13244
%13246 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%13247 = load float, float* %13246
%13248 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%13249 = load float, float* %13248
%13250 = fmul float %13247, %13249
%13251 = fneg float %13250
%13252 = call float @llvm.fmuladd.f32(float %13243, float %13245, float %13251)
%13253 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %13252, float* %13253
%13254 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%13255 = load float, float* %13254
%13256 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%13257 = load float, float* %13256
%13258 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%13259 = load float, float* %13258
%13260 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%13261 = load float, float* %13260
%13262 = fmul float %13259, %13261
%13263 = fneg float %13262
%13264 = call float @llvm.fmuladd.f32(float %13255, float %13257, float %13263)
%13265 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %13264, float* %13265
%13266 = load float*, float** %11
%13267 = getelementptr inbounds float, float* %13266, i64 0
%13268 = load float, float* %13267
%13269 = load float*, float** %9
%13270 = getelementptr inbounds float, float* %13269, i64 0
%13271 = load float, float* %13270
%13272 = fsub float %13268, %13271
%13273 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %13272, float* %13273
%13274 = load float*, float** %11
%13275 = getelementptr inbounds float, float* %13274, i64 1
%13276 = load float, float* %13275
%13277 = load float*, float** %9
%13278 = getelementptr inbounds float, float* %13277, i64 1
%13279 = load float, float* %13278
%13280 = fsub float %13276, %13279
%13281 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %13280, float* %13281
%13282 = load float*, float** %11
%13283 = getelementptr inbounds float, float* %13282, i64 2
%13284 = load float, float* %13283
%13285 = load float*, float** %9
%13286 = getelementptr inbounds float, float* %13285, i64 2
%13287 = load float, float* %13286
%13288 = fsub float %13284, %13287
%13289 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %13288, float* %13289
%13290 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%13291 = load float, float* %13290
%13292 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%13293 = load float, float* %13292
%13294 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%13295 = load float, float* %13294
%13296 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%13297 = load float, float* %13296
%13298 = fmul float %13295, %13297
%13299 = call float @llvm.fmuladd.f32(float %13291, float %13293, float %13298)
%13300 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%13301 = load float, float* %13300
%13302 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%13303 = load float, float* %13302
%13304 = call float @llvm.fmuladd.f32(float %13301, float %13303, float %13299)
%13305 = fcmp ogt float %13304, 0.000000e+00
br i1 %13305, label %13306, label %13307
13306: ; preds = %13181
store i32 0, i32* %7
br label %37477
13307: ; preds = %13181
store i32 1, i32* %7
br label %37477
13308: ; preds = %13052
%13309 = load float*, float** %11
%13310 = getelementptr inbounds float, float* %13309, i64 0
%13311 = load float, float* %13310
%13312 = load float*, float** %10
%13313 = getelementptr inbounds float, float* %13312, i64 0
%13314 = load float, float* %13313
%13315 = fsub float %13311, %13314
%13316 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %13315, float* %13316
%13317 = load float*, float** %11
%13318 = getelementptr inbounds float, float* %13317, i64 1
%13319 = load float, float* %13318
%13320 = load float*, float** %10
%13321 = getelementptr inbounds float, float* %13320, i64 1
%13322 = load float, float* %13321
%13323 = fsub float %13319, %13322
%13324 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %13323, float* %13324
%13325 = load float*, float** %11
%13326 = getelementptr inbounds float, float* %13325, i64 2
%13327 = load float, float* %13326
%13328 = load float*, float** %10
%13329 = getelementptr inbounds float, float* %13328, i64 2
%13330 = load float, float* %13329
%13331 = fsub float %13327, %13330
%13332 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %13331, float* %13332
%13333 = load float*, float** %9
%13334 = getelementptr inbounds float, float* %13333, i64 0
%13335 = load float, float* %13334
%13336 = load float*, float** %10
%13337 = getelementptr inbounds float, float* %13336, i64 0
%13338 = load float, float* %13337
%13339 = fsub float %13335, %13338
%13340 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %13339, float* %13340
%13341 = load float*, float** %9
%13342 = getelementptr inbounds float, float* %13341, i64 1
%13343 = load float, float* %13342
%13344 = load float*, float** %10
%13345 = getelementptr inbounds float, float* %13344, i64 1
%13346 = load float, float* %13345
%13347 = fsub float %13343, %13346
%13348 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %13347, float* %13348
%13349 = load float*, float** %9
%13350 = getelementptr inbounds float, float* %13349, i64 2
%13351 = load float, float* %13350
%13352 = load float*, float** %10
%13353 = getelementptr inbounds float, float* %13352, i64 2
%13354 = load float, float* %13353
%13355 = fsub float %13351, %13354
%13356 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %13355, float* %13356
%13357 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%13358 = load float, float* %13357
%13359 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%13360 = load float, float* %13359
%13361 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%13362 = load float, float* %13361
%13363 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%13364 = load float, float* %13363
%13365 = fmul float %13362, %13364
%13366 = fneg float %13365
%13367 = call float @llvm.fmuladd.f32(float %13358, float %13360, float %13366)
%13368 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %13367, float* %13368
%13369 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%13370 = load float, float* %13369
%13371 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%13372 = load float, float* %13371
%13373 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%13374 = load float, float* %13373
%13375 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%13376 = load float, float* %13375
%13377 = fmul float %13374, %13376
%13378 = fneg float %13377
%13379 = call float @llvm.fmuladd.f32(float %13370, float %13372, float %13378)
%13380 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %13379, float* %13380
%13381 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%13382 = load float, float* %13381
%13383 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%13384 = load float, float* %13383
%13385 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%13386 = load float, float* %13385
%13387 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%13388 = load float, float* %13387
%13389 = fmul float %13386, %13388
%13390 = fneg float %13389
%13391 = call float @llvm.fmuladd.f32(float %13382, float %13384, float %13390)
%13392 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %13391, float* %13392
%13393 = load float*, float** %12
%13394 = getelementptr inbounds float, float* %13393, i64 0
%13395 = load float, float* %13394
%13396 = load float*, float** %10
%13397 = getelementptr inbounds float, float* %13396, i64 0
%13398 = load float, float* %13397
%13399 = fsub float %13395, %13398
%13400 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %13399, float* %13400
%13401 = load float*, float** %12
%13402 = getelementptr inbounds float, float* %13401, i64 1
%13403 = load float, float* %13402
%13404 = load float*, float** %10
%13405 = getelementptr inbounds float, float* %13404, i64 1
%13406 = load float, float* %13405
%13407 = fsub float %13403, %13406
%13408 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %13407, float* %13408
%13409 = load float*, float** %12
%13410 = getelementptr inbounds float, float* %13409, i64 2
%13411 = load float, float* %13410
%13412 = load float*, float** %10
%13413 = getelementptr inbounds float, float* %13412, i64 2
%13414 = load float, float* %13413
%13415 = fsub float %13411, %13414
%13416 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %13415, float* %13416
%13417 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%13418 = load float, float* %13417
%13419 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%13420 = load float, float* %13419
%13421 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%13422 = load float, float* %13421
%13423 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%13424 = load float, float* %13423
%13425 = fmul float %13422, %13424
%13426 = call float @llvm.fmuladd.f32(float %13418, float %13420, float %13425)
%13427 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%13428 = load float, float* %13427
%13429 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%13430 = load float, float* %13429
%13431 = call float @llvm.fmuladd.f32(float %13428, float %13430, float %13426)
%13432 = fcmp ogt float %13431, 0.000000e+00
br i1 %13432, label %13433, label %13434
13433: ; preds = %13308
store i32 0, i32* %7
br label %37477
13434: ; preds = %13308
%13435 = load float*, float** %11
%13436 = getelementptr inbounds float, float* %13435, i64 0
%13437 = load float, float* %13436
%13438 = load float*, float** %9
%13439 = getelementptr inbounds float, float* %13438, i64 0
%13440 = load float, float* %13439
%13441 = fsub float %13437, %13440
%13442 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %13441, float* %13442
%13443 = load float*, float** %11
%13444 = getelementptr inbounds float, float* %13443, i64 1
%13445 = load float, float* %13444
%13446 = load float*, float** %9
%13447 = getelementptr inbounds float, float* %13446, i64 1
%13448 = load float, float* %13447
%13449 = fsub float %13445, %13448
%13450 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %13449, float* %13450
%13451 = load float*, float** %11
%13452 = getelementptr inbounds float, float* %13451, i64 2
%13453 = load float, float* %13452
%13454 = load float*, float** %9
%13455 = getelementptr inbounds float, float* %13454, i64 2
%13456 = load float, float* %13455
%13457 = fsub float %13453, %13456
%13458 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %13457, float* %13458
%13459 = load float*, float** %8
%13460 = getelementptr inbounds float, float* %13459, i64 0
%13461 = load float, float* %13460
%13462 = load float*, float** %9
%13463 = getelementptr inbounds float, float* %13462, i64 0
%13464 = load float, float* %13463
%13465 = fsub float %13461, %13464
%13466 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %13465, float* %13466
%13467 = load float*, float** %8
%13468 = getelementptr inbounds float, float* %13467, i64 1
%13469 = load float, float* %13468
%13470 = load float*, float** %9
%13471 = getelementptr inbounds float, float* %13470, i64 1
%13472 = load float, float* %13471
%13473 = fsub float %13469, %13472
%13474 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %13473, float* %13474
%13475 = load float*, float** %8
%13476 = getelementptr inbounds float, float* %13475, i64 2
%13477 = load float, float* %13476
%13478 = load float*, float** %9
%13479 = getelementptr inbounds float, float* %13478, i64 2
%13480 = load float, float* %13479
%13481 = fsub float %13477, %13480
%13482 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %13481, float* %13482
%13483 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%13484 = load float, float* %13483
%13485 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%13486 = load float, float* %13485
%13487 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%13488 = load float, float* %13487
%13489 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%13490 = load float, float* %13489
%13491 = fmul float %13488, %13490
%13492 = fneg float %13491
%13493 = call float @llvm.fmuladd.f32(float %13484, float %13486, float %13492)
%13494 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %13493, float* %13494
%13495 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%13496 = load float, float* %13495
%13497 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%13498 = load float, float* %13497
%13499 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%13500 = load float, float* %13499
%13501 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%13502 = load float, float* %13501
%13503 = fmul float %13500, %13502
%13504 = fneg float %13503
%13505 = call float @llvm.fmuladd.f32(float %13496, float %13498, float %13504)
%13506 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %13505, float* %13506
%13507 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%13508 = load float, float* %13507
%13509 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%13510 = load float, float* %13509
%13511 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%13512 = load float, float* %13511
%13513 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%13514 = load float, float* %13513
%13515 = fmul float %13512, %13514
%13516 = fneg float %13515
%13517 = call float @llvm.fmuladd.f32(float %13508, float %13510, float %13516)
%13518 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %13517, float* %13518
%13519 = load float*, float** %13
%13520 = getelementptr inbounds float, float* %13519, i64 0
%13521 = load float, float* %13520
%13522 = load float*, float** %9
%13523 = getelementptr inbounds float, float* %13522, i64 0
%13524 = load float, float* %13523
%13525 = fsub float %13521, %13524
%13526 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %13525, float* %13526
%13527 = load float*, float** %13
%13528 = getelementptr inbounds float, float* %13527, i64 1
%13529 = load float, float* %13528
%13530 = load float*, float** %9
%13531 = getelementptr inbounds float, float* %13530, i64 1
%13532 = load float, float* %13531
%13533 = fsub float %13529, %13532
%13534 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %13533, float* %13534
%13535 = load float*, float** %13
%13536 = getelementptr inbounds float, float* %13535, i64 2
%13537 = load float, float* %13536
%13538 = load float*, float** %9
%13539 = getelementptr inbounds float, float* %13538, i64 2
%13540 = load float, float* %13539
%13541 = fsub float %13537, %13540
%13542 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %13541, float* %13542
%13543 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%13544 = load float, float* %13543
%13545 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%13546 = load float, float* %13545
%13547 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%13548 = load float, float* %13547
%13549 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%13550 = load float, float* %13549
%13551 = fmul float %13548, %13550
%13552 = call float @llvm.fmuladd.f32(float %13544, float %13546, float %13551)
%13553 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%13554 = load float, float* %13553
%13555 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%13556 = load float, float* %13555
%13557 = call float @llvm.fmuladd.f32(float %13554, float %13556, float %13552)
%13558 = fcmp ogt float %13557, 0.000000e+00
br i1 %13558, label %13559, label %13560
13559: ; preds = %13434
store i32 0, i32* %7
br label %37477
13560: ; preds = %13434
store i32 1, i32* %7
br label %37477
13561: ; preds = %12793
%13562 = load float, float* %17
%13563 = fcmp olt float %13562, 0.000000e+00
br i1 %13563, label %13564, label %14329
13564: ; preds = %13561
%13565 = load float, float* %18
%13566 = fcmp olt float %13565, 0.000000e+00
br i1 %13566, label %13567, label %13820
13567: ; preds = %13564
%13568 = load float*, float** %13
%13569 = getelementptr inbounds float, float* %13568, i64 0
%13570 = load float, float* %13569
%13571 = load float*, float** %10
%13572 = getelementptr inbounds float, float* %13571, i64 0
%13573 = load float, float* %13572
%13574 = fsub float %13570, %13573
%13575 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %13574, float* %13575
%13576 = load float*, float** %13
%13577 = getelementptr inbounds float, float* %13576, i64 1
%13578 = load float, float* %13577
%13579 = load float*, float** %10
%13580 = getelementptr inbounds float, float* %13579, i64 1
%13581 = load float, float* %13580
%13582 = fsub float %13578, %13581
%13583 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %13582, float* %13583
%13584 = load float*, float** %13
%13585 = getelementptr inbounds float, float* %13584, i64 2
%13586 = load float, float* %13585
%13587 = load float*, float** %10
%13588 = getelementptr inbounds float, float* %13587, i64 2
%13589 = load float, float* %13588
%13590 = fsub float %13586, %13589
%13591 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %13590, float* %13591
%13592 = load float*, float** %9
%13593 = getelementptr inbounds float, float* %13592, i64 0
%13594 = load float, float* %13593
%13595 = load float*, float** %10
%13596 = getelementptr inbounds float, float* %13595, i64 0
%13597 = load float, float* %13596
%13598 = fsub float %13594, %13597
%13599 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %13598, float* %13599
%13600 = load float*, float** %9
%13601 = getelementptr inbounds float, float* %13600, i64 1
%13602 = load float, float* %13601
%13603 = load float*, float** %10
%13604 = getelementptr inbounds float, float* %13603, i64 1
%13605 = load float, float* %13604
%13606 = fsub float %13602, %13605
%13607 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %13606, float* %13607
%13608 = load float*, float** %9
%13609 = getelementptr inbounds float, float* %13608, i64 2
%13610 = load float, float* %13609
%13611 = load float*, float** %10
%13612 = getelementptr inbounds float, float* %13611, i64 2
%13613 = load float, float* %13612
%13614 = fsub float %13610, %13613
%13615 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %13614, float* %13615
%13616 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%13617 = load float, float* %13616
%13618 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%13619 = load float, float* %13618
%13620 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%13621 = load float, float* %13620
%13622 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%13623 = load float, float* %13622
%13624 = fmul float %13621, %13623
%13625 = fneg float %13624
%13626 = call float @llvm.fmuladd.f32(float %13617, float %13619, float %13625)
%13627 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %13626, float* %13627
%13628 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%13629 = load float, float* %13628
%13630 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%13631 = load float, float* %13630
%13632 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%13633 = load float, float* %13632
%13634 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%13635 = load float, float* %13634
%13636 = fmul float %13633, %13635
%13637 = fneg float %13636
%13638 = call float @llvm.fmuladd.f32(float %13629, float %13631, float %13637)
%13639 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %13638, float* %13639
%13640 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%13641 = load float, float* %13640
%13642 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%13643 = load float, float* %13642
%13644 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%13645 = load float, float* %13644
%13646 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%13647 = load float, float* %13646
%13648 = fmul float %13645, %13647
%13649 = fneg float %13648
%13650 = call float @llvm.fmuladd.f32(float %13641, float %13643, float %13649)
%13651 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %13650, float* %13651
%13652 = load float*, float** %11
%13653 = getelementptr inbounds float, float* %13652, i64 0
%13654 = load float, float* %13653
%13655 = load float*, float** %10
%13656 = getelementptr inbounds float, float* %13655, i64 0
%13657 = load float, float* %13656
%13658 = fsub float %13654, %13657
%13659 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %13658, float* %13659
%13660 = load float*, float** %11
%13661 = getelementptr inbounds float, float* %13660, i64 1
%13662 = load float, float* %13661
%13663 = load float*, float** %10
%13664 = getelementptr inbounds float, float* %13663, i64 1
%13665 = load float, float* %13664
%13666 = fsub float %13662, %13665
%13667 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %13666, float* %13667
%13668 = load float*, float** %11
%13669 = getelementptr inbounds float, float* %13668, i64 2
%13670 = load float, float* %13669
%13671 = load float*, float** %10
%13672 = getelementptr inbounds float, float* %13671, i64 2
%13673 = load float, float* %13672
%13674 = fsub float %13670, %13673
%13675 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %13674, float* %13675
%13676 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%13677 = load float, float* %13676
%13678 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%13679 = load float, float* %13678
%13680 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%13681 = load float, float* %13680
%13682 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%13683 = load float, float* %13682
%13684 = fmul float %13681, %13683
%13685 = call float @llvm.fmuladd.f32(float %13677, float %13679, float %13684)
%13686 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%13687 = load float, float* %13686
%13688 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%13689 = load float, float* %13688
%13690 = call float @llvm.fmuladd.f32(float %13687, float %13689, float %13685)
%13691 = fcmp ogt float %13690, 0.000000e+00
br i1 %13691, label %13692, label %13693
13692: ; preds = %13567
store i32 0, i32* %7
br label %37477
13693: ; preds = %13567
%13694 = load float*, float** %13
%13695 = getelementptr inbounds float, float* %13694, i64 0
%13696 = load float, float* %13695
%13697 = load float*, float** %9
%13698 = getelementptr inbounds float, float* %13697, i64 0
%13699 = load float, float* %13698
%13700 = fsub float %13696, %13699
%13701 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %13700, float* %13701
%13702 = load float*, float** %13
%13703 = getelementptr inbounds float, float* %13702, i64 1
%13704 = load float, float* %13703
%13705 = load float*, float** %9
%13706 = getelementptr inbounds float, float* %13705, i64 1
%13707 = load float, float* %13706
%13708 = fsub float %13704, %13707
%13709 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %13708, float* %13709
%13710 = load float*, float** %13
%13711 = getelementptr inbounds float, float* %13710, i64 2
%13712 = load float, float* %13711
%13713 = load float*, float** %9
%13714 = getelementptr inbounds float, float* %13713, i64 2
%13715 = load float, float* %13714
%13716 = fsub float %13712, %13715
%13717 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %13716, float* %13717
%13718 = load float*, float** %8
%13719 = getelementptr inbounds float, float* %13718, i64 0
%13720 = load float, float* %13719
%13721 = load float*, float** %9
%13722 = getelementptr inbounds float, float* %13721, i64 0
%13723 = load float, float* %13722
%13724 = fsub float %13720, %13723
%13725 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %13724, float* %13725
%13726 = load float*, float** %8
%13727 = getelementptr inbounds float, float* %13726, i64 1
%13728 = load float, float* %13727
%13729 = load float*, float** %9
%13730 = getelementptr inbounds float, float* %13729, i64 1
%13731 = load float, float* %13730
%13732 = fsub float %13728, %13731
%13733 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %13732, float* %13733
%13734 = load float*, float** %8
%13735 = getelementptr inbounds float, float* %13734, i64 2
%13736 = load float, float* %13735
%13737 = load float*, float** %9
%13738 = getelementptr inbounds float, float* %13737, i64 2
%13739 = load float, float* %13738
%13740 = fsub float %13736, %13739
%13741 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %13740, float* %13741
%13742 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%13743 = load float, float* %13742
%13744 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%13745 = load float, float* %13744
%13746 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%13747 = load float, float* %13746
%13748 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%13749 = load float, float* %13748
%13750 = fmul float %13747, %13749
%13751 = fneg float %13750
%13752 = call float @llvm.fmuladd.f32(float %13743, float %13745, float %13751)
%13753 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %13752, float* %13753
%13754 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%13755 = load float, float* %13754
%13756 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%13757 = load float, float* %13756
%13758 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%13759 = load float, float* %13758
%13760 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%13761 = load float, float* %13760
%13762 = fmul float %13759, %13761
%13763 = fneg float %13762
%13764 = call float @llvm.fmuladd.f32(float %13755, float %13757, float %13763)
%13765 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %13764, float* %13765
%13766 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%13767 = load float, float* %13766
%13768 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%13769 = load float, float* %13768
%13770 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%13771 = load float, float* %13770
%13772 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%13773 = load float, float* %13772
%13774 = fmul float %13771, %13773
%13775 = fneg float %13774
%13776 = call float @llvm.fmuladd.f32(float %13767, float %13769, float %13775)
%13777 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %13776, float* %13777
%13778 = load float*, float** %12
%13779 = getelementptr inbounds float, float* %13778, i64 0
%13780 = load float, float* %13779
%13781 = load float*, float** %9
%13782 = getelementptr inbounds float, float* %13781, i64 0
%13783 = load float, float* %13782
%13784 = fsub float %13780, %13783
%13785 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %13784, float* %13785
%13786 = load float*, float** %12
%13787 = getelementptr inbounds float, float* %13786, i64 1
%13788 = load float, float* %13787
%13789 = load float*, float** %9
%13790 = getelementptr inbounds float, float* %13789, i64 1
%13791 = load float, float* %13790
%13792 = fsub float %13788, %13791
%13793 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %13792, float* %13793
%13794 = load float*, float** %12
%13795 = getelementptr inbounds float, float* %13794, i64 2
%13796 = load float, float* %13795
%13797 = load float*, float** %9
%13798 = getelementptr inbounds float, float* %13797, i64 2
%13799 = load float, float* %13798
%13800 = fsub float %13796, %13799
%13801 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %13800, float* %13801
%13802 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%13803 = load float, float* %13802
%13804 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%13805 = load float, float* %13804
%13806 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%13807 = load float, float* %13806
%13808 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%13809 = load float, float* %13808
%13810 = fmul float %13807, %13809
%13811 = call float @llvm.fmuladd.f32(float %13803, float %13805, float %13810)
%13812 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%13813 = load float, float* %13812
%13814 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%13815 = load float, float* %13814
%13816 = call float @llvm.fmuladd.f32(float %13813, float %13815, float %13811)
%13817 = fcmp ogt float %13816, 0.000000e+00
br i1 %13817, label %13818, label %13819
13818: ; preds = %13693
store i32 0, i32* %7
br label %37477
13819: ; preds = %13693
store i32 1, i32* %7
br label %37477
13820: ; preds = %13564
%13821 = load float, float* %19
%13822 = fcmp olt float %13821, 0.000000e+00
br i1 %13822, label %13823, label %14076
13823: ; preds = %13820
%13824 = load float*, float** %12
%13825 = getelementptr inbounds float, float* %13824, i64 0
%13826 = load float, float* %13825
%13827 = load float*, float** %10
%13828 = getelementptr inbounds float, float* %13827, i64 0
%13829 = load float, float* %13828
%13830 = fsub float %13826, %13829
%13831 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %13830, float* %13831
%13832 = load float*, float** %12
%13833 = getelementptr inbounds float, float* %13832, i64 1
%13834 = load float, float* %13833
%13835 = load float*, float** %10
%13836 = getelementptr inbounds float, float* %13835, i64 1
%13837 = load float, float* %13836
%13838 = fsub float %13834, %13837
%13839 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %13838, float* %13839
%13840 = load float*, float** %12
%13841 = getelementptr inbounds float, float* %13840, i64 2
%13842 = load float, float* %13841
%13843 = load float*, float** %10
%13844 = getelementptr inbounds float, float* %13843, i64 2
%13845 = load float, float* %13844
%13846 = fsub float %13842, %13845
%13847 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %13846, float* %13847
%13848 = load float*, float** %9
%13849 = getelementptr inbounds float, float* %13848, i64 0
%13850 = load float, float* %13849
%13851 = load float*, float** %10
%13852 = getelementptr inbounds float, float* %13851, i64 0
%13853 = load float, float* %13852
%13854 = fsub float %13850, %13853
%13855 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %13854, float* %13855
%13856 = load float*, float** %9
%13857 = getelementptr inbounds float, float* %13856, i64 1
%13858 = load float, float* %13857
%13859 = load float*, float** %10
%13860 = getelementptr inbounds float, float* %13859, i64 1
%13861 = load float, float* %13860
%13862 = fsub float %13858, %13861
%13863 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %13862, float* %13863
%13864 = load float*, float** %9
%13865 = getelementptr inbounds float, float* %13864, i64 2
%13866 = load float, float* %13865
%13867 = load float*, float** %10
%13868 = getelementptr inbounds float, float* %13867, i64 2
%13869 = load float, float* %13868
%13870 = fsub float %13866, %13869
%13871 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %13870, float* %13871
%13872 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%13873 = load float, float* %13872
%13874 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%13875 = load float, float* %13874
%13876 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%13877 = load float, float* %13876
%13878 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%13879 = load float, float* %13878
%13880 = fmul float %13877, %13879
%13881 = fneg float %13880
%13882 = call float @llvm.fmuladd.f32(float %13873, float %13875, float %13881)
%13883 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %13882, float* %13883
%13884 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%13885 = load float, float* %13884
%13886 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%13887 = load float, float* %13886
%13888 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%13889 = load float, float* %13888
%13890 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%13891 = load float, float* %13890
%13892 = fmul float %13889, %13891
%13893 = fneg float %13892
%13894 = call float @llvm.fmuladd.f32(float %13885, float %13887, float %13893)
%13895 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %13894, float* %13895
%13896 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%13897 = load float, float* %13896
%13898 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%13899 = load float, float* %13898
%13900 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%13901 = load float, float* %13900
%13902 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%13903 = load float, float* %13902
%13904 = fmul float %13901, %13903
%13905 = fneg float %13904
%13906 = call float @llvm.fmuladd.f32(float %13897, float %13899, float %13905)
%13907 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %13906, float* %13907
%13908 = load float*, float** %13
%13909 = getelementptr inbounds float, float* %13908, i64 0
%13910 = load float, float* %13909
%13911 = load float*, float** %10
%13912 = getelementptr inbounds float, float* %13911, i64 0
%13913 = load float, float* %13912
%13914 = fsub float %13910, %13913
%13915 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %13914, float* %13915
%13916 = load float*, float** %13
%13917 = getelementptr inbounds float, float* %13916, i64 1
%13918 = load float, float* %13917
%13919 = load float*, float** %10
%13920 = getelementptr inbounds float, float* %13919, i64 1
%13921 = load float, float* %13920
%13922 = fsub float %13918, %13921
%13923 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %13922, float* %13923
%13924 = load float*, float** %13
%13925 = getelementptr inbounds float, float* %13924, i64 2
%13926 = load float, float* %13925
%13927 = load float*, float** %10
%13928 = getelementptr inbounds float, float* %13927, i64 2
%13929 = load float, float* %13928
%13930 = fsub float %13926, %13929
%13931 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %13930, float* %13931
%13932 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%13933 = load float, float* %13932
%13934 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%13935 = load float, float* %13934
%13936 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%13937 = load float, float* %13936
%13938 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%13939 = load float, float* %13938
%13940 = fmul float %13937, %13939
%13941 = call float @llvm.fmuladd.f32(float %13933, float %13935, float %13940)
%13942 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%13943 = load float, float* %13942
%13944 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%13945 = load float, float* %13944
%13946 = call float @llvm.fmuladd.f32(float %13943, float %13945, float %13941)
%13947 = fcmp ogt float %13946, 0.000000e+00
br i1 %13947, label %13948, label %13949
13948: ; preds = %13823
store i32 0, i32* %7
br label %37477
13949: ; preds = %13823
%13950 = load float*, float** %12
%13951 = getelementptr inbounds float, float* %13950, i64 0
%13952 = load float, float* %13951
%13953 = load float*, float** %9
%13954 = getelementptr inbounds float, float* %13953, i64 0
%13955 = load float, float* %13954
%13956 = fsub float %13952, %13955
%13957 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %13956, float* %13957
%13958 = load float*, float** %12
%13959 = getelementptr inbounds float, float* %13958, i64 1
%13960 = load float, float* %13959
%13961 = load float*, float** %9
%13962 = getelementptr inbounds float, float* %13961, i64 1
%13963 = load float, float* %13962
%13964 = fsub float %13960, %13963
%13965 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %13964, float* %13965
%13966 = load float*, float** %12
%13967 = getelementptr inbounds float, float* %13966, i64 2
%13968 = load float, float* %13967
%13969 = load float*, float** %9
%13970 = getelementptr inbounds float, float* %13969, i64 2
%13971 = load float, float* %13970
%13972 = fsub float %13968, %13971
%13973 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %13972, float* %13973
%13974 = load float*, float** %8
%13975 = getelementptr inbounds float, float* %13974, i64 0
%13976 = load float, float* %13975
%13977 = load float*, float** %9
%13978 = getelementptr inbounds float, float* %13977, i64 0
%13979 = load float, float* %13978
%13980 = fsub float %13976, %13979
%13981 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %13980, float* %13981
%13982 = load float*, float** %8
%13983 = getelementptr inbounds float, float* %13982, i64 1
%13984 = load float, float* %13983
%13985 = load float*, float** %9
%13986 = getelementptr inbounds float, float* %13985, i64 1
%13987 = load float, float* %13986
%13988 = fsub float %13984, %13987
%13989 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %13988, float* %13989
%13990 = load float*, float** %8
%13991 = getelementptr inbounds float, float* %13990, i64 2
%13992 = load float, float* %13991
%13993 = load float*, float** %9
%13994 = getelementptr inbounds float, float* %13993, i64 2
%13995 = load float, float* %13994
%13996 = fsub float %13992, %13995
%13997 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %13996, float* %13997
%13998 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%13999 = load float, float* %13998
%14000 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%14001 = load float, float* %14000
%14002 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%14003 = load float, float* %14002
%14004 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%14005 = load float, float* %14004
%14006 = fmul float %14003, %14005
%14007 = fneg float %14006
%14008 = call float @llvm.fmuladd.f32(float %13999, float %14001, float %14007)
%14009 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %14008, float* %14009
%14010 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%14011 = load float, float* %14010
%14012 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%14013 = load float, float* %14012
%14014 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%14015 = load float, float* %14014
%14016 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%14017 = load float, float* %14016
%14018 = fmul float %14015, %14017
%14019 = fneg float %14018
%14020 = call float @llvm.fmuladd.f32(float %14011, float %14013, float %14019)
%14021 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %14020, float* %14021
%14022 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%14023 = load float, float* %14022
%14024 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%14025 = load float, float* %14024
%14026 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%14027 = load float, float* %14026
%14028 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%14029 = load float, float* %14028
%14030 = fmul float %14027, %14029
%14031 = fneg float %14030
%14032 = call float @llvm.fmuladd.f32(float %14023, float %14025, float %14031)
%14033 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %14032, float* %14033
%14034 = load float*, float** %11
%14035 = getelementptr inbounds float, float* %14034, i64 0
%14036 = load float, float* %14035
%14037 = load float*, float** %9
%14038 = getelementptr inbounds float, float* %14037, i64 0
%14039 = load float, float* %14038
%14040 = fsub float %14036, %14039
%14041 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %14040, float* %14041
%14042 = load float*, float** %11
%14043 = getelementptr inbounds float, float* %14042, i64 1
%14044 = load float, float* %14043
%14045 = load float*, float** %9
%14046 = getelementptr inbounds float, float* %14045, i64 1
%14047 = load float, float* %14046
%14048 = fsub float %14044, %14047
%14049 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %14048, float* %14049
%14050 = load float*, float** %11
%14051 = getelementptr inbounds float, float* %14050, i64 2
%14052 = load float, float* %14051
%14053 = load float*, float** %9
%14054 = getelementptr inbounds float, float* %14053, i64 2
%14055 = load float, float* %14054
%14056 = fsub float %14052, %14055
%14057 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %14056, float* %14057
%14058 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%14059 = load float, float* %14058
%14060 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%14061 = load float, float* %14060
%14062 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%14063 = load float, float* %14062
%14064 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%14065 = load float, float* %14064
%14066 = fmul float %14063, %14065
%14067 = call float @llvm.fmuladd.f32(float %14059, float %14061, float %14066)
%14068 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%14069 = load float, float* %14068
%14070 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%14071 = load float, float* %14070
%14072 = call float @llvm.fmuladd.f32(float %14069, float %14071, float %14067)
%14073 = fcmp ogt float %14072, 0.000000e+00
br i1 %14073, label %14074, label %14075
14074: ; preds = %13949
store i32 0, i32* %7
br label %37477
14075: ; preds = %13949
store i32 1, i32* %7
br label %37477
14076: ; preds = %13820
%14077 = load float*, float** %11
%14078 = getelementptr inbounds float, float* %14077, i64 0
%14079 = load float, float* %14078
%14080 = load float*, float** %8
%14081 = getelementptr inbounds float, float* %14080, i64 0
%14082 = load float, float* %14081
%14083 = fsub float %14079, %14082
%14084 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %14083, float* %14084
%14085 = load float*, float** %11
%14086 = getelementptr inbounds float, float* %14085, i64 1
%14087 = load float, float* %14086
%14088 = load float*, float** %8
%14089 = getelementptr inbounds float, float* %14088, i64 1
%14090 = load float, float* %14089
%14091 = fsub float %14087, %14090
%14092 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %14091, float* %14092
%14093 = load float*, float** %11
%14094 = getelementptr inbounds float, float* %14093, i64 2
%14095 = load float, float* %14094
%14096 = load float*, float** %8
%14097 = getelementptr inbounds float, float* %14096, i64 2
%14098 = load float, float* %14097
%14099 = fsub float %14095, %14098
%14100 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %14099, float* %14100
%14101 = load float*, float** %9
%14102 = getelementptr inbounds float, float* %14101, i64 0
%14103 = load float, float* %14102
%14104 = load float*, float** %8
%14105 = getelementptr inbounds float, float* %14104, i64 0
%14106 = load float, float* %14105
%14107 = fsub float %14103, %14106
%14108 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %14107, float* %14108
%14109 = load float*, float** %9
%14110 = getelementptr inbounds float, float* %14109, i64 1
%14111 = load float, float* %14110
%14112 = load float*, float** %8
%14113 = getelementptr inbounds float, float* %14112, i64 1
%14114 = load float, float* %14113
%14115 = fsub float %14111, %14114
%14116 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %14115, float* %14116
%14117 = load float*, float** %9
%14118 = getelementptr inbounds float, float* %14117, i64 2
%14119 = load float, float* %14118
%14120 = load float*, float** %8
%14121 = getelementptr inbounds float, float* %14120, i64 2
%14122 = load float, float* %14121
%14123 = fsub float %14119, %14122
%14124 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %14123, float* %14124
%14125 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%14126 = load float, float* %14125
%14127 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%14128 = load float, float* %14127
%14129 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%14130 = load float, float* %14129
%14131 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%14132 = load float, float* %14131
%14133 = fmul float %14130, %14132
%14134 = fneg float %14133
%14135 = call float @llvm.fmuladd.f32(float %14126, float %14128, float %14134)
%14136 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %14135, float* %14136
%14137 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%14138 = load float, float* %14137
%14139 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%14140 = load float, float* %14139
%14141 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%14142 = load float, float* %14141
%14143 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%14144 = load float, float* %14143
%14145 = fmul float %14142, %14144
%14146 = fneg float %14145
%14147 = call float @llvm.fmuladd.f32(float %14138, float %14140, float %14146)
%14148 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %14147, float* %14148
%14149 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%14150 = load float, float* %14149
%14151 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%14152 = load float, float* %14151
%14153 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%14154 = load float, float* %14153
%14155 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%14156 = load float, float* %14155
%14157 = fmul float %14154, %14156
%14158 = fneg float %14157
%14159 = call float @llvm.fmuladd.f32(float %14150, float %14152, float %14158)
%14160 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %14159, float* %14160
%14161 = load float*, float** %12
%14162 = getelementptr inbounds float, float* %14161, i64 0
%14163 = load float, float* %14162
%14164 = load float*, float** %8
%14165 = getelementptr inbounds float, float* %14164, i64 0
%14166 = load float, float* %14165
%14167 = fsub float %14163, %14166
%14168 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %14167, float* %14168
%14169 = load float*, float** %12
%14170 = getelementptr inbounds float, float* %14169, i64 1
%14171 = load float, float* %14170
%14172 = load float*, float** %8
%14173 = getelementptr inbounds float, float* %14172, i64 1
%14174 = load float, float* %14173
%14175 = fsub float %14171, %14174
%14176 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %14175, float* %14176
%14177 = load float*, float** %12
%14178 = getelementptr inbounds float, float* %14177, i64 2
%14179 = load float, float* %14178
%14180 = load float*, float** %8
%14181 = getelementptr inbounds float, float* %14180, i64 2
%14182 = load float, float* %14181
%14183 = fsub float %14179, %14182
%14184 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %14183, float* %14184
%14185 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%14186 = load float, float* %14185
%14187 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%14188 = load float, float* %14187
%14189 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%14190 = load float, float* %14189
%14191 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%14192 = load float, float* %14191
%14193 = fmul float %14190, %14192
%14194 = call float @llvm.fmuladd.f32(float %14186, float %14188, float %14193)
%14195 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%14196 = load float, float* %14195
%14197 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%14198 = load float, float* %14197
%14199 = call float @llvm.fmuladd.f32(float %14196, float %14198, float %14194)
%14200 = fcmp ogt float %14199, 0.000000e+00
br i1 %14200, label %14201, label %14202
14201: ; preds = %14076
store i32 0, i32* %7
br label %37477
14202: ; preds = %14076
%14203 = load float*, float** %11
%14204 = getelementptr inbounds float, float* %14203, i64 0
%14205 = load float, float* %14204
%14206 = load float*, float** %9
%14207 = getelementptr inbounds float, float* %14206, i64 0
%14208 = load float, float* %14207
%14209 = fsub float %14205, %14208
%14210 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %14209, float* %14210
%14211 = load float*, float** %11
%14212 = getelementptr inbounds float, float* %14211, i64 1
%14213 = load float, float* %14212
%14214 = load float*, float** %9
%14215 = getelementptr inbounds float, float* %14214, i64 1
%14216 = load float, float* %14215
%14217 = fsub float %14213, %14216
%14218 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %14217, float* %14218
%14219 = load float*, float** %11
%14220 = getelementptr inbounds float, float* %14219, i64 2
%14221 = load float, float* %14220
%14222 = load float*, float** %9
%14223 = getelementptr inbounds float, float* %14222, i64 2
%14224 = load float, float* %14223
%14225 = fsub float %14221, %14224
%14226 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %14225, float* %14226
%14227 = load float*, float** %10
%14228 = getelementptr inbounds float, float* %14227, i64 0
%14229 = load float, float* %14228
%14230 = load float*, float** %9
%14231 = getelementptr inbounds float, float* %14230, i64 0
%14232 = load float, float* %14231
%14233 = fsub float %14229, %14232
%14234 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %14233, float* %14234
%14235 = load float*, float** %10
%14236 = getelementptr inbounds float, float* %14235, i64 1
%14237 = load float, float* %14236
%14238 = load float*, float** %9
%14239 = getelementptr inbounds float, float* %14238, i64 1
%14240 = load float, float* %14239
%14241 = fsub float %14237, %14240
%14242 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %14241, float* %14242
%14243 = load float*, float** %10
%14244 = getelementptr inbounds float, float* %14243, i64 2
%14245 = load float, float* %14244
%14246 = load float*, float** %9
%14247 = getelementptr inbounds float, float* %14246, i64 2
%14248 = load float, float* %14247
%14249 = fsub float %14245, %14248
%14250 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %14249, float* %14250
%14251 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%14252 = load float, float* %14251
%14253 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%14254 = load float, float* %14253
%14255 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%14256 = load float, float* %14255
%14257 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%14258 = load float, float* %14257
%14259 = fmul float %14256, %14258
%14260 = fneg float %14259
%14261 = call float @llvm.fmuladd.f32(float %14252, float %14254, float %14260)
%14262 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %14261, float* %14262
%14263 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%14264 = load float, float* %14263
%14265 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%14266 = load float, float* %14265
%14267 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%14268 = load float, float* %14267
%14269 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%14270 = load float, float* %14269
%14271 = fmul float %14268, %14270
%14272 = fneg float %14271
%14273 = call float @llvm.fmuladd.f32(float %14264, float %14266, float %14272)
%14274 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %14273, float* %14274
%14275 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%14276 = load float, float* %14275
%14277 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%14278 = load float, float* %14277
%14279 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%14280 = load float, float* %14279
%14281 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%14282 = load float, float* %14281
%14283 = fmul float %14280, %14282
%14284 = fneg float %14283
%14285 = call float @llvm.fmuladd.f32(float %14276, float %14278, float %14284)
%14286 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %14285, float* %14286
%14287 = load float*, float** %13
%14288 = getelementptr inbounds float, float* %14287, i64 0
%14289 = load float, float* %14288
%14290 = load float*, float** %9
%14291 = getelementptr inbounds float, float* %14290, i64 0
%14292 = load float, float* %14291
%14293 = fsub float %14289, %14292
%14294 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %14293, float* %14294
%14295 = load float*, float** %13
%14296 = getelementptr inbounds float, float* %14295, i64 1
%14297 = load float, float* %14296
%14298 = load float*, float** %9
%14299 = getelementptr inbounds float, float* %14298, i64 1
%14300 = load float, float* %14299
%14301 = fsub float %14297, %14300
%14302 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %14301, float* %14302
%14303 = load float*, float** %13
%14304 = getelementptr inbounds float, float* %14303, i64 2
%14305 = load float, float* %14304
%14306 = load float*, float** %9
%14307 = getelementptr inbounds float, float* %14306, i64 2
%14308 = load float, float* %14307
%14309 = fsub float %14305, %14308
%14310 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %14309, float* %14310
%14311 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%14312 = load float, float* %14311
%14313 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%14314 = load float, float* %14313
%14315 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%14316 = load float, float* %14315
%14317 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%14318 = load float, float* %14317
%14319 = fmul float %14316, %14318
%14320 = call float @llvm.fmuladd.f32(float %14312, float %14314, float %14319)
%14321 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%14322 = load float, float* %14321
%14323 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%14324 = load float, float* %14323
%14325 = call float @llvm.fmuladd.f32(float %14322, float %14324, float %14320)
%14326 = fcmp ogt float %14325, 0.000000e+00
br i1 %14326, label %14327, label %14328
14327: ; preds = %14202
store i32 0, i32* %7
br label %37477
14328: ; preds = %14202
store i32 1, i32* %7
br label %37477
14329: ; preds = %13561
%14330 = load float, float* %18
%14331 = fcmp olt float %14330, 0.000000e+00
br i1 %14331, label %14332, label %14841
14332: ; preds = %14329
%14333 = load float, float* %19
%14334 = fcmp oge float %14333, 0.000000e+00
br i1 %14334, label %14335, label %14588
14335: ; preds = %14332
%14336 = load float*, float** %12
%14337 = getelementptr inbounds float, float* %14336, i64 0
%14338 = load float, float* %14337
%14339 = load float*, float** %8
%14340 = getelementptr inbounds float, float* %14339, i64 0
%14341 = load float, float* %14340
%14342 = fsub float %14338, %14341
%14343 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %14342, float* %14343
%14344 = load float*, float** %12
%14345 = getelementptr inbounds float, float* %14344, i64 1
%14346 = load float, float* %14345
%14347 = load float*, float** %8
%14348 = getelementptr inbounds float, float* %14347, i64 1
%14349 = load float, float* %14348
%14350 = fsub float %14346, %14349
%14351 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %14350, float* %14351
%14352 = load float*, float** %12
%14353 = getelementptr inbounds float, float* %14352, i64 2
%14354 = load float, float* %14353
%14355 = load float*, float** %8
%14356 = getelementptr inbounds float, float* %14355, i64 2
%14357 = load float, float* %14356
%14358 = fsub float %14354, %14357
%14359 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %14358, float* %14359
%14360 = load float*, float** %9
%14361 = getelementptr inbounds float, float* %14360, i64 0
%14362 = load float, float* %14361
%14363 = load float*, float** %8
%14364 = getelementptr inbounds float, float* %14363, i64 0
%14365 = load float, float* %14364
%14366 = fsub float %14362, %14365
%14367 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %14366, float* %14367
%14368 = load float*, float** %9
%14369 = getelementptr inbounds float, float* %14368, i64 1
%14370 = load float, float* %14369
%14371 = load float*, float** %8
%14372 = getelementptr inbounds float, float* %14371, i64 1
%14373 = load float, float* %14372
%14374 = fsub float %14370, %14373
%14375 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %14374, float* %14375
%14376 = load float*, float** %9
%14377 = getelementptr inbounds float, float* %14376, i64 2
%14378 = load float, float* %14377
%14379 = load float*, float** %8
%14380 = getelementptr inbounds float, float* %14379, i64 2
%14381 = load float, float* %14380
%14382 = fsub float %14378, %14381
%14383 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %14382, float* %14383
%14384 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%14385 = load float, float* %14384
%14386 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%14387 = load float, float* %14386
%14388 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%14389 = load float, float* %14388
%14390 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%14391 = load float, float* %14390
%14392 = fmul float %14389, %14391
%14393 = fneg float %14392
%14394 = call float @llvm.fmuladd.f32(float %14385, float %14387, float %14393)
%14395 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %14394, float* %14395
%14396 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%14397 = load float, float* %14396
%14398 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%14399 = load float, float* %14398
%14400 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%14401 = load float, float* %14400
%14402 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%14403 = load float, float* %14402
%14404 = fmul float %14401, %14403
%14405 = fneg float %14404
%14406 = call float @llvm.fmuladd.f32(float %14397, float %14399, float %14405)
%14407 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %14406, float* %14407
%14408 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%14409 = load float, float* %14408
%14410 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%14411 = load float, float* %14410
%14412 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%14413 = load float, float* %14412
%14414 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%14415 = load float, float* %14414
%14416 = fmul float %14413, %14415
%14417 = fneg float %14416
%14418 = call float @llvm.fmuladd.f32(float %14409, float %14411, float %14417)
%14419 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %14418, float* %14419
%14420 = load float*, float** %13
%14421 = getelementptr inbounds float, float* %14420, i64 0
%14422 = load float, float* %14421
%14423 = load float*, float** %8
%14424 = getelementptr inbounds float, float* %14423, i64 0
%14425 = load float, float* %14424
%14426 = fsub float %14422, %14425
%14427 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %14426, float* %14427
%14428 = load float*, float** %13
%14429 = getelementptr inbounds float, float* %14428, i64 1
%14430 = load float, float* %14429
%14431 = load float*, float** %8
%14432 = getelementptr inbounds float, float* %14431, i64 1
%14433 = load float, float* %14432
%14434 = fsub float %14430, %14433
%14435 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %14434, float* %14435
%14436 = load float*, float** %13
%14437 = getelementptr inbounds float, float* %14436, i64 2
%14438 = load float, float* %14437
%14439 = load float*, float** %8
%14440 = getelementptr inbounds float, float* %14439, i64 2
%14441 = load float, float* %14440
%14442 = fsub float %14438, %14441
%14443 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %14442, float* %14443
%14444 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%14445 = load float, float* %14444
%14446 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%14447 = load float, float* %14446
%14448 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%14449 = load float, float* %14448
%14450 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%14451 = load float, float* %14450
%14452 = fmul float %14449, %14451
%14453 = call float @llvm.fmuladd.f32(float %14445, float %14447, float %14452)
%14454 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%14455 = load float, float* %14454
%14456 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%14457 = load float, float* %14456
%14458 = call float @llvm.fmuladd.f32(float %14455, float %14457, float %14453)
%14459 = fcmp ogt float %14458, 0.000000e+00
br i1 %14459, label %14460, label %14461
14460: ; preds = %14335
store i32 0, i32* %7
br label %37477
14461: ; preds = %14335
%14462 = load float*, float** %12
%14463 = getelementptr inbounds float, float* %14462, i64 0
%14464 = load float, float* %14463
%14465 = load float*, float** %9
%14466 = getelementptr inbounds float, float* %14465, i64 0
%14467 = load float, float* %14466
%14468 = fsub float %14464, %14467
%14469 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %14468, float* %14469
%14470 = load float*, float** %12
%14471 = getelementptr inbounds float, float* %14470, i64 1
%14472 = load float, float* %14471
%14473 = load float*, float** %9
%14474 = getelementptr inbounds float, float* %14473, i64 1
%14475 = load float, float* %14474
%14476 = fsub float %14472, %14475
%14477 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %14476, float* %14477
%14478 = load float*, float** %12
%14479 = getelementptr inbounds float, float* %14478, i64 2
%14480 = load float, float* %14479
%14481 = load float*, float** %9
%14482 = getelementptr inbounds float, float* %14481, i64 2
%14483 = load float, float* %14482
%14484 = fsub float %14480, %14483
%14485 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %14484, float* %14485
%14486 = load float*, float** %10
%14487 = getelementptr inbounds float, float* %14486, i64 0
%14488 = load float, float* %14487
%14489 = load float*, float** %9
%14490 = getelementptr inbounds float, float* %14489, i64 0
%14491 = load float, float* %14490
%14492 = fsub float %14488, %14491
%14493 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %14492, float* %14493
%14494 = load float*, float** %10
%14495 = getelementptr inbounds float, float* %14494, i64 1
%14496 = load float, float* %14495
%14497 = load float*, float** %9
%14498 = getelementptr inbounds float, float* %14497, i64 1
%14499 = load float, float* %14498
%14500 = fsub float %14496, %14499
%14501 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %14500, float* %14501
%14502 = load float*, float** %10
%14503 = getelementptr inbounds float, float* %14502, i64 2
%14504 = load float, float* %14503
%14505 = load float*, float** %9
%14506 = getelementptr inbounds float, float* %14505, i64 2
%14507 = load float, float* %14506
%14508 = fsub float %14504, %14507
%14509 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %14508, float* %14509
%14510 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%14511 = load float, float* %14510
%14512 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%14513 = load float, float* %14512
%14514 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%14515 = load float, float* %14514
%14516 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%14517 = load float, float* %14516
%14518 = fmul float %14515, %14517
%14519 = fneg float %14518
%14520 = call float @llvm.fmuladd.f32(float %14511, float %14513, float %14519)
%14521 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %14520, float* %14521
%14522 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%14523 = load float, float* %14522
%14524 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%14525 = load float, float* %14524
%14526 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%14527 = load float, float* %14526
%14528 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%14529 = load float, float* %14528
%14530 = fmul float %14527, %14529
%14531 = fneg float %14530
%14532 = call float @llvm.fmuladd.f32(float %14523, float %14525, float %14531)
%14533 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %14532, float* %14533
%14534 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%14535 = load float, float* %14534
%14536 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%14537 = load float, float* %14536
%14538 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%14539 = load float, float* %14538
%14540 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%14541 = load float, float* %14540
%14542 = fmul float %14539, %14541
%14543 = fneg float %14542
%14544 = call float @llvm.fmuladd.f32(float %14535, float %14537, float %14543)
%14545 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %14544, float* %14545
%14546 = load float*, float** %11
%14547 = getelementptr inbounds float, float* %14546, i64 0
%14548 = load float, float* %14547
%14549 = load float*, float** %9
%14550 = getelementptr inbounds float, float* %14549, i64 0
%14551 = load float, float* %14550
%14552 = fsub float %14548, %14551
%14553 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %14552, float* %14553
%14554 = load float*, float** %11
%14555 = getelementptr inbounds float, float* %14554, i64 1
%14556 = load float, float* %14555
%14557 = load float*, float** %9
%14558 = getelementptr inbounds float, float* %14557, i64 1
%14559 = load float, float* %14558
%14560 = fsub float %14556, %14559
%14561 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %14560, float* %14561
%14562 = load float*, float** %11
%14563 = getelementptr inbounds float, float* %14562, i64 2
%14564 = load float, float* %14563
%14565 = load float*, float** %9
%14566 = getelementptr inbounds float, float* %14565, i64 2
%14567 = load float, float* %14566
%14568 = fsub float %14564, %14567
%14569 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %14568, float* %14569
%14570 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%14571 = load float, float* %14570
%14572 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%14573 = load float, float* %14572
%14574 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%14575 = load float, float* %14574
%14576 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%14577 = load float, float* %14576
%14578 = fmul float %14575, %14577
%14579 = call float @llvm.fmuladd.f32(float %14571, float %14573, float %14578)
%14580 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%14581 = load float, float* %14580
%14582 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%14583 = load float, float* %14582
%14584 = call float @llvm.fmuladd.f32(float %14581, float %14583, float %14579)
%14585 = fcmp ogt float %14584, 0.000000e+00
br i1 %14585, label %14586, label %14587
14586: ; preds = %14461
store i32 0, i32* %7
br label %37477
14587: ; preds = %14461
store i32 1, i32* %7
br label %37477
14588: ; preds = %14332
%14589 = load float*, float** %11
%14590 = getelementptr inbounds float, float* %14589, i64 0
%14591 = load float, float* %14590
%14592 = load float*, float** %10
%14593 = getelementptr inbounds float, float* %14592, i64 0
%14594 = load float, float* %14593
%14595 = fsub float %14591, %14594
%14596 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %14595, float* %14596
%14597 = load float*, float** %11
%14598 = getelementptr inbounds float, float* %14597, i64 1
%14599 = load float, float* %14598
%14600 = load float*, float** %10
%14601 = getelementptr inbounds float, float* %14600, i64 1
%14602 = load float, float* %14601
%14603 = fsub float %14599, %14602
%14604 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %14603, float* %14604
%14605 = load float*, float** %11
%14606 = getelementptr inbounds float, float* %14605, i64 2
%14607 = load float, float* %14606
%14608 = load float*, float** %10
%14609 = getelementptr inbounds float, float* %14608, i64 2
%14610 = load float, float* %14609
%14611 = fsub float %14607, %14610
%14612 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %14611, float* %14612
%14613 = load float*, float** %9
%14614 = getelementptr inbounds float, float* %14613, i64 0
%14615 = load float, float* %14614
%14616 = load float*, float** %10
%14617 = getelementptr inbounds float, float* %14616, i64 0
%14618 = load float, float* %14617
%14619 = fsub float %14615, %14618
%14620 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %14619, float* %14620
%14621 = load float*, float** %9
%14622 = getelementptr inbounds float, float* %14621, i64 1
%14623 = load float, float* %14622
%14624 = load float*, float** %10
%14625 = getelementptr inbounds float, float* %14624, i64 1
%14626 = load float, float* %14625
%14627 = fsub float %14623, %14626
%14628 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %14627, float* %14628
%14629 = load float*, float** %9
%14630 = getelementptr inbounds float, float* %14629, i64 2
%14631 = load float, float* %14630
%14632 = load float*, float** %10
%14633 = getelementptr inbounds float, float* %14632, i64 2
%14634 = load float, float* %14633
%14635 = fsub float %14631, %14634
%14636 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %14635, float* %14636
%14637 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%14638 = load float, float* %14637
%14639 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%14640 = load float, float* %14639
%14641 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%14642 = load float, float* %14641
%14643 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%14644 = load float, float* %14643
%14645 = fmul float %14642, %14644
%14646 = fneg float %14645
%14647 = call float @llvm.fmuladd.f32(float %14638, float %14640, float %14646)
%14648 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %14647, float* %14648
%14649 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%14650 = load float, float* %14649
%14651 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%14652 = load float, float* %14651
%14653 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%14654 = load float, float* %14653
%14655 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%14656 = load float, float* %14655
%14657 = fmul float %14654, %14656
%14658 = fneg float %14657
%14659 = call float @llvm.fmuladd.f32(float %14650, float %14652, float %14658)
%14660 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %14659, float* %14660
%14661 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%14662 = load float, float* %14661
%14663 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%14664 = load float, float* %14663
%14665 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%14666 = load float, float* %14665
%14667 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%14668 = load float, float* %14667
%14669 = fmul float %14666, %14668
%14670 = fneg float %14669
%14671 = call float @llvm.fmuladd.f32(float %14662, float %14664, float %14670)
%14672 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %14671, float* %14672
%14673 = load float*, float** %12
%14674 = getelementptr inbounds float, float* %14673, i64 0
%14675 = load float, float* %14674
%14676 = load float*, float** %10
%14677 = getelementptr inbounds float, float* %14676, i64 0
%14678 = load float, float* %14677
%14679 = fsub float %14675, %14678
%14680 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %14679, float* %14680
%14681 = load float*, float** %12
%14682 = getelementptr inbounds float, float* %14681, i64 1
%14683 = load float, float* %14682
%14684 = load float*, float** %10
%14685 = getelementptr inbounds float, float* %14684, i64 1
%14686 = load float, float* %14685
%14687 = fsub float %14683, %14686
%14688 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %14687, float* %14688
%14689 = load float*, float** %12
%14690 = getelementptr inbounds float, float* %14689, i64 2
%14691 = load float, float* %14690
%14692 = load float*, float** %10
%14693 = getelementptr inbounds float, float* %14692, i64 2
%14694 = load float, float* %14693
%14695 = fsub float %14691, %14694
%14696 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %14695, float* %14696
%14697 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%14698 = load float, float* %14697
%14699 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%14700 = load float, float* %14699
%14701 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%14702 = load float, float* %14701
%14703 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%14704 = load float, float* %14703
%14705 = fmul float %14702, %14704
%14706 = call float @llvm.fmuladd.f32(float %14698, float %14700, float %14705)
%14707 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%14708 = load float, float* %14707
%14709 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%14710 = load float, float* %14709
%14711 = call float @llvm.fmuladd.f32(float %14708, float %14710, float %14706)
%14712 = fcmp ogt float %14711, 0.000000e+00
br i1 %14712, label %14713, label %14714
14713: ; preds = %14588
store i32 0, i32* %7
br label %37477
14714: ; preds = %14588
%14715 = load float*, float** %11
%14716 = getelementptr inbounds float, float* %14715, i64 0
%14717 = load float, float* %14716
%14718 = load float*, float** %9
%14719 = getelementptr inbounds float, float* %14718, i64 0
%14720 = load float, float* %14719
%14721 = fsub float %14717, %14720
%14722 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %14721, float* %14722
%14723 = load float*, float** %11
%14724 = getelementptr inbounds float, float* %14723, i64 1
%14725 = load float, float* %14724
%14726 = load float*, float** %9
%14727 = getelementptr inbounds float, float* %14726, i64 1
%14728 = load float, float* %14727
%14729 = fsub float %14725, %14728
%14730 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %14729, float* %14730
%14731 = load float*, float** %11
%14732 = getelementptr inbounds float, float* %14731, i64 2
%14733 = load float, float* %14732
%14734 = load float*, float** %9
%14735 = getelementptr inbounds float, float* %14734, i64 2
%14736 = load float, float* %14735
%14737 = fsub float %14733, %14736
%14738 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %14737, float* %14738
%14739 = load float*, float** %8
%14740 = getelementptr inbounds float, float* %14739, i64 0
%14741 = load float, float* %14740
%14742 = load float*, float** %9
%14743 = getelementptr inbounds float, float* %14742, i64 0
%14744 = load float, float* %14743
%14745 = fsub float %14741, %14744
%14746 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %14745, float* %14746
%14747 = load float*, float** %8
%14748 = getelementptr inbounds float, float* %14747, i64 1
%14749 = load float, float* %14748
%14750 = load float*, float** %9
%14751 = getelementptr inbounds float, float* %14750, i64 1
%14752 = load float, float* %14751
%14753 = fsub float %14749, %14752
%14754 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %14753, float* %14754
%14755 = load float*, float** %8
%14756 = getelementptr inbounds float, float* %14755, i64 2
%14757 = load float, float* %14756
%14758 = load float*, float** %9
%14759 = getelementptr inbounds float, float* %14758, i64 2
%14760 = load float, float* %14759
%14761 = fsub float %14757, %14760
%14762 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %14761, float* %14762
%14763 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%14764 = load float, float* %14763
%14765 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%14766 = load float, float* %14765
%14767 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%14768 = load float, float* %14767
%14769 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%14770 = load float, float* %14769
%14771 = fmul float %14768, %14770
%14772 = fneg float %14771
%14773 = call float @llvm.fmuladd.f32(float %14764, float %14766, float %14772)
%14774 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %14773, float* %14774
%14775 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%14776 = load float, float* %14775
%14777 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%14778 = load float, float* %14777
%14779 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%14780 = load float, float* %14779
%14781 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%14782 = load float, float* %14781
%14783 = fmul float %14780, %14782
%14784 = fneg float %14783
%14785 = call float @llvm.fmuladd.f32(float %14776, float %14778, float %14784)
%14786 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %14785, float* %14786
%14787 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%14788 = load float, float* %14787
%14789 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%14790 = load float, float* %14789
%14791 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%14792 = load float, float* %14791
%14793 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%14794 = load float, float* %14793
%14795 = fmul float %14792, %14794
%14796 = fneg float %14795
%14797 = call float @llvm.fmuladd.f32(float %14788, float %14790, float %14796)
%14798 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %14797, float* %14798
%14799 = load float*, float** %13
%14800 = getelementptr inbounds float, float* %14799, i64 0
%14801 = load float, float* %14800
%14802 = load float*, float** %9
%14803 = getelementptr inbounds float, float* %14802, i64 0
%14804 = load float, float* %14803
%14805 = fsub float %14801, %14804
%14806 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %14805, float* %14806
%14807 = load float*, float** %13
%14808 = getelementptr inbounds float, float* %14807, i64 1
%14809 = load float, float* %14808
%14810 = load float*, float** %9
%14811 = getelementptr inbounds float, float* %14810, i64 1
%14812 = load float, float* %14811
%14813 = fsub float %14809, %14812
%14814 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %14813, float* %14814
%14815 = load float*, float** %13
%14816 = getelementptr inbounds float, float* %14815, i64 2
%14817 = load float, float* %14816
%14818 = load float*, float** %9
%14819 = getelementptr inbounds float, float* %14818, i64 2
%14820 = load float, float* %14819
%14821 = fsub float %14817, %14820
%14822 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %14821, float* %14822
%14823 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%14824 = load float, float* %14823
%14825 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%14826 = load float, float* %14825
%14827 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%14828 = load float, float* %14827
%14829 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%14830 = load float, float* %14829
%14831 = fmul float %14828, %14830
%14832 = call float @llvm.fmuladd.f32(float %14824, float %14826, float %14831)
%14833 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%14834 = load float, float* %14833
%14835 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%14836 = load float, float* %14835
%14837 = call float @llvm.fmuladd.f32(float %14834, float %14836, float %14832)
%14838 = fcmp ogt float %14837, 0.000000e+00
br i1 %14838, label %14839, label %14840
14839: ; preds = %14714
store i32 0, i32* %7
br label %37477
14840: ; preds = %14714
store i32 1, i32* %7
br label %37477
14841: ; preds = %14329
%14842 = load float, float* %18
%14843 = fcmp ogt float %14842, 0.000000e+00
br i1 %14843, label %14844, label %15353
14844: ; preds = %14841
%14845 = load float, float* %19
%14846 = fcmp ogt float %14845, 0.000000e+00
br i1 %14846, label %14847, label %15100
14847: ; preds = %14844
%14848 = load float*, float** %11
%14849 = getelementptr inbounds float, float* %14848, i64 0
%14850 = load float, float* %14849
%14851 = load float*, float** %8
%14852 = getelementptr inbounds float, float* %14851, i64 0
%14853 = load float, float* %14852
%14854 = fsub float %14850, %14853
%14855 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %14854, float* %14855
%14856 = load float*, float** %11
%14857 = getelementptr inbounds float, float* %14856, i64 1
%14858 = load float, float* %14857
%14859 = load float*, float** %8
%14860 = getelementptr inbounds float, float* %14859, i64 1
%14861 = load float, float* %14860
%14862 = fsub float %14858, %14861
%14863 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %14862, float* %14863
%14864 = load float*, float** %11
%14865 = getelementptr inbounds float, float* %14864, i64 2
%14866 = load float, float* %14865
%14867 = load float*, float** %8
%14868 = getelementptr inbounds float, float* %14867, i64 2
%14869 = load float, float* %14868
%14870 = fsub float %14866, %14869
%14871 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %14870, float* %14871
%14872 = load float*, float** %9
%14873 = getelementptr inbounds float, float* %14872, i64 0
%14874 = load float, float* %14873
%14875 = load float*, float** %8
%14876 = getelementptr inbounds float, float* %14875, i64 0
%14877 = load float, float* %14876
%14878 = fsub float %14874, %14877
%14879 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %14878, float* %14879
%14880 = load float*, float** %9
%14881 = getelementptr inbounds float, float* %14880, i64 1
%14882 = load float, float* %14881
%14883 = load float*, float** %8
%14884 = getelementptr inbounds float, float* %14883, i64 1
%14885 = load float, float* %14884
%14886 = fsub float %14882, %14885
%14887 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %14886, float* %14887
%14888 = load float*, float** %9
%14889 = getelementptr inbounds float, float* %14888, i64 2
%14890 = load float, float* %14889
%14891 = load float*, float** %8
%14892 = getelementptr inbounds float, float* %14891, i64 2
%14893 = load float, float* %14892
%14894 = fsub float %14890, %14893
%14895 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %14894, float* %14895
%14896 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%14897 = load float, float* %14896
%14898 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%14899 = load float, float* %14898
%14900 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%14901 = load float, float* %14900
%14902 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%14903 = load float, float* %14902
%14904 = fmul float %14901, %14903
%14905 = fneg float %14904
%14906 = call float @llvm.fmuladd.f32(float %14897, float %14899, float %14905)
%14907 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %14906, float* %14907
%14908 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%14909 = load float, float* %14908
%14910 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%14911 = load float, float* %14910
%14912 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%14913 = load float, float* %14912
%14914 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%14915 = load float, float* %14914
%14916 = fmul float %14913, %14915
%14917 = fneg float %14916
%14918 = call float @llvm.fmuladd.f32(float %14909, float %14911, float %14917)
%14919 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %14918, float* %14919
%14920 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%14921 = load float, float* %14920
%14922 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%14923 = load float, float* %14922
%14924 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%14925 = load float, float* %14924
%14926 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%14927 = load float, float* %14926
%14928 = fmul float %14925, %14927
%14929 = fneg float %14928
%14930 = call float @llvm.fmuladd.f32(float %14921, float %14923, float %14929)
%14931 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %14930, float* %14931
%14932 = load float*, float** %12
%14933 = getelementptr inbounds float, float* %14932, i64 0
%14934 = load float, float* %14933
%14935 = load float*, float** %8
%14936 = getelementptr inbounds float, float* %14935, i64 0
%14937 = load float, float* %14936
%14938 = fsub float %14934, %14937
%14939 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %14938, float* %14939
%14940 = load float*, float** %12
%14941 = getelementptr inbounds float, float* %14940, i64 1
%14942 = load float, float* %14941
%14943 = load float*, float** %8
%14944 = getelementptr inbounds float, float* %14943, i64 1
%14945 = load float, float* %14944
%14946 = fsub float %14942, %14945
%14947 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %14946, float* %14947
%14948 = load float*, float** %12
%14949 = getelementptr inbounds float, float* %14948, i64 2
%14950 = load float, float* %14949
%14951 = load float*, float** %8
%14952 = getelementptr inbounds float, float* %14951, i64 2
%14953 = load float, float* %14952
%14954 = fsub float %14950, %14953
%14955 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %14954, float* %14955
%14956 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%14957 = load float, float* %14956
%14958 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%14959 = load float, float* %14958
%14960 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%14961 = load float, float* %14960
%14962 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%14963 = load float, float* %14962
%14964 = fmul float %14961, %14963
%14965 = call float @llvm.fmuladd.f32(float %14957, float %14959, float %14964)
%14966 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%14967 = load float, float* %14966
%14968 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%14969 = load float, float* %14968
%14970 = call float @llvm.fmuladd.f32(float %14967, float %14969, float %14965)
%14971 = fcmp ogt float %14970, 0.000000e+00
br i1 %14971, label %14972, label %14973
14972: ; preds = %14847
store i32 0, i32* %7
br label %37477
14973: ; preds = %14847
%14974 = load float*, float** %11
%14975 = getelementptr inbounds float, float* %14974, i64 0
%14976 = load float, float* %14975
%14977 = load float*, float** %9
%14978 = getelementptr inbounds float, float* %14977, i64 0
%14979 = load float, float* %14978
%14980 = fsub float %14976, %14979
%14981 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %14980, float* %14981
%14982 = load float*, float** %11
%14983 = getelementptr inbounds float, float* %14982, i64 1
%14984 = load float, float* %14983
%14985 = load float*, float** %9
%14986 = getelementptr inbounds float, float* %14985, i64 1
%14987 = load float, float* %14986
%14988 = fsub float %14984, %14987
%14989 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %14988, float* %14989
%14990 = load float*, float** %11
%14991 = getelementptr inbounds float, float* %14990, i64 2
%14992 = load float, float* %14991
%14993 = load float*, float** %9
%14994 = getelementptr inbounds float, float* %14993, i64 2
%14995 = load float, float* %14994
%14996 = fsub float %14992, %14995
%14997 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %14996, float* %14997
%14998 = load float*, float** %10
%14999 = getelementptr inbounds float, float* %14998, i64 0
%15000 = load float, float* %14999
%15001 = load float*, float** %9
%15002 = getelementptr inbounds float, float* %15001, i64 0
%15003 = load float, float* %15002
%15004 = fsub float %15000, %15003
%15005 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %15004, float* %15005
%15006 = load float*, float** %10
%15007 = getelementptr inbounds float, float* %15006, i64 1
%15008 = load float, float* %15007
%15009 = load float*, float** %9
%15010 = getelementptr inbounds float, float* %15009, i64 1
%15011 = load float, float* %15010
%15012 = fsub float %15008, %15011
%15013 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %15012, float* %15013
%15014 = load float*, float** %10
%15015 = getelementptr inbounds float, float* %15014, i64 2
%15016 = load float, float* %15015
%15017 = load float*, float** %9
%15018 = getelementptr inbounds float, float* %15017, i64 2
%15019 = load float, float* %15018
%15020 = fsub float %15016, %15019
%15021 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %15020, float* %15021
%15022 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%15023 = load float, float* %15022
%15024 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%15025 = load float, float* %15024
%15026 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%15027 = load float, float* %15026
%15028 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%15029 = load float, float* %15028
%15030 = fmul float %15027, %15029
%15031 = fneg float %15030
%15032 = call float @llvm.fmuladd.f32(float %15023, float %15025, float %15031)
%15033 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %15032, float* %15033
%15034 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%15035 = load float, float* %15034
%15036 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%15037 = load float, float* %15036
%15038 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%15039 = load float, float* %15038
%15040 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%15041 = load float, float* %15040
%15042 = fmul float %15039, %15041
%15043 = fneg float %15042
%15044 = call float @llvm.fmuladd.f32(float %15035, float %15037, float %15043)
%15045 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %15044, float* %15045
%15046 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%15047 = load float, float* %15046
%15048 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%15049 = load float, float* %15048
%15050 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%15051 = load float, float* %15050
%15052 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%15053 = load float, float* %15052
%15054 = fmul float %15051, %15053
%15055 = fneg float %15054
%15056 = call float @llvm.fmuladd.f32(float %15047, float %15049, float %15055)
%15057 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %15056, float* %15057
%15058 = load float*, float** %13
%15059 = getelementptr inbounds float, float* %15058, i64 0
%15060 = load float, float* %15059
%15061 = load float*, float** %9
%15062 = getelementptr inbounds float, float* %15061, i64 0
%15063 = load float, float* %15062
%15064 = fsub float %15060, %15063
%15065 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %15064, float* %15065
%15066 = load float*, float** %13
%15067 = getelementptr inbounds float, float* %15066, i64 1
%15068 = load float, float* %15067
%15069 = load float*, float** %9
%15070 = getelementptr inbounds float, float* %15069, i64 1
%15071 = load float, float* %15070
%15072 = fsub float %15068, %15071
%15073 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %15072, float* %15073
%15074 = load float*, float** %13
%15075 = getelementptr inbounds float, float* %15074, i64 2
%15076 = load float, float* %15075
%15077 = load float*, float** %9
%15078 = getelementptr inbounds float, float* %15077, i64 2
%15079 = load float, float* %15078
%15080 = fsub float %15076, %15079
%15081 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %15080, float* %15081
%15082 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%15083 = load float, float* %15082
%15084 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%15085 = load float, float* %15084
%15086 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%15087 = load float, float* %15086
%15088 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%15089 = load float, float* %15088
%15090 = fmul float %15087, %15089
%15091 = call float @llvm.fmuladd.f32(float %15083, float %15085, float %15090)
%15092 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%15093 = load float, float* %15092
%15094 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%15095 = load float, float* %15094
%15096 = call float @llvm.fmuladd.f32(float %15093, float %15095, float %15091)
%15097 = fcmp ogt float %15096, 0.000000e+00
br i1 %15097, label %15098, label %15099
15098: ; preds = %14973
store i32 0, i32* %7
br label %37477
15099: ; preds = %14973
store i32 1, i32* %7
br label %37477
15100: ; preds = %14844
%15101 = load float*, float** %12
%15102 = getelementptr inbounds float, float* %15101, i64 0
%15103 = load float, float* %15102
%15104 = load float*, float** %10
%15105 = getelementptr inbounds float, float* %15104, i64 0
%15106 = load float, float* %15105
%15107 = fsub float %15103, %15106
%15108 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %15107, float* %15108
%15109 = load float*, float** %12
%15110 = getelementptr inbounds float, float* %15109, i64 1
%15111 = load float, float* %15110
%15112 = load float*, float** %10
%15113 = getelementptr inbounds float, float* %15112, i64 1
%15114 = load float, float* %15113
%15115 = fsub float %15111, %15114
%15116 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %15115, float* %15116
%15117 = load float*, float** %12
%15118 = getelementptr inbounds float, float* %15117, i64 2
%15119 = load float, float* %15118
%15120 = load float*, float** %10
%15121 = getelementptr inbounds float, float* %15120, i64 2
%15122 = load float, float* %15121
%15123 = fsub float %15119, %15122
%15124 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %15123, float* %15124
%15125 = load float*, float** %9
%15126 = getelementptr inbounds float, float* %15125, i64 0
%15127 = load float, float* %15126
%15128 = load float*, float** %10
%15129 = getelementptr inbounds float, float* %15128, i64 0
%15130 = load float, float* %15129
%15131 = fsub float %15127, %15130
%15132 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %15131, float* %15132
%15133 = load float*, float** %9
%15134 = getelementptr inbounds float, float* %15133, i64 1
%15135 = load float, float* %15134
%15136 = load float*, float** %10
%15137 = getelementptr inbounds float, float* %15136, i64 1
%15138 = load float, float* %15137
%15139 = fsub float %15135, %15138
%15140 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %15139, float* %15140
%15141 = load float*, float** %9
%15142 = getelementptr inbounds float, float* %15141, i64 2
%15143 = load float, float* %15142
%15144 = load float*, float** %10
%15145 = getelementptr inbounds float, float* %15144, i64 2
%15146 = load float, float* %15145
%15147 = fsub float %15143, %15146
%15148 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %15147, float* %15148
%15149 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%15150 = load float, float* %15149
%15151 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%15152 = load float, float* %15151
%15153 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%15154 = load float, float* %15153
%15155 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%15156 = load float, float* %15155
%15157 = fmul float %15154, %15156
%15158 = fneg float %15157
%15159 = call float @llvm.fmuladd.f32(float %15150, float %15152, float %15158)
%15160 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %15159, float* %15160
%15161 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%15162 = load float, float* %15161
%15163 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%15164 = load float, float* %15163
%15165 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%15166 = load float, float* %15165
%15167 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%15168 = load float, float* %15167
%15169 = fmul float %15166, %15168
%15170 = fneg float %15169
%15171 = call float @llvm.fmuladd.f32(float %15162, float %15164, float %15170)
%15172 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %15171, float* %15172
%15173 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%15174 = load float, float* %15173
%15175 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%15176 = load float, float* %15175
%15177 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%15178 = load float, float* %15177
%15179 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%15180 = load float, float* %15179
%15181 = fmul float %15178, %15180
%15182 = fneg float %15181
%15183 = call float @llvm.fmuladd.f32(float %15174, float %15176, float %15182)
%15184 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %15183, float* %15184
%15185 = load float*, float** %13
%15186 = getelementptr inbounds float, float* %15185, i64 0
%15187 = load float, float* %15186
%15188 = load float*, float** %10
%15189 = getelementptr inbounds float, float* %15188, i64 0
%15190 = load float, float* %15189
%15191 = fsub float %15187, %15190
%15192 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %15191, float* %15192
%15193 = load float*, float** %13
%15194 = getelementptr inbounds float, float* %15193, i64 1
%15195 = load float, float* %15194
%15196 = load float*, float** %10
%15197 = getelementptr inbounds float, float* %15196, i64 1
%15198 = load float, float* %15197
%15199 = fsub float %15195, %15198
%15200 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %15199, float* %15200
%15201 = load float*, float** %13
%15202 = getelementptr inbounds float, float* %15201, i64 2
%15203 = load float, float* %15202
%15204 = load float*, float** %10
%15205 = getelementptr inbounds float, float* %15204, i64 2
%15206 = load float, float* %15205
%15207 = fsub float %15203, %15206
%15208 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %15207, float* %15208
%15209 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%15210 = load float, float* %15209
%15211 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%15212 = load float, float* %15211
%15213 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%15214 = load float, float* %15213
%15215 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%15216 = load float, float* %15215
%15217 = fmul float %15214, %15216
%15218 = call float @llvm.fmuladd.f32(float %15210, float %15212, float %15217)
%15219 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%15220 = load float, float* %15219
%15221 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%15222 = load float, float* %15221
%15223 = call float @llvm.fmuladd.f32(float %15220, float %15222, float %15218)
%15224 = fcmp ogt float %15223, 0.000000e+00
br i1 %15224, label %15225, label %15226
15225: ; preds = %15100
store i32 0, i32* %7
br label %37477
15226: ; preds = %15100
%15227 = load float*, float** %12
%15228 = getelementptr inbounds float, float* %15227, i64 0
%15229 = load float, float* %15228
%15230 = load float*, float** %9
%15231 = getelementptr inbounds float, float* %15230, i64 0
%15232 = load float, float* %15231
%15233 = fsub float %15229, %15232
%15234 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %15233, float* %15234
%15235 = load float*, float** %12
%15236 = getelementptr inbounds float, float* %15235, i64 1
%15237 = load float, float* %15236
%15238 = load float*, float** %9
%15239 = getelementptr inbounds float, float* %15238, i64 1
%15240 = load float, float* %15239
%15241 = fsub float %15237, %15240
%15242 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %15241, float* %15242
%15243 = load float*, float** %12
%15244 = getelementptr inbounds float, float* %15243, i64 2
%15245 = load float, float* %15244
%15246 = load float*, float** %9
%15247 = getelementptr inbounds float, float* %15246, i64 2
%15248 = load float, float* %15247
%15249 = fsub float %15245, %15248
%15250 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %15249, float* %15250
%15251 = load float*, float** %8
%15252 = getelementptr inbounds float, float* %15251, i64 0
%15253 = load float, float* %15252
%15254 = load float*, float** %9
%15255 = getelementptr inbounds float, float* %15254, i64 0
%15256 = load float, float* %15255
%15257 = fsub float %15253, %15256
%15258 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %15257, float* %15258
%15259 = load float*, float** %8
%15260 = getelementptr inbounds float, float* %15259, i64 1
%15261 = load float, float* %15260
%15262 = load float*, float** %9
%15263 = getelementptr inbounds float, float* %15262, i64 1
%15264 = load float, float* %15263
%15265 = fsub float %15261, %15264
%15266 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %15265, float* %15266
%15267 = load float*, float** %8
%15268 = getelementptr inbounds float, float* %15267, i64 2
%15269 = load float, float* %15268
%15270 = load float*, float** %9
%15271 = getelementptr inbounds float, float* %15270, i64 2
%15272 = load float, float* %15271
%15273 = fsub float %15269, %15272
%15274 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %15273, float* %15274
%15275 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%15276 = load float, float* %15275
%15277 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%15278 = load float, float* %15277
%15279 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%15280 = load float, float* %15279
%15281 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%15282 = load float, float* %15281
%15283 = fmul float %15280, %15282
%15284 = fneg float %15283
%15285 = call float @llvm.fmuladd.f32(float %15276, float %15278, float %15284)
%15286 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %15285, float* %15286
%15287 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%15288 = load float, float* %15287
%15289 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%15290 = load float, float* %15289
%15291 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%15292 = load float, float* %15291
%15293 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%15294 = load float, float* %15293
%15295 = fmul float %15292, %15294
%15296 = fneg float %15295
%15297 = call float @llvm.fmuladd.f32(float %15288, float %15290, float %15296)
%15298 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %15297, float* %15298
%15299 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%15300 = load float, float* %15299
%15301 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%15302 = load float, float* %15301
%15303 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%15304 = load float, float* %15303
%15305 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%15306 = load float, float* %15305
%15307 = fmul float %15304, %15306
%15308 = fneg float %15307
%15309 = call float @llvm.fmuladd.f32(float %15300, float %15302, float %15308)
%15310 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %15309, float* %15310
%15311 = load float*, float** %11
%15312 = getelementptr inbounds float, float* %15311, i64 0
%15313 = load float, float* %15312
%15314 = load float*, float** %9
%15315 = getelementptr inbounds float, float* %15314, i64 0
%15316 = load float, float* %15315
%15317 = fsub float %15313, %15316
%15318 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %15317, float* %15318
%15319 = load float*, float** %11
%15320 = getelementptr inbounds float, float* %15319, i64 1
%15321 = load float, float* %15320
%15322 = load float*, float** %9
%15323 = getelementptr inbounds float, float* %15322, i64 1
%15324 = load float, float* %15323
%15325 = fsub float %15321, %15324
%15326 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %15325, float* %15326
%15327 = load float*, float** %11
%15328 = getelementptr inbounds float, float* %15327, i64 2
%15329 = load float, float* %15328
%15330 = load float*, float** %9
%15331 = getelementptr inbounds float, float* %15330, i64 2
%15332 = load float, float* %15331
%15333 = fsub float %15329, %15332
%15334 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %15333, float* %15334
%15335 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%15336 = load float, float* %15335
%15337 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%15338 = load float, float* %15337
%15339 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%15340 = load float, float* %15339
%15341 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%15342 = load float, float* %15341
%15343 = fmul float %15340, %15342
%15344 = call float @llvm.fmuladd.f32(float %15336, float %15338, float %15343)
%15345 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%15346 = load float, float* %15345
%15347 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%15348 = load float, float* %15347
%15349 = call float @llvm.fmuladd.f32(float %15346, float %15348, float %15344)
%15350 = fcmp ogt float %15349, 0.000000e+00
br i1 %15350, label %15351, label %15352
15351: ; preds = %15226
store i32 0, i32* %7
br label %37477
15352: ; preds = %15226
store i32 1, i32* %7
br label %37477
15353: ; preds = %14841
%15354 = load float, float* %19
%15355 = fcmp ogt float %15354, 0.000000e+00
br i1 %15355, label %15356, label %15609
15356: ; preds = %15353
%15357 = load float*, float** %13
%15358 = getelementptr inbounds float, float* %15357, i64 0
%15359 = load float, float* %15358
%15360 = load float*, float** %10
%15361 = getelementptr inbounds float, float* %15360, i64 0
%15362 = load float, float* %15361
%15363 = fsub float %15359, %15362
%15364 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %15363, float* %15364
%15365 = load float*, float** %13
%15366 = getelementptr inbounds float, float* %15365, i64 1
%15367 = load float, float* %15366
%15368 = load float*, float** %10
%15369 = getelementptr inbounds float, float* %15368, i64 1
%15370 = load float, float* %15369
%15371 = fsub float %15367, %15370
%15372 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %15371, float* %15372
%15373 = load float*, float** %13
%15374 = getelementptr inbounds float, float* %15373, i64 2
%15375 = load float, float* %15374
%15376 = load float*, float** %10
%15377 = getelementptr inbounds float, float* %15376, i64 2
%15378 = load float, float* %15377
%15379 = fsub float %15375, %15378
%15380 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %15379, float* %15380
%15381 = load float*, float** %9
%15382 = getelementptr inbounds float, float* %15381, i64 0
%15383 = load float, float* %15382
%15384 = load float*, float** %10
%15385 = getelementptr inbounds float, float* %15384, i64 0
%15386 = load float, float* %15385
%15387 = fsub float %15383, %15386
%15388 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %15387, float* %15388
%15389 = load float*, float** %9
%15390 = getelementptr inbounds float, float* %15389, i64 1
%15391 = load float, float* %15390
%15392 = load float*, float** %10
%15393 = getelementptr inbounds float, float* %15392, i64 1
%15394 = load float, float* %15393
%15395 = fsub float %15391, %15394
%15396 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %15395, float* %15396
%15397 = load float*, float** %9
%15398 = getelementptr inbounds float, float* %15397, i64 2
%15399 = load float, float* %15398
%15400 = load float*, float** %10
%15401 = getelementptr inbounds float, float* %15400, i64 2
%15402 = load float, float* %15401
%15403 = fsub float %15399, %15402
%15404 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %15403, float* %15404
%15405 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%15406 = load float, float* %15405
%15407 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%15408 = load float, float* %15407
%15409 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%15410 = load float, float* %15409
%15411 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%15412 = load float, float* %15411
%15413 = fmul float %15410, %15412
%15414 = fneg float %15413
%15415 = call float @llvm.fmuladd.f32(float %15406, float %15408, float %15414)
%15416 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %15415, float* %15416
%15417 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%15418 = load float, float* %15417
%15419 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%15420 = load float, float* %15419
%15421 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%15422 = load float, float* %15421
%15423 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%15424 = load float, float* %15423
%15425 = fmul float %15422, %15424
%15426 = fneg float %15425
%15427 = call float @llvm.fmuladd.f32(float %15418, float %15420, float %15426)
%15428 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %15427, float* %15428
%15429 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%15430 = load float, float* %15429
%15431 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%15432 = load float, float* %15431
%15433 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%15434 = load float, float* %15433
%15435 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%15436 = load float, float* %15435
%15437 = fmul float %15434, %15436
%15438 = fneg float %15437
%15439 = call float @llvm.fmuladd.f32(float %15430, float %15432, float %15438)
%15440 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %15439, float* %15440
%15441 = load float*, float** %11
%15442 = getelementptr inbounds float, float* %15441, i64 0
%15443 = load float, float* %15442
%15444 = load float*, float** %10
%15445 = getelementptr inbounds float, float* %15444, i64 0
%15446 = load float, float* %15445
%15447 = fsub float %15443, %15446
%15448 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %15447, float* %15448
%15449 = load float*, float** %11
%15450 = getelementptr inbounds float, float* %15449, i64 1
%15451 = load float, float* %15450
%15452 = load float*, float** %10
%15453 = getelementptr inbounds float, float* %15452, i64 1
%15454 = load float, float* %15453
%15455 = fsub float %15451, %15454
%15456 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %15455, float* %15456
%15457 = load float*, float** %11
%15458 = getelementptr inbounds float, float* %15457, i64 2
%15459 = load float, float* %15458
%15460 = load float*, float** %10
%15461 = getelementptr inbounds float, float* %15460, i64 2
%15462 = load float, float* %15461
%15463 = fsub float %15459, %15462
%15464 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %15463, float* %15464
%15465 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%15466 = load float, float* %15465
%15467 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%15468 = load float, float* %15467
%15469 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%15470 = load float, float* %15469
%15471 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%15472 = load float, float* %15471
%15473 = fmul float %15470, %15472
%15474 = call float @llvm.fmuladd.f32(float %15466, float %15468, float %15473)
%15475 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%15476 = load float, float* %15475
%15477 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%15478 = load float, float* %15477
%15479 = call float @llvm.fmuladd.f32(float %15476, float %15478, float %15474)
%15480 = fcmp ogt float %15479, 0.000000e+00
br i1 %15480, label %15481, label %15482
15481: ; preds = %15356
store i32 0, i32* %7
br label %37477
15482: ; preds = %15356
%15483 = load float*, float** %13
%15484 = getelementptr inbounds float, float* %15483, i64 0
%15485 = load float, float* %15484
%15486 = load float*, float** %9
%15487 = getelementptr inbounds float, float* %15486, i64 0
%15488 = load float, float* %15487
%15489 = fsub float %15485, %15488
%15490 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %15489, float* %15490
%15491 = load float*, float** %13
%15492 = getelementptr inbounds float, float* %15491, i64 1
%15493 = load float, float* %15492
%15494 = load float*, float** %9
%15495 = getelementptr inbounds float, float* %15494, i64 1
%15496 = load float, float* %15495
%15497 = fsub float %15493, %15496
%15498 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %15497, float* %15498
%15499 = load float*, float** %13
%15500 = getelementptr inbounds float, float* %15499, i64 2
%15501 = load float, float* %15500
%15502 = load float*, float** %9
%15503 = getelementptr inbounds float, float* %15502, i64 2
%15504 = load float, float* %15503
%15505 = fsub float %15501, %15504
%15506 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %15505, float* %15506
%15507 = load float*, float** %8
%15508 = getelementptr inbounds float, float* %15507, i64 0
%15509 = load float, float* %15508
%15510 = load float*, float** %9
%15511 = getelementptr inbounds float, float* %15510, i64 0
%15512 = load float, float* %15511
%15513 = fsub float %15509, %15512
%15514 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %15513, float* %15514
%15515 = load float*, float** %8
%15516 = getelementptr inbounds float, float* %15515, i64 1
%15517 = load float, float* %15516
%15518 = load float*, float** %9
%15519 = getelementptr inbounds float, float* %15518, i64 1
%15520 = load float, float* %15519
%15521 = fsub float %15517, %15520
%15522 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %15521, float* %15522
%15523 = load float*, float** %8
%15524 = getelementptr inbounds float, float* %15523, i64 2
%15525 = load float, float* %15524
%15526 = load float*, float** %9
%15527 = getelementptr inbounds float, float* %15526, i64 2
%15528 = load float, float* %15527
%15529 = fsub float %15525, %15528
%15530 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %15529, float* %15530
%15531 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%15532 = load float, float* %15531
%15533 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%15534 = load float, float* %15533
%15535 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%15536 = load float, float* %15535
%15537 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%15538 = load float, float* %15537
%15539 = fmul float %15536, %15538
%15540 = fneg float %15539
%15541 = call float @llvm.fmuladd.f32(float %15532, float %15534, float %15540)
%15542 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %15541, float* %15542
%15543 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%15544 = load float, float* %15543
%15545 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%15546 = load float, float* %15545
%15547 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%15548 = load float, float* %15547
%15549 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%15550 = load float, float* %15549
%15551 = fmul float %15548, %15550
%15552 = fneg float %15551
%15553 = call float @llvm.fmuladd.f32(float %15544, float %15546, float %15552)
%15554 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %15553, float* %15554
%15555 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%15556 = load float, float* %15555
%15557 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%15558 = load float, float* %15557
%15559 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%15560 = load float, float* %15559
%15561 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%15562 = load float, float* %15561
%15563 = fmul float %15560, %15562
%15564 = fneg float %15563
%15565 = call float @llvm.fmuladd.f32(float %15556, float %15558, float %15564)
%15566 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %15565, float* %15566
%15567 = load float*, float** %12
%15568 = getelementptr inbounds float, float* %15567, i64 0
%15569 = load float, float* %15568
%15570 = load float*, float** %9
%15571 = getelementptr inbounds float, float* %15570, i64 0
%15572 = load float, float* %15571
%15573 = fsub float %15569, %15572
%15574 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %15573, float* %15574
%15575 = load float*, float** %12
%15576 = getelementptr inbounds float, float* %15575, i64 1
%15577 = load float, float* %15576
%15578 = load float*, float** %9
%15579 = getelementptr inbounds float, float* %15578, i64 1
%15580 = load float, float* %15579
%15581 = fsub float %15577, %15580
%15582 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %15581, float* %15582
%15583 = load float*, float** %12
%15584 = getelementptr inbounds float, float* %15583, i64 2
%15585 = load float, float* %15584
%15586 = load float*, float** %9
%15587 = getelementptr inbounds float, float* %15586, i64 2
%15588 = load float, float* %15587
%15589 = fsub float %15585, %15588
%15590 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %15589, float* %15590
%15591 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%15592 = load float, float* %15591
%15593 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%15594 = load float, float* %15593
%15595 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%15596 = load float, float* %15595
%15597 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%15598 = load float, float* %15597
%15599 = fmul float %15596, %15598
%15600 = call float @llvm.fmuladd.f32(float %15592, float %15594, float %15599)
%15601 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%15602 = load float, float* %15601
%15603 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%15604 = load float, float* %15603
%15605 = call float @llvm.fmuladd.f32(float %15602, float %15604, float %15600)
%15606 = fcmp ogt float %15605, 0.000000e+00
br i1 %15606, label %15607, label %15608
15607: ; preds = %15482
store i32 0, i32* %7
br label %37477
15608: ; preds = %15482
store i32 1, i32* %7
br label %37477
15609: ; preds = %15353
%15610 = load float, float* %19
%15611 = fcmp olt float %15610, 0.000000e+00
br i1 %15611, label %15612, label %15865
15612: ; preds = %15609
%15613 = load float*, float** %13
%15614 = getelementptr inbounds float, float* %15613, i64 0
%15615 = load float, float* %15614
%15616 = load float*, float** %8
%15617 = getelementptr inbounds float, float* %15616, i64 0
%15618 = load float, float* %15617
%15619 = fsub float %15615, %15618
%15620 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %15619, float* %15620
%15621 = load float*, float** %13
%15622 = getelementptr inbounds float, float* %15621, i64 1
%15623 = load float, float* %15622
%15624 = load float*, float** %8
%15625 = getelementptr inbounds float, float* %15624, i64 1
%15626 = load float, float* %15625
%15627 = fsub float %15623, %15626
%15628 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %15627, float* %15628
%15629 = load float*, float** %13
%15630 = getelementptr inbounds float, float* %15629, i64 2
%15631 = load float, float* %15630
%15632 = load float*, float** %8
%15633 = getelementptr inbounds float, float* %15632, i64 2
%15634 = load float, float* %15633
%15635 = fsub float %15631, %15634
%15636 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %15635, float* %15636
%15637 = load float*, float** %9
%15638 = getelementptr inbounds float, float* %15637, i64 0
%15639 = load float, float* %15638
%15640 = load float*, float** %8
%15641 = getelementptr inbounds float, float* %15640, i64 0
%15642 = load float, float* %15641
%15643 = fsub float %15639, %15642
%15644 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %15643, float* %15644
%15645 = load float*, float** %9
%15646 = getelementptr inbounds float, float* %15645, i64 1
%15647 = load float, float* %15646
%15648 = load float*, float** %8
%15649 = getelementptr inbounds float, float* %15648, i64 1
%15650 = load float, float* %15649
%15651 = fsub float %15647, %15650
%15652 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %15651, float* %15652
%15653 = load float*, float** %9
%15654 = getelementptr inbounds float, float* %15653, i64 2
%15655 = load float, float* %15654
%15656 = load float*, float** %8
%15657 = getelementptr inbounds float, float* %15656, i64 2
%15658 = load float, float* %15657
%15659 = fsub float %15655, %15658
%15660 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %15659, float* %15660
%15661 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%15662 = load float, float* %15661
%15663 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%15664 = load float, float* %15663
%15665 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%15666 = load float, float* %15665
%15667 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%15668 = load float, float* %15667
%15669 = fmul float %15666, %15668
%15670 = fneg float %15669
%15671 = call float @llvm.fmuladd.f32(float %15662, float %15664, float %15670)
%15672 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %15671, float* %15672
%15673 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%15674 = load float, float* %15673
%15675 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%15676 = load float, float* %15675
%15677 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%15678 = load float, float* %15677
%15679 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%15680 = load float, float* %15679
%15681 = fmul float %15678, %15680
%15682 = fneg float %15681
%15683 = call float @llvm.fmuladd.f32(float %15674, float %15676, float %15682)
%15684 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %15683, float* %15684
%15685 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%15686 = load float, float* %15685
%15687 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%15688 = load float, float* %15687
%15689 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%15690 = load float, float* %15689
%15691 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%15692 = load float, float* %15691
%15693 = fmul float %15690, %15692
%15694 = fneg float %15693
%15695 = call float @llvm.fmuladd.f32(float %15686, float %15688, float %15694)
%15696 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %15695, float* %15696
%15697 = load float*, float** %11
%15698 = getelementptr inbounds float, float* %15697, i64 0
%15699 = load float, float* %15698
%15700 = load float*, float** %8
%15701 = getelementptr inbounds float, float* %15700, i64 0
%15702 = load float, float* %15701
%15703 = fsub float %15699, %15702
%15704 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %15703, float* %15704
%15705 = load float*, float** %11
%15706 = getelementptr inbounds float, float* %15705, i64 1
%15707 = load float, float* %15706
%15708 = load float*, float** %8
%15709 = getelementptr inbounds float, float* %15708, i64 1
%15710 = load float, float* %15709
%15711 = fsub float %15707, %15710
%15712 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %15711, float* %15712
%15713 = load float*, float** %11
%15714 = getelementptr inbounds float, float* %15713, i64 2
%15715 = load float, float* %15714
%15716 = load float*, float** %8
%15717 = getelementptr inbounds float, float* %15716, i64 2
%15718 = load float, float* %15717
%15719 = fsub float %15715, %15718
%15720 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %15719, float* %15720
%15721 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%15722 = load float, float* %15721
%15723 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%15724 = load float, float* %15723
%15725 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%15726 = load float, float* %15725
%15727 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%15728 = load float, float* %15727
%15729 = fmul float %15726, %15728
%15730 = call float @llvm.fmuladd.f32(float %15722, float %15724, float %15729)
%15731 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%15732 = load float, float* %15731
%15733 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%15734 = load float, float* %15733
%15735 = call float @llvm.fmuladd.f32(float %15732, float %15734, float %15730)
%15736 = fcmp ogt float %15735, 0.000000e+00
br i1 %15736, label %15737, label %15738
15737: ; preds = %15612
store i32 0, i32* %7
br label %37477
15738: ; preds = %15612
%15739 = load float*, float** %13
%15740 = getelementptr inbounds float, float* %15739, i64 0
%15741 = load float, float* %15740
%15742 = load float*, float** %9
%15743 = getelementptr inbounds float, float* %15742, i64 0
%15744 = load float, float* %15743
%15745 = fsub float %15741, %15744
%15746 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %15745, float* %15746
%15747 = load float*, float** %13
%15748 = getelementptr inbounds float, float* %15747, i64 1
%15749 = load float, float* %15748
%15750 = load float*, float** %9
%15751 = getelementptr inbounds float, float* %15750, i64 1
%15752 = load float, float* %15751
%15753 = fsub float %15749, %15752
%15754 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %15753, float* %15754
%15755 = load float*, float** %13
%15756 = getelementptr inbounds float, float* %15755, i64 2
%15757 = load float, float* %15756
%15758 = load float*, float** %9
%15759 = getelementptr inbounds float, float* %15758, i64 2
%15760 = load float, float* %15759
%15761 = fsub float %15757, %15760
%15762 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %15761, float* %15762
%15763 = load float*, float** %10
%15764 = getelementptr inbounds float, float* %15763, i64 0
%15765 = load float, float* %15764
%15766 = load float*, float** %9
%15767 = getelementptr inbounds float, float* %15766, i64 0
%15768 = load float, float* %15767
%15769 = fsub float %15765, %15768
%15770 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %15769, float* %15770
%15771 = load float*, float** %10
%15772 = getelementptr inbounds float, float* %15771, i64 1
%15773 = load float, float* %15772
%15774 = load float*, float** %9
%15775 = getelementptr inbounds float, float* %15774, i64 1
%15776 = load float, float* %15775
%15777 = fsub float %15773, %15776
%15778 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %15777, float* %15778
%15779 = load float*, float** %10
%15780 = getelementptr inbounds float, float* %15779, i64 2
%15781 = load float, float* %15780
%15782 = load float*, float** %9
%15783 = getelementptr inbounds float, float* %15782, i64 2
%15784 = load float, float* %15783
%15785 = fsub float %15781, %15784
%15786 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %15785, float* %15786
%15787 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%15788 = load float, float* %15787
%15789 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%15790 = load float, float* %15789
%15791 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%15792 = load float, float* %15791
%15793 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%15794 = load float, float* %15793
%15795 = fmul float %15792, %15794
%15796 = fneg float %15795
%15797 = call float @llvm.fmuladd.f32(float %15788, float %15790, float %15796)
%15798 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %15797, float* %15798
%15799 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%15800 = load float, float* %15799
%15801 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%15802 = load float, float* %15801
%15803 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%15804 = load float, float* %15803
%15805 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%15806 = load float, float* %15805
%15807 = fmul float %15804, %15806
%15808 = fneg float %15807
%15809 = call float @llvm.fmuladd.f32(float %15800, float %15802, float %15808)
%15810 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %15809, float* %15810
%15811 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%15812 = load float, float* %15811
%15813 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%15814 = load float, float* %15813
%15815 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%15816 = load float, float* %15815
%15817 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%15818 = load float, float* %15817
%15819 = fmul float %15816, %15818
%15820 = fneg float %15819
%15821 = call float @llvm.fmuladd.f32(float %15812, float %15814, float %15820)
%15822 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %15821, float* %15822
%15823 = load float*, float** %12
%15824 = getelementptr inbounds float, float* %15823, i64 0
%15825 = load float, float* %15824
%15826 = load float*, float** %9
%15827 = getelementptr inbounds float, float* %15826, i64 0
%15828 = load float, float* %15827
%15829 = fsub float %15825, %15828
%15830 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %15829, float* %15830
%15831 = load float*, float** %12
%15832 = getelementptr inbounds float, float* %15831, i64 1
%15833 = load float, float* %15832
%15834 = load float*, float** %9
%15835 = getelementptr inbounds float, float* %15834, i64 1
%15836 = load float, float* %15835
%15837 = fsub float %15833, %15836
%15838 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %15837, float* %15838
%15839 = load float*, float** %12
%15840 = getelementptr inbounds float, float* %15839, i64 2
%15841 = load float, float* %15840
%15842 = load float*, float** %9
%15843 = getelementptr inbounds float, float* %15842, i64 2
%15844 = load float, float* %15843
%15845 = fsub float %15841, %15844
%15846 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %15845, float* %15846
%15847 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%15848 = load float, float* %15847
%15849 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%15850 = load float, float* %15849
%15851 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%15852 = load float, float* %15851
%15853 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%15854 = load float, float* %15853
%15855 = fmul float %15852, %15854
%15856 = call float @llvm.fmuladd.f32(float %15848, float %15850, float %15855)
%15857 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%15858 = load float, float* %15857
%15859 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%15860 = load float, float* %15859
%15861 = call float @llvm.fmuladd.f32(float %15858, float %15860, float %15856)
%15862 = fcmp ogt float %15861, 0.000000e+00
br i1 %15862, label %15863, label %15864
15863: ; preds = %15738
store i32 0, i32* %7
br label %37477
15864: ; preds = %15738
store i32 1, i32* %7
br label %37477
15865: ; preds = %15609
%15866 = load float*, float** %9
%15867 = load float*, float** %10
%15868 = load float*, float** %8
%15869 = load float*, float** %11
%15870 = load float*, float** %12
%15871 = load float*, float** %13
%15872 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%15873 = getelementptr inbounds [3 x float], [3 x float]* %23, i64 0, i64 0
%15874 = call i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...) bitcast (i32 (...)* @coplanar_tri_tri3d to i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...)*)(float* %15866, float* %15867, float* %15868, float* %15869, float* %15870, float* %15871, float* %15872, float* %15873)
store i32 %15874, i32* %7
br label %37477
15875: ; preds = %12790
%15876 = load float, float* %17
%15877 = fcmp ogt float %15876, 0.000000e+00
br i1 %15877, label %15878, label %16643
15878: ; preds = %15875
%15879 = load float, float* %19
%15880 = fcmp ogt float %15879, 0.000000e+00
br i1 %15880, label %15881, label %16134
15881: ; preds = %15878
%15882 = load float*, float** %12
%15883 = getelementptr inbounds float, float* %15882, i64 0
%15884 = load float, float* %15883
%15885 = load float*, float** %10
%15886 = getelementptr inbounds float, float* %15885, i64 0
%15887 = load float, float* %15886
%15888 = fsub float %15884, %15887
%15889 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %15888, float* %15889
%15890 = load float*, float** %12
%15891 = getelementptr inbounds float, float* %15890, i64 1
%15892 = load float, float* %15891
%15893 = load float*, float** %10
%15894 = getelementptr inbounds float, float* %15893, i64 1
%15895 = load float, float* %15894
%15896 = fsub float %15892, %15895
%15897 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %15896, float* %15897
%15898 = load float*, float** %12
%15899 = getelementptr inbounds float, float* %15898, i64 2
%15900 = load float, float* %15899
%15901 = load float*, float** %10
%15902 = getelementptr inbounds float, float* %15901, i64 2
%15903 = load float, float* %15902
%15904 = fsub float %15900, %15903
%15905 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %15904, float* %15905
%15906 = load float*, float** %8
%15907 = getelementptr inbounds float, float* %15906, i64 0
%15908 = load float, float* %15907
%15909 = load float*, float** %10
%15910 = getelementptr inbounds float, float* %15909, i64 0
%15911 = load float, float* %15910
%15912 = fsub float %15908, %15911
%15913 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %15912, float* %15913
%15914 = load float*, float** %8
%15915 = getelementptr inbounds float, float* %15914, i64 1
%15916 = load float, float* %15915
%15917 = load float*, float** %10
%15918 = getelementptr inbounds float, float* %15917, i64 1
%15919 = load float, float* %15918
%15920 = fsub float %15916, %15919
%15921 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %15920, float* %15921
%15922 = load float*, float** %8
%15923 = getelementptr inbounds float, float* %15922, i64 2
%15924 = load float, float* %15923
%15925 = load float*, float** %10
%15926 = getelementptr inbounds float, float* %15925, i64 2
%15927 = load float, float* %15926
%15928 = fsub float %15924, %15927
%15929 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %15928, float* %15929
%15930 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%15931 = load float, float* %15930
%15932 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%15933 = load float, float* %15932
%15934 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%15935 = load float, float* %15934
%15936 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%15937 = load float, float* %15936
%15938 = fmul float %15935, %15937
%15939 = fneg float %15938
%15940 = call float @llvm.fmuladd.f32(float %15931, float %15933, float %15939)
%15941 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %15940, float* %15941
%15942 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%15943 = load float, float* %15942
%15944 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%15945 = load float, float* %15944
%15946 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%15947 = load float, float* %15946
%15948 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%15949 = load float, float* %15948
%15950 = fmul float %15947, %15949
%15951 = fneg float %15950
%15952 = call float @llvm.fmuladd.f32(float %15943, float %15945, float %15951)
%15953 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %15952, float* %15953
%15954 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%15955 = load float, float* %15954
%15956 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%15957 = load float, float* %15956
%15958 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%15959 = load float, float* %15958
%15960 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%15961 = load float, float* %15960
%15962 = fmul float %15959, %15961
%15963 = fneg float %15962
%15964 = call float @llvm.fmuladd.f32(float %15955, float %15957, float %15963)
%15965 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %15964, float* %15965
%15966 = load float*, float** %11
%15967 = getelementptr inbounds float, float* %15966, i64 0
%15968 = load float, float* %15967
%15969 = load float*, float** %10
%15970 = getelementptr inbounds float, float* %15969, i64 0
%15971 = load float, float* %15970
%15972 = fsub float %15968, %15971
%15973 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %15972, float* %15973
%15974 = load float*, float** %11
%15975 = getelementptr inbounds float, float* %15974, i64 1
%15976 = load float, float* %15975
%15977 = load float*, float** %10
%15978 = getelementptr inbounds float, float* %15977, i64 1
%15979 = load float, float* %15978
%15980 = fsub float %15976, %15979
%15981 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %15980, float* %15981
%15982 = load float*, float** %11
%15983 = getelementptr inbounds float, float* %15982, i64 2
%15984 = load float, float* %15983
%15985 = load float*, float** %10
%15986 = getelementptr inbounds float, float* %15985, i64 2
%15987 = load float, float* %15986
%15988 = fsub float %15984, %15987
%15989 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %15988, float* %15989
%15990 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%15991 = load float, float* %15990
%15992 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%15993 = load float, float* %15992
%15994 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%15995 = load float, float* %15994
%15996 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%15997 = load float, float* %15996
%15998 = fmul float %15995, %15997
%15999 = call float @llvm.fmuladd.f32(float %15991, float %15993, float %15998)
%16000 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%16001 = load float, float* %16000
%16002 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%16003 = load float, float* %16002
%16004 = call float @llvm.fmuladd.f32(float %16001, float %16003, float %15999)
%16005 = fcmp ogt float %16004, 0.000000e+00
br i1 %16005, label %16006, label %16007
16006: ; preds = %15881
store i32 0, i32* %7
br label %37477
16007: ; preds = %15881
%16008 = load float*, float** %12
%16009 = getelementptr inbounds float, float* %16008, i64 0
%16010 = load float, float* %16009
%16011 = load float*, float** %8
%16012 = getelementptr inbounds float, float* %16011, i64 0
%16013 = load float, float* %16012
%16014 = fsub float %16010, %16013
%16015 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %16014, float* %16015
%16016 = load float*, float** %12
%16017 = getelementptr inbounds float, float* %16016, i64 1
%16018 = load float, float* %16017
%16019 = load float*, float** %8
%16020 = getelementptr inbounds float, float* %16019, i64 1
%16021 = load float, float* %16020
%16022 = fsub float %16018, %16021
%16023 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %16022, float* %16023
%16024 = load float*, float** %12
%16025 = getelementptr inbounds float, float* %16024, i64 2
%16026 = load float, float* %16025
%16027 = load float*, float** %8
%16028 = getelementptr inbounds float, float* %16027, i64 2
%16029 = load float, float* %16028
%16030 = fsub float %16026, %16029
%16031 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %16030, float* %16031
%16032 = load float*, float** %9
%16033 = getelementptr inbounds float, float* %16032, i64 0
%16034 = load float, float* %16033
%16035 = load float*, float** %8
%16036 = getelementptr inbounds float, float* %16035, i64 0
%16037 = load float, float* %16036
%16038 = fsub float %16034, %16037
%16039 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %16038, float* %16039
%16040 = load float*, float** %9
%16041 = getelementptr inbounds float, float* %16040, i64 1
%16042 = load float, float* %16041
%16043 = load float*, float** %8
%16044 = getelementptr inbounds float, float* %16043, i64 1
%16045 = load float, float* %16044
%16046 = fsub float %16042, %16045
%16047 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %16046, float* %16047
%16048 = load float*, float** %9
%16049 = getelementptr inbounds float, float* %16048, i64 2
%16050 = load float, float* %16049
%16051 = load float*, float** %8
%16052 = getelementptr inbounds float, float* %16051, i64 2
%16053 = load float, float* %16052
%16054 = fsub float %16050, %16053
%16055 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %16054, float* %16055
%16056 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%16057 = load float, float* %16056
%16058 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%16059 = load float, float* %16058
%16060 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%16061 = load float, float* %16060
%16062 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%16063 = load float, float* %16062
%16064 = fmul float %16061, %16063
%16065 = fneg float %16064
%16066 = call float @llvm.fmuladd.f32(float %16057, float %16059, float %16065)
%16067 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %16066, float* %16067
%16068 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%16069 = load float, float* %16068
%16070 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%16071 = load float, float* %16070
%16072 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%16073 = load float, float* %16072
%16074 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%16075 = load float, float* %16074
%16076 = fmul float %16073, %16075
%16077 = fneg float %16076
%16078 = call float @llvm.fmuladd.f32(float %16069, float %16071, float %16077)
%16079 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %16078, float* %16079
%16080 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%16081 = load float, float* %16080
%16082 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%16083 = load float, float* %16082
%16084 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%16085 = load float, float* %16084
%16086 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%16087 = load float, float* %16086
%16088 = fmul float %16085, %16087
%16089 = fneg float %16088
%16090 = call float @llvm.fmuladd.f32(float %16081, float %16083, float %16089)
%16091 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %16090, float* %16091
%16092 = load float*, float** %13
%16093 = getelementptr inbounds float, float* %16092, i64 0
%16094 = load float, float* %16093
%16095 = load float*, float** %8
%16096 = getelementptr inbounds float, float* %16095, i64 0
%16097 = load float, float* %16096
%16098 = fsub float %16094, %16097
%16099 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %16098, float* %16099
%16100 = load float*, float** %13
%16101 = getelementptr inbounds float, float* %16100, i64 1
%16102 = load float, float* %16101
%16103 = load float*, float** %8
%16104 = getelementptr inbounds float, float* %16103, i64 1
%16105 = load float, float* %16104
%16106 = fsub float %16102, %16105
%16107 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %16106, float* %16107
%16108 = load float*, float** %13
%16109 = getelementptr inbounds float, float* %16108, i64 2
%16110 = load float, float* %16109
%16111 = load float*, float** %8
%16112 = getelementptr inbounds float, float* %16111, i64 2
%16113 = load float, float* %16112
%16114 = fsub float %16110, %16113
%16115 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %16114, float* %16115
%16116 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%16117 = load float, float* %16116
%16118 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%16119 = load float, float* %16118
%16120 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%16121 = load float, float* %16120
%16122 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%16123 = load float, float* %16122
%16124 = fmul float %16121, %16123
%16125 = call float @llvm.fmuladd.f32(float %16117, float %16119, float %16124)
%16126 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%16127 = load float, float* %16126
%16128 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%16129 = load float, float* %16128
%16130 = call float @llvm.fmuladd.f32(float %16127, float %16129, float %16125)
%16131 = fcmp ogt float %16130, 0.000000e+00
br i1 %16131, label %16132, label %16133
16132: ; preds = %16007
store i32 0, i32* %7
br label %37477
16133: ; preds = %16007
store i32 1, i32* %7
br label %37477
16134: ; preds = %15878
%16135 = load float, float* %18
%16136 = fcmp ogt float %16135, 0.000000e+00
br i1 %16136, label %16137, label %16390
16137: ; preds = %16134
%16138 = load float*, float** %13
%16139 = getelementptr inbounds float, float* %16138, i64 0
%16140 = load float, float* %16139
%16141 = load float*, float** %10
%16142 = getelementptr inbounds float, float* %16141, i64 0
%16143 = load float, float* %16142
%16144 = fsub float %16140, %16143
%16145 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %16144, float* %16145
%16146 = load float*, float** %13
%16147 = getelementptr inbounds float, float* %16146, i64 1
%16148 = load float, float* %16147
%16149 = load float*, float** %10
%16150 = getelementptr inbounds float, float* %16149, i64 1
%16151 = load float, float* %16150
%16152 = fsub float %16148, %16151
%16153 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %16152, float* %16153
%16154 = load float*, float** %13
%16155 = getelementptr inbounds float, float* %16154, i64 2
%16156 = load float, float* %16155
%16157 = load float*, float** %10
%16158 = getelementptr inbounds float, float* %16157, i64 2
%16159 = load float, float* %16158
%16160 = fsub float %16156, %16159
%16161 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %16160, float* %16161
%16162 = load float*, float** %8
%16163 = getelementptr inbounds float, float* %16162, i64 0
%16164 = load float, float* %16163
%16165 = load float*, float** %10
%16166 = getelementptr inbounds float, float* %16165, i64 0
%16167 = load float, float* %16166
%16168 = fsub float %16164, %16167
%16169 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %16168, float* %16169
%16170 = load float*, float** %8
%16171 = getelementptr inbounds float, float* %16170, i64 1
%16172 = load float, float* %16171
%16173 = load float*, float** %10
%16174 = getelementptr inbounds float, float* %16173, i64 1
%16175 = load float, float* %16174
%16176 = fsub float %16172, %16175
%16177 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %16176, float* %16177
%16178 = load float*, float** %8
%16179 = getelementptr inbounds float, float* %16178, i64 2
%16180 = load float, float* %16179
%16181 = load float*, float** %10
%16182 = getelementptr inbounds float, float* %16181, i64 2
%16183 = load float, float* %16182
%16184 = fsub float %16180, %16183
%16185 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %16184, float* %16185
%16186 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%16187 = load float, float* %16186
%16188 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%16189 = load float, float* %16188
%16190 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%16191 = load float, float* %16190
%16192 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%16193 = load float, float* %16192
%16194 = fmul float %16191, %16193
%16195 = fneg float %16194
%16196 = call float @llvm.fmuladd.f32(float %16187, float %16189, float %16195)
%16197 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %16196, float* %16197
%16198 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%16199 = load float, float* %16198
%16200 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%16201 = load float, float* %16200
%16202 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%16203 = load float, float* %16202
%16204 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%16205 = load float, float* %16204
%16206 = fmul float %16203, %16205
%16207 = fneg float %16206
%16208 = call float @llvm.fmuladd.f32(float %16199, float %16201, float %16207)
%16209 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %16208, float* %16209
%16210 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%16211 = load float, float* %16210
%16212 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%16213 = load float, float* %16212
%16214 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%16215 = load float, float* %16214
%16216 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%16217 = load float, float* %16216
%16218 = fmul float %16215, %16217
%16219 = fneg float %16218
%16220 = call float @llvm.fmuladd.f32(float %16211, float %16213, float %16219)
%16221 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %16220, float* %16221
%16222 = load float*, float** %12
%16223 = getelementptr inbounds float, float* %16222, i64 0
%16224 = load float, float* %16223
%16225 = load float*, float** %10
%16226 = getelementptr inbounds float, float* %16225, i64 0
%16227 = load float, float* %16226
%16228 = fsub float %16224, %16227
%16229 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %16228, float* %16229
%16230 = load float*, float** %12
%16231 = getelementptr inbounds float, float* %16230, i64 1
%16232 = load float, float* %16231
%16233 = load float*, float** %10
%16234 = getelementptr inbounds float, float* %16233, i64 1
%16235 = load float, float* %16234
%16236 = fsub float %16232, %16235
%16237 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %16236, float* %16237
%16238 = load float*, float** %12
%16239 = getelementptr inbounds float, float* %16238, i64 2
%16240 = load float, float* %16239
%16241 = load float*, float** %10
%16242 = getelementptr inbounds float, float* %16241, i64 2
%16243 = load float, float* %16242
%16244 = fsub float %16240, %16243
%16245 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %16244, float* %16245
%16246 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%16247 = load float, float* %16246
%16248 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%16249 = load float, float* %16248
%16250 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%16251 = load float, float* %16250
%16252 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%16253 = load float, float* %16252
%16254 = fmul float %16251, %16253
%16255 = call float @llvm.fmuladd.f32(float %16247, float %16249, float %16254)
%16256 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%16257 = load float, float* %16256
%16258 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%16259 = load float, float* %16258
%16260 = call float @llvm.fmuladd.f32(float %16257, float %16259, float %16255)
%16261 = fcmp ogt float %16260, 0.000000e+00
br i1 %16261, label %16262, label %16263
16262: ; preds = %16137
store i32 0, i32* %7
br label %37477
16263: ; preds = %16137
%16264 = load float*, float** %13
%16265 = getelementptr inbounds float, float* %16264, i64 0
%16266 = load float, float* %16265
%16267 = load float*, float** %8
%16268 = getelementptr inbounds float, float* %16267, i64 0
%16269 = load float, float* %16268
%16270 = fsub float %16266, %16269
%16271 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %16270, float* %16271
%16272 = load float*, float** %13
%16273 = getelementptr inbounds float, float* %16272, i64 1
%16274 = load float, float* %16273
%16275 = load float*, float** %8
%16276 = getelementptr inbounds float, float* %16275, i64 1
%16277 = load float, float* %16276
%16278 = fsub float %16274, %16277
%16279 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %16278, float* %16279
%16280 = load float*, float** %13
%16281 = getelementptr inbounds float, float* %16280, i64 2
%16282 = load float, float* %16281
%16283 = load float*, float** %8
%16284 = getelementptr inbounds float, float* %16283, i64 2
%16285 = load float, float* %16284
%16286 = fsub float %16282, %16285
%16287 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %16286, float* %16287
%16288 = load float*, float** %9
%16289 = getelementptr inbounds float, float* %16288, i64 0
%16290 = load float, float* %16289
%16291 = load float*, float** %8
%16292 = getelementptr inbounds float, float* %16291, i64 0
%16293 = load float, float* %16292
%16294 = fsub float %16290, %16293
%16295 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %16294, float* %16295
%16296 = load float*, float** %9
%16297 = getelementptr inbounds float, float* %16296, i64 1
%16298 = load float, float* %16297
%16299 = load float*, float** %8
%16300 = getelementptr inbounds float, float* %16299, i64 1
%16301 = load float, float* %16300
%16302 = fsub float %16298, %16301
%16303 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %16302, float* %16303
%16304 = load float*, float** %9
%16305 = getelementptr inbounds float, float* %16304, i64 2
%16306 = load float, float* %16305
%16307 = load float*, float** %8
%16308 = getelementptr inbounds float, float* %16307, i64 2
%16309 = load float, float* %16308
%16310 = fsub float %16306, %16309
%16311 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %16310, float* %16311
%16312 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%16313 = load float, float* %16312
%16314 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%16315 = load float, float* %16314
%16316 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%16317 = load float, float* %16316
%16318 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%16319 = load float, float* %16318
%16320 = fmul float %16317, %16319
%16321 = fneg float %16320
%16322 = call float @llvm.fmuladd.f32(float %16313, float %16315, float %16321)
%16323 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %16322, float* %16323
%16324 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%16325 = load float, float* %16324
%16326 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%16327 = load float, float* %16326
%16328 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%16329 = load float, float* %16328
%16330 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%16331 = load float, float* %16330
%16332 = fmul float %16329, %16331
%16333 = fneg float %16332
%16334 = call float @llvm.fmuladd.f32(float %16325, float %16327, float %16333)
%16335 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %16334, float* %16335
%16336 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%16337 = load float, float* %16336
%16338 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%16339 = load float, float* %16338
%16340 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%16341 = load float, float* %16340
%16342 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%16343 = load float, float* %16342
%16344 = fmul float %16341, %16343
%16345 = fneg float %16344
%16346 = call float @llvm.fmuladd.f32(float %16337, float %16339, float %16345)
%16347 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %16346, float* %16347
%16348 = load float*, float** %11
%16349 = getelementptr inbounds float, float* %16348, i64 0
%16350 = load float, float* %16349
%16351 = load float*, float** %8
%16352 = getelementptr inbounds float, float* %16351, i64 0
%16353 = load float, float* %16352
%16354 = fsub float %16350, %16353
%16355 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %16354, float* %16355
%16356 = load float*, float** %11
%16357 = getelementptr inbounds float, float* %16356, i64 1
%16358 = load float, float* %16357
%16359 = load float*, float** %8
%16360 = getelementptr inbounds float, float* %16359, i64 1
%16361 = load float, float* %16360
%16362 = fsub float %16358, %16361
%16363 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %16362, float* %16363
%16364 = load float*, float** %11
%16365 = getelementptr inbounds float, float* %16364, i64 2
%16366 = load float, float* %16365
%16367 = load float*, float** %8
%16368 = getelementptr inbounds float, float* %16367, i64 2
%16369 = load float, float* %16368
%16370 = fsub float %16366, %16369
%16371 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %16370, float* %16371
%16372 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%16373 = load float, float* %16372
%16374 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%16375 = load float, float* %16374
%16376 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%16377 = load float, float* %16376
%16378 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%16379 = load float, float* %16378
%16380 = fmul float %16377, %16379
%16381 = call float @llvm.fmuladd.f32(float %16373, float %16375, float %16380)
%16382 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%16383 = load float, float* %16382
%16384 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%16385 = load float, float* %16384
%16386 = call float @llvm.fmuladd.f32(float %16383, float %16385, float %16381)
%16387 = fcmp ogt float %16386, 0.000000e+00
br i1 %16387, label %16388, label %16389
16388: ; preds = %16263
store i32 0, i32* %7
br label %37477
16389: ; preds = %16263
store i32 1, i32* %7
br label %37477
16390: ; preds = %16134
%16391 = load float*, float** %11
%16392 = getelementptr inbounds float, float* %16391, i64 0
%16393 = load float, float* %16392
%16394 = load float*, float** %9
%16395 = getelementptr inbounds float, float* %16394, i64 0
%16396 = load float, float* %16395
%16397 = fsub float %16393, %16396
%16398 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %16397, float* %16398
%16399 = load float*, float** %11
%16400 = getelementptr inbounds float, float* %16399, i64 1
%16401 = load float, float* %16400
%16402 = load float*, float** %9
%16403 = getelementptr inbounds float, float* %16402, i64 1
%16404 = load float, float* %16403
%16405 = fsub float %16401, %16404
%16406 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %16405, float* %16406
%16407 = load float*, float** %11
%16408 = getelementptr inbounds float, float* %16407, i64 2
%16409 = load float, float* %16408
%16410 = load float*, float** %9
%16411 = getelementptr inbounds float, float* %16410, i64 2
%16412 = load float, float* %16411
%16413 = fsub float %16409, %16412
%16414 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %16413, float* %16414
%16415 = load float*, float** %8
%16416 = getelementptr inbounds float, float* %16415, i64 0
%16417 = load float, float* %16416
%16418 = load float*, float** %9
%16419 = getelementptr inbounds float, float* %16418, i64 0
%16420 = load float, float* %16419
%16421 = fsub float %16417, %16420
%16422 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %16421, float* %16422
%16423 = load float*, float** %8
%16424 = getelementptr inbounds float, float* %16423, i64 1
%16425 = load float, float* %16424
%16426 = load float*, float** %9
%16427 = getelementptr inbounds float, float* %16426, i64 1
%16428 = load float, float* %16427
%16429 = fsub float %16425, %16428
%16430 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %16429, float* %16430
%16431 = load float*, float** %8
%16432 = getelementptr inbounds float, float* %16431, i64 2
%16433 = load float, float* %16432
%16434 = load float*, float** %9
%16435 = getelementptr inbounds float, float* %16434, i64 2
%16436 = load float, float* %16435
%16437 = fsub float %16433, %16436
%16438 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %16437, float* %16438
%16439 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%16440 = load float, float* %16439
%16441 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%16442 = load float, float* %16441
%16443 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%16444 = load float, float* %16443
%16445 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%16446 = load float, float* %16445
%16447 = fmul float %16444, %16446
%16448 = fneg float %16447
%16449 = call float @llvm.fmuladd.f32(float %16440, float %16442, float %16448)
%16450 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %16449, float* %16450
%16451 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%16452 = load float, float* %16451
%16453 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%16454 = load float, float* %16453
%16455 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%16456 = load float, float* %16455
%16457 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%16458 = load float, float* %16457
%16459 = fmul float %16456, %16458
%16460 = fneg float %16459
%16461 = call float @llvm.fmuladd.f32(float %16452, float %16454, float %16460)
%16462 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %16461, float* %16462
%16463 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%16464 = load float, float* %16463
%16465 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%16466 = load float, float* %16465
%16467 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%16468 = load float, float* %16467
%16469 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%16470 = load float, float* %16469
%16471 = fmul float %16468, %16470
%16472 = fneg float %16471
%16473 = call float @llvm.fmuladd.f32(float %16464, float %16466, float %16472)
%16474 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %16473, float* %16474
%16475 = load float*, float** %13
%16476 = getelementptr inbounds float, float* %16475, i64 0
%16477 = load float, float* %16476
%16478 = load float*, float** %9
%16479 = getelementptr inbounds float, float* %16478, i64 0
%16480 = load float, float* %16479
%16481 = fsub float %16477, %16480
%16482 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %16481, float* %16482
%16483 = load float*, float** %13
%16484 = getelementptr inbounds float, float* %16483, i64 1
%16485 = load float, float* %16484
%16486 = load float*, float** %9
%16487 = getelementptr inbounds float, float* %16486, i64 1
%16488 = load float, float* %16487
%16489 = fsub float %16485, %16488
%16490 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %16489, float* %16490
%16491 = load float*, float** %13
%16492 = getelementptr inbounds float, float* %16491, i64 2
%16493 = load float, float* %16492
%16494 = load float*, float** %9
%16495 = getelementptr inbounds float, float* %16494, i64 2
%16496 = load float, float* %16495
%16497 = fsub float %16493, %16496
%16498 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %16497, float* %16498
%16499 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%16500 = load float, float* %16499
%16501 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%16502 = load float, float* %16501
%16503 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%16504 = load float, float* %16503
%16505 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%16506 = load float, float* %16505
%16507 = fmul float %16504, %16506
%16508 = call float @llvm.fmuladd.f32(float %16500, float %16502, float %16507)
%16509 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%16510 = load float, float* %16509
%16511 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%16512 = load float, float* %16511
%16513 = call float @llvm.fmuladd.f32(float %16510, float %16512, float %16508)
%16514 = fcmp ogt float %16513, 0.000000e+00
br i1 %16514, label %16515, label %16516
16515: ; preds = %16390
store i32 0, i32* %7
br label %37477
16516: ; preds = %16390
%16517 = load float*, float** %11
%16518 = getelementptr inbounds float, float* %16517, i64 0
%16519 = load float, float* %16518
%16520 = load float*, float** %8
%16521 = getelementptr inbounds float, float* %16520, i64 0
%16522 = load float, float* %16521
%16523 = fsub float %16519, %16522
%16524 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %16523, float* %16524
%16525 = load float*, float** %11
%16526 = getelementptr inbounds float, float* %16525, i64 1
%16527 = load float, float* %16526
%16528 = load float*, float** %8
%16529 = getelementptr inbounds float, float* %16528, i64 1
%16530 = load float, float* %16529
%16531 = fsub float %16527, %16530
%16532 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %16531, float* %16532
%16533 = load float*, float** %11
%16534 = getelementptr inbounds float, float* %16533, i64 2
%16535 = load float, float* %16534
%16536 = load float*, float** %8
%16537 = getelementptr inbounds float, float* %16536, i64 2
%16538 = load float, float* %16537
%16539 = fsub float %16535, %16538
%16540 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %16539, float* %16540
%16541 = load float*, float** %10
%16542 = getelementptr inbounds float, float* %16541, i64 0
%16543 = load float, float* %16542
%16544 = load float*, float** %8
%16545 = getelementptr inbounds float, float* %16544, i64 0
%16546 = load float, float* %16545
%16547 = fsub float %16543, %16546
%16548 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %16547, float* %16548
%16549 = load float*, float** %10
%16550 = getelementptr inbounds float, float* %16549, i64 1
%16551 = load float, float* %16550
%16552 = load float*, float** %8
%16553 = getelementptr inbounds float, float* %16552, i64 1
%16554 = load float, float* %16553
%16555 = fsub float %16551, %16554
%16556 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %16555, float* %16556
%16557 = load float*, float** %10
%16558 = getelementptr inbounds float, float* %16557, i64 2
%16559 = load float, float* %16558
%16560 = load float*, float** %8
%16561 = getelementptr inbounds float, float* %16560, i64 2
%16562 = load float, float* %16561
%16563 = fsub float %16559, %16562
%16564 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %16563, float* %16564
%16565 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%16566 = load float, float* %16565
%16567 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%16568 = load float, float* %16567
%16569 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%16570 = load float, float* %16569
%16571 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%16572 = load float, float* %16571
%16573 = fmul float %16570, %16572
%16574 = fneg float %16573
%16575 = call float @llvm.fmuladd.f32(float %16566, float %16568, float %16574)
%16576 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %16575, float* %16576
%16577 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%16578 = load float, float* %16577
%16579 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%16580 = load float, float* %16579
%16581 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%16582 = load float, float* %16581
%16583 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%16584 = load float, float* %16583
%16585 = fmul float %16582, %16584
%16586 = fneg float %16585
%16587 = call float @llvm.fmuladd.f32(float %16578, float %16580, float %16586)
%16588 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %16587, float* %16588
%16589 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%16590 = load float, float* %16589
%16591 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%16592 = load float, float* %16591
%16593 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%16594 = load float, float* %16593
%16595 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%16596 = load float, float* %16595
%16597 = fmul float %16594, %16596
%16598 = fneg float %16597
%16599 = call float @llvm.fmuladd.f32(float %16590, float %16592, float %16598)
%16600 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %16599, float* %16600
%16601 = load float*, float** %12
%16602 = getelementptr inbounds float, float* %16601, i64 0
%16603 = load float, float* %16602
%16604 = load float*, float** %8
%16605 = getelementptr inbounds float, float* %16604, i64 0
%16606 = load float, float* %16605
%16607 = fsub float %16603, %16606
%16608 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %16607, float* %16608
%16609 = load float*, float** %12
%16610 = getelementptr inbounds float, float* %16609, i64 1
%16611 = load float, float* %16610
%16612 = load float*, float** %8
%16613 = getelementptr inbounds float, float* %16612, i64 1
%16614 = load float, float* %16613
%16615 = fsub float %16611, %16614
%16616 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %16615, float* %16616
%16617 = load float*, float** %12
%16618 = getelementptr inbounds float, float* %16617, i64 2
%16619 = load float, float* %16618
%16620 = load float*, float** %8
%16621 = getelementptr inbounds float, float* %16620, i64 2
%16622 = load float, float* %16621
%16623 = fsub float %16619, %16622
%16624 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %16623, float* %16624
%16625 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%16626 = load float, float* %16625
%16627 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%16628 = load float, float* %16627
%16629 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%16630 = load float, float* %16629
%16631 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%16632 = load float, float* %16631
%16633 = fmul float %16630, %16632
%16634 = call float @llvm.fmuladd.f32(float %16626, float %16628, float %16633)
%16635 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%16636 = load float, float* %16635
%16637 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%16638 = load float, float* %16637
%16639 = call float @llvm.fmuladd.f32(float %16636, float %16638, float %16634)
%16640 = fcmp ogt float %16639, 0.000000e+00
br i1 %16640, label %16641, label %16642
16641: ; preds = %16516
store i32 0, i32* %7
br label %37477
16642: ; preds = %16516
store i32 1, i32* %7
br label %37477
16643: ; preds = %15875
%16644 = load float, float* %17
%16645 = fcmp olt float %16644, 0.000000e+00
br i1 %16645, label %16646, label %17411
16646: ; preds = %16643
%16647 = load float, float* %19
%16648 = fcmp olt float %16647, 0.000000e+00
br i1 %16648, label %16649, label %16902
16649: ; preds = %16646
%16650 = load float*, float** %12
%16651 = getelementptr inbounds float, float* %16650, i64 0
%16652 = load float, float* %16651
%16653 = load float*, float** %9
%16654 = getelementptr inbounds float, float* %16653, i64 0
%16655 = load float, float* %16654
%16656 = fsub float %16652, %16655
%16657 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %16656, float* %16657
%16658 = load float*, float** %12
%16659 = getelementptr inbounds float, float* %16658, i64 1
%16660 = load float, float* %16659
%16661 = load float*, float** %9
%16662 = getelementptr inbounds float, float* %16661, i64 1
%16663 = load float, float* %16662
%16664 = fsub float %16660, %16663
%16665 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %16664, float* %16665
%16666 = load float*, float** %12
%16667 = getelementptr inbounds float, float* %16666, i64 2
%16668 = load float, float* %16667
%16669 = load float*, float** %9
%16670 = getelementptr inbounds float, float* %16669, i64 2
%16671 = load float, float* %16670
%16672 = fsub float %16668, %16671
%16673 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %16672, float* %16673
%16674 = load float*, float** %8
%16675 = getelementptr inbounds float, float* %16674, i64 0
%16676 = load float, float* %16675
%16677 = load float*, float** %9
%16678 = getelementptr inbounds float, float* %16677, i64 0
%16679 = load float, float* %16678
%16680 = fsub float %16676, %16679
%16681 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %16680, float* %16681
%16682 = load float*, float** %8
%16683 = getelementptr inbounds float, float* %16682, i64 1
%16684 = load float, float* %16683
%16685 = load float*, float** %9
%16686 = getelementptr inbounds float, float* %16685, i64 1
%16687 = load float, float* %16686
%16688 = fsub float %16684, %16687
%16689 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %16688, float* %16689
%16690 = load float*, float** %8
%16691 = getelementptr inbounds float, float* %16690, i64 2
%16692 = load float, float* %16691
%16693 = load float*, float** %9
%16694 = getelementptr inbounds float, float* %16693, i64 2
%16695 = load float, float* %16694
%16696 = fsub float %16692, %16695
%16697 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %16696, float* %16697
%16698 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%16699 = load float, float* %16698
%16700 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%16701 = load float, float* %16700
%16702 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%16703 = load float, float* %16702
%16704 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%16705 = load float, float* %16704
%16706 = fmul float %16703, %16705
%16707 = fneg float %16706
%16708 = call float @llvm.fmuladd.f32(float %16699, float %16701, float %16707)
%16709 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %16708, float* %16709
%16710 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%16711 = load float, float* %16710
%16712 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%16713 = load float, float* %16712
%16714 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%16715 = load float, float* %16714
%16716 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%16717 = load float, float* %16716
%16718 = fmul float %16715, %16717
%16719 = fneg float %16718
%16720 = call float @llvm.fmuladd.f32(float %16711, float %16713, float %16719)
%16721 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %16720, float* %16721
%16722 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%16723 = load float, float* %16722
%16724 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%16725 = load float, float* %16724
%16726 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%16727 = load float, float* %16726
%16728 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%16729 = load float, float* %16728
%16730 = fmul float %16727, %16729
%16731 = fneg float %16730
%16732 = call float @llvm.fmuladd.f32(float %16723, float %16725, float %16731)
%16733 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %16732, float* %16733
%16734 = load float*, float** %11
%16735 = getelementptr inbounds float, float* %16734, i64 0
%16736 = load float, float* %16735
%16737 = load float*, float** %9
%16738 = getelementptr inbounds float, float* %16737, i64 0
%16739 = load float, float* %16738
%16740 = fsub float %16736, %16739
%16741 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %16740, float* %16741
%16742 = load float*, float** %11
%16743 = getelementptr inbounds float, float* %16742, i64 1
%16744 = load float, float* %16743
%16745 = load float*, float** %9
%16746 = getelementptr inbounds float, float* %16745, i64 1
%16747 = load float, float* %16746
%16748 = fsub float %16744, %16747
%16749 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %16748, float* %16749
%16750 = load float*, float** %11
%16751 = getelementptr inbounds float, float* %16750, i64 2
%16752 = load float, float* %16751
%16753 = load float*, float** %9
%16754 = getelementptr inbounds float, float* %16753, i64 2
%16755 = load float, float* %16754
%16756 = fsub float %16752, %16755
%16757 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %16756, float* %16757
%16758 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%16759 = load float, float* %16758
%16760 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%16761 = load float, float* %16760
%16762 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%16763 = load float, float* %16762
%16764 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%16765 = load float, float* %16764
%16766 = fmul float %16763, %16765
%16767 = call float @llvm.fmuladd.f32(float %16759, float %16761, float %16766)
%16768 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%16769 = load float, float* %16768
%16770 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%16771 = load float, float* %16770
%16772 = call float @llvm.fmuladd.f32(float %16769, float %16771, float %16767)
%16773 = fcmp ogt float %16772, 0.000000e+00
br i1 %16773, label %16774, label %16775
16774: ; preds = %16649
store i32 0, i32* %7
br label %37477
16775: ; preds = %16649
%16776 = load float*, float** %12
%16777 = getelementptr inbounds float, float* %16776, i64 0
%16778 = load float, float* %16777
%16779 = load float*, float** %8
%16780 = getelementptr inbounds float, float* %16779, i64 0
%16781 = load float, float* %16780
%16782 = fsub float %16778, %16781
%16783 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %16782, float* %16783
%16784 = load float*, float** %12
%16785 = getelementptr inbounds float, float* %16784, i64 1
%16786 = load float, float* %16785
%16787 = load float*, float** %8
%16788 = getelementptr inbounds float, float* %16787, i64 1
%16789 = load float, float* %16788
%16790 = fsub float %16786, %16789
%16791 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %16790, float* %16791
%16792 = load float*, float** %12
%16793 = getelementptr inbounds float, float* %16792, i64 2
%16794 = load float, float* %16793
%16795 = load float*, float** %8
%16796 = getelementptr inbounds float, float* %16795, i64 2
%16797 = load float, float* %16796
%16798 = fsub float %16794, %16797
%16799 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %16798, float* %16799
%16800 = load float*, float** %10
%16801 = getelementptr inbounds float, float* %16800, i64 0
%16802 = load float, float* %16801
%16803 = load float*, float** %8
%16804 = getelementptr inbounds float, float* %16803, i64 0
%16805 = load float, float* %16804
%16806 = fsub float %16802, %16805
%16807 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %16806, float* %16807
%16808 = load float*, float** %10
%16809 = getelementptr inbounds float, float* %16808, i64 1
%16810 = load float, float* %16809
%16811 = load float*, float** %8
%16812 = getelementptr inbounds float, float* %16811, i64 1
%16813 = load float, float* %16812
%16814 = fsub float %16810, %16813
%16815 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %16814, float* %16815
%16816 = load float*, float** %10
%16817 = getelementptr inbounds float, float* %16816, i64 2
%16818 = load float, float* %16817
%16819 = load float*, float** %8
%16820 = getelementptr inbounds float, float* %16819, i64 2
%16821 = load float, float* %16820
%16822 = fsub float %16818, %16821
%16823 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %16822, float* %16823
%16824 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%16825 = load float, float* %16824
%16826 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%16827 = load float, float* %16826
%16828 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%16829 = load float, float* %16828
%16830 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%16831 = load float, float* %16830
%16832 = fmul float %16829, %16831
%16833 = fneg float %16832
%16834 = call float @llvm.fmuladd.f32(float %16825, float %16827, float %16833)
%16835 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %16834, float* %16835
%16836 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%16837 = load float, float* %16836
%16838 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%16839 = load float, float* %16838
%16840 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%16841 = load float, float* %16840
%16842 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%16843 = load float, float* %16842
%16844 = fmul float %16841, %16843
%16845 = fneg float %16844
%16846 = call float @llvm.fmuladd.f32(float %16837, float %16839, float %16845)
%16847 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %16846, float* %16847
%16848 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%16849 = load float, float* %16848
%16850 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%16851 = load float, float* %16850
%16852 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%16853 = load float, float* %16852
%16854 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%16855 = load float, float* %16854
%16856 = fmul float %16853, %16855
%16857 = fneg float %16856
%16858 = call float @llvm.fmuladd.f32(float %16849, float %16851, float %16857)
%16859 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %16858, float* %16859
%16860 = load float*, float** %13
%16861 = getelementptr inbounds float, float* %16860, i64 0
%16862 = load float, float* %16861
%16863 = load float*, float** %8
%16864 = getelementptr inbounds float, float* %16863, i64 0
%16865 = load float, float* %16864
%16866 = fsub float %16862, %16865
%16867 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %16866, float* %16867
%16868 = load float*, float** %13
%16869 = getelementptr inbounds float, float* %16868, i64 1
%16870 = load float, float* %16869
%16871 = load float*, float** %8
%16872 = getelementptr inbounds float, float* %16871, i64 1
%16873 = load float, float* %16872
%16874 = fsub float %16870, %16873
%16875 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %16874, float* %16875
%16876 = load float*, float** %13
%16877 = getelementptr inbounds float, float* %16876, i64 2
%16878 = load float, float* %16877
%16879 = load float*, float** %8
%16880 = getelementptr inbounds float, float* %16879, i64 2
%16881 = load float, float* %16880
%16882 = fsub float %16878, %16881
%16883 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %16882, float* %16883
%16884 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%16885 = load float, float* %16884
%16886 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%16887 = load float, float* %16886
%16888 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%16889 = load float, float* %16888
%16890 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%16891 = load float, float* %16890
%16892 = fmul float %16889, %16891
%16893 = call float @llvm.fmuladd.f32(float %16885, float %16887, float %16892)
%16894 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%16895 = load float, float* %16894
%16896 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%16897 = load float, float* %16896
%16898 = call float @llvm.fmuladd.f32(float %16895, float %16897, float %16893)
%16899 = fcmp ogt float %16898, 0.000000e+00
br i1 %16899, label %16900, label %16901
16900: ; preds = %16775
store i32 0, i32* %7
br label %37477
16901: ; preds = %16775
store i32 1, i32* %7
br label %37477
16902: ; preds = %16646
%16903 = load float, float* %18
%16904 = fcmp olt float %16903, 0.000000e+00
br i1 %16904, label %16905, label %17158
16905: ; preds = %16902
%16906 = load float*, float** %13
%16907 = getelementptr inbounds float, float* %16906, i64 0
%16908 = load float, float* %16907
%16909 = load float*, float** %9
%16910 = getelementptr inbounds float, float* %16909, i64 0
%16911 = load float, float* %16910
%16912 = fsub float %16908, %16911
%16913 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %16912, float* %16913
%16914 = load float*, float** %13
%16915 = getelementptr inbounds float, float* %16914, i64 1
%16916 = load float, float* %16915
%16917 = load float*, float** %9
%16918 = getelementptr inbounds float, float* %16917, i64 1
%16919 = load float, float* %16918
%16920 = fsub float %16916, %16919
%16921 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %16920, float* %16921
%16922 = load float*, float** %13
%16923 = getelementptr inbounds float, float* %16922, i64 2
%16924 = load float, float* %16923
%16925 = load float*, float** %9
%16926 = getelementptr inbounds float, float* %16925, i64 2
%16927 = load float, float* %16926
%16928 = fsub float %16924, %16927
%16929 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %16928, float* %16929
%16930 = load float*, float** %8
%16931 = getelementptr inbounds float, float* %16930, i64 0
%16932 = load float, float* %16931
%16933 = load float*, float** %9
%16934 = getelementptr inbounds float, float* %16933, i64 0
%16935 = load float, float* %16934
%16936 = fsub float %16932, %16935
%16937 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %16936, float* %16937
%16938 = load float*, float** %8
%16939 = getelementptr inbounds float, float* %16938, i64 1
%16940 = load float, float* %16939
%16941 = load float*, float** %9
%16942 = getelementptr inbounds float, float* %16941, i64 1
%16943 = load float, float* %16942
%16944 = fsub float %16940, %16943
%16945 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %16944, float* %16945
%16946 = load float*, float** %8
%16947 = getelementptr inbounds float, float* %16946, i64 2
%16948 = load float, float* %16947
%16949 = load float*, float** %9
%16950 = getelementptr inbounds float, float* %16949, i64 2
%16951 = load float, float* %16950
%16952 = fsub float %16948, %16951
%16953 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %16952, float* %16953
%16954 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%16955 = load float, float* %16954
%16956 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%16957 = load float, float* %16956
%16958 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%16959 = load float, float* %16958
%16960 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%16961 = load float, float* %16960
%16962 = fmul float %16959, %16961
%16963 = fneg float %16962
%16964 = call float @llvm.fmuladd.f32(float %16955, float %16957, float %16963)
%16965 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %16964, float* %16965
%16966 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%16967 = load float, float* %16966
%16968 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%16969 = load float, float* %16968
%16970 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%16971 = load float, float* %16970
%16972 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%16973 = load float, float* %16972
%16974 = fmul float %16971, %16973
%16975 = fneg float %16974
%16976 = call float @llvm.fmuladd.f32(float %16967, float %16969, float %16975)
%16977 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %16976, float* %16977
%16978 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%16979 = load float, float* %16978
%16980 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%16981 = load float, float* %16980
%16982 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%16983 = load float, float* %16982
%16984 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%16985 = load float, float* %16984
%16986 = fmul float %16983, %16985
%16987 = fneg float %16986
%16988 = call float @llvm.fmuladd.f32(float %16979, float %16981, float %16987)
%16989 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %16988, float* %16989
%16990 = load float*, float** %12
%16991 = getelementptr inbounds float, float* %16990, i64 0
%16992 = load float, float* %16991
%16993 = load float*, float** %9
%16994 = getelementptr inbounds float, float* %16993, i64 0
%16995 = load float, float* %16994
%16996 = fsub float %16992, %16995
%16997 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %16996, float* %16997
%16998 = load float*, float** %12
%16999 = getelementptr inbounds float, float* %16998, i64 1
%17000 = load float, float* %16999
%17001 = load float*, float** %9
%17002 = getelementptr inbounds float, float* %17001, i64 1
%17003 = load float, float* %17002
%17004 = fsub float %17000, %17003
%17005 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %17004, float* %17005
%17006 = load float*, float** %12
%17007 = getelementptr inbounds float, float* %17006, i64 2
%17008 = load float, float* %17007
%17009 = load float*, float** %9
%17010 = getelementptr inbounds float, float* %17009, i64 2
%17011 = load float, float* %17010
%17012 = fsub float %17008, %17011
%17013 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %17012, float* %17013
%17014 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%17015 = load float, float* %17014
%17016 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%17017 = load float, float* %17016
%17018 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%17019 = load float, float* %17018
%17020 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%17021 = load float, float* %17020
%17022 = fmul float %17019, %17021
%17023 = call float @llvm.fmuladd.f32(float %17015, float %17017, float %17022)
%17024 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%17025 = load float, float* %17024
%17026 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%17027 = load float, float* %17026
%17028 = call float @llvm.fmuladd.f32(float %17025, float %17027, float %17023)
%17029 = fcmp ogt float %17028, 0.000000e+00
br i1 %17029, label %17030, label %17031
17030: ; preds = %16905
store i32 0, i32* %7
br label %37477
17031: ; preds = %16905
%17032 = load float*, float** %13
%17033 = getelementptr inbounds float, float* %17032, i64 0
%17034 = load float, float* %17033
%17035 = load float*, float** %8
%17036 = getelementptr inbounds float, float* %17035, i64 0
%17037 = load float, float* %17036
%17038 = fsub float %17034, %17037
%17039 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %17038, float* %17039
%17040 = load float*, float** %13
%17041 = getelementptr inbounds float, float* %17040, i64 1
%17042 = load float, float* %17041
%17043 = load float*, float** %8
%17044 = getelementptr inbounds float, float* %17043, i64 1
%17045 = load float, float* %17044
%17046 = fsub float %17042, %17045
%17047 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %17046, float* %17047
%17048 = load float*, float** %13
%17049 = getelementptr inbounds float, float* %17048, i64 2
%17050 = load float, float* %17049
%17051 = load float*, float** %8
%17052 = getelementptr inbounds float, float* %17051, i64 2
%17053 = load float, float* %17052
%17054 = fsub float %17050, %17053
%17055 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %17054, float* %17055
%17056 = load float*, float** %10
%17057 = getelementptr inbounds float, float* %17056, i64 0
%17058 = load float, float* %17057
%17059 = load float*, float** %8
%17060 = getelementptr inbounds float, float* %17059, i64 0
%17061 = load float, float* %17060
%17062 = fsub float %17058, %17061
%17063 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %17062, float* %17063
%17064 = load float*, float** %10
%17065 = getelementptr inbounds float, float* %17064, i64 1
%17066 = load float, float* %17065
%17067 = load float*, float** %8
%17068 = getelementptr inbounds float, float* %17067, i64 1
%17069 = load float, float* %17068
%17070 = fsub float %17066, %17069
%17071 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %17070, float* %17071
%17072 = load float*, float** %10
%17073 = getelementptr inbounds float, float* %17072, i64 2
%17074 = load float, float* %17073
%17075 = load float*, float** %8
%17076 = getelementptr inbounds float, float* %17075, i64 2
%17077 = load float, float* %17076
%17078 = fsub float %17074, %17077
%17079 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %17078, float* %17079
%17080 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%17081 = load float, float* %17080
%17082 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%17083 = load float, float* %17082
%17084 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%17085 = load float, float* %17084
%17086 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%17087 = load float, float* %17086
%17088 = fmul float %17085, %17087
%17089 = fneg float %17088
%17090 = call float @llvm.fmuladd.f32(float %17081, float %17083, float %17089)
%17091 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %17090, float* %17091
%17092 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%17093 = load float, float* %17092
%17094 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%17095 = load float, float* %17094
%17096 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%17097 = load float, float* %17096
%17098 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%17099 = load float, float* %17098
%17100 = fmul float %17097, %17099
%17101 = fneg float %17100
%17102 = call float @llvm.fmuladd.f32(float %17093, float %17095, float %17101)
%17103 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %17102, float* %17103
%17104 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%17105 = load float, float* %17104
%17106 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%17107 = load float, float* %17106
%17108 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%17109 = load float, float* %17108
%17110 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%17111 = load float, float* %17110
%17112 = fmul float %17109, %17111
%17113 = fneg float %17112
%17114 = call float @llvm.fmuladd.f32(float %17105, float %17107, float %17113)
%17115 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %17114, float* %17115
%17116 = load float*, float** %11
%17117 = getelementptr inbounds float, float* %17116, i64 0
%17118 = load float, float* %17117
%17119 = load float*, float** %8
%17120 = getelementptr inbounds float, float* %17119, i64 0
%17121 = load float, float* %17120
%17122 = fsub float %17118, %17121
%17123 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %17122, float* %17123
%17124 = load float*, float** %11
%17125 = getelementptr inbounds float, float* %17124, i64 1
%17126 = load float, float* %17125
%17127 = load float*, float** %8
%17128 = getelementptr inbounds float, float* %17127, i64 1
%17129 = load float, float* %17128
%17130 = fsub float %17126, %17129
%17131 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %17130, float* %17131
%17132 = load float*, float** %11
%17133 = getelementptr inbounds float, float* %17132, i64 2
%17134 = load float, float* %17133
%17135 = load float*, float** %8
%17136 = getelementptr inbounds float, float* %17135, i64 2
%17137 = load float, float* %17136
%17138 = fsub float %17134, %17137
%17139 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %17138, float* %17139
%17140 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%17141 = load float, float* %17140
%17142 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%17143 = load float, float* %17142
%17144 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%17145 = load float, float* %17144
%17146 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%17147 = load float, float* %17146
%17148 = fmul float %17145, %17147
%17149 = call float @llvm.fmuladd.f32(float %17141, float %17143, float %17148)
%17150 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%17151 = load float, float* %17150
%17152 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%17153 = load float, float* %17152
%17154 = call float @llvm.fmuladd.f32(float %17151, float %17153, float %17149)
%17155 = fcmp ogt float %17154, 0.000000e+00
br i1 %17155, label %17156, label %17157
17156: ; preds = %17031
store i32 0, i32* %7
br label %37477
17157: ; preds = %17031
store i32 1, i32* %7
br label %37477
17158: ; preds = %16902
%17159 = load float*, float** %11
%17160 = getelementptr inbounds float, float* %17159, i64 0
%17161 = load float, float* %17160
%17162 = load float*, float** %10
%17163 = getelementptr inbounds float, float* %17162, i64 0
%17164 = load float, float* %17163
%17165 = fsub float %17161, %17164
%17166 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %17165, float* %17166
%17167 = load float*, float** %11
%17168 = getelementptr inbounds float, float* %17167, i64 1
%17169 = load float, float* %17168
%17170 = load float*, float** %10
%17171 = getelementptr inbounds float, float* %17170, i64 1
%17172 = load float, float* %17171
%17173 = fsub float %17169, %17172
%17174 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %17173, float* %17174
%17175 = load float*, float** %11
%17176 = getelementptr inbounds float, float* %17175, i64 2
%17177 = load float, float* %17176
%17178 = load float*, float** %10
%17179 = getelementptr inbounds float, float* %17178, i64 2
%17180 = load float, float* %17179
%17181 = fsub float %17177, %17180
%17182 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %17181, float* %17182
%17183 = load float*, float** %8
%17184 = getelementptr inbounds float, float* %17183, i64 0
%17185 = load float, float* %17184
%17186 = load float*, float** %10
%17187 = getelementptr inbounds float, float* %17186, i64 0
%17188 = load float, float* %17187
%17189 = fsub float %17185, %17188
%17190 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %17189, float* %17190
%17191 = load float*, float** %8
%17192 = getelementptr inbounds float, float* %17191, i64 1
%17193 = load float, float* %17192
%17194 = load float*, float** %10
%17195 = getelementptr inbounds float, float* %17194, i64 1
%17196 = load float, float* %17195
%17197 = fsub float %17193, %17196
%17198 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %17197, float* %17198
%17199 = load float*, float** %8
%17200 = getelementptr inbounds float, float* %17199, i64 2
%17201 = load float, float* %17200
%17202 = load float*, float** %10
%17203 = getelementptr inbounds float, float* %17202, i64 2
%17204 = load float, float* %17203
%17205 = fsub float %17201, %17204
%17206 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %17205, float* %17206
%17207 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%17208 = load float, float* %17207
%17209 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%17210 = load float, float* %17209
%17211 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%17212 = load float, float* %17211
%17213 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%17214 = load float, float* %17213
%17215 = fmul float %17212, %17214
%17216 = fneg float %17215
%17217 = call float @llvm.fmuladd.f32(float %17208, float %17210, float %17216)
%17218 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %17217, float* %17218
%17219 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%17220 = load float, float* %17219
%17221 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%17222 = load float, float* %17221
%17223 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%17224 = load float, float* %17223
%17225 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%17226 = load float, float* %17225
%17227 = fmul float %17224, %17226
%17228 = fneg float %17227
%17229 = call float @llvm.fmuladd.f32(float %17220, float %17222, float %17228)
%17230 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %17229, float* %17230
%17231 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%17232 = load float, float* %17231
%17233 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%17234 = load float, float* %17233
%17235 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%17236 = load float, float* %17235
%17237 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%17238 = load float, float* %17237
%17239 = fmul float %17236, %17238
%17240 = fneg float %17239
%17241 = call float @llvm.fmuladd.f32(float %17232, float %17234, float %17240)
%17242 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %17241, float* %17242
%17243 = load float*, float** %13
%17244 = getelementptr inbounds float, float* %17243, i64 0
%17245 = load float, float* %17244
%17246 = load float*, float** %10
%17247 = getelementptr inbounds float, float* %17246, i64 0
%17248 = load float, float* %17247
%17249 = fsub float %17245, %17248
%17250 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %17249, float* %17250
%17251 = load float*, float** %13
%17252 = getelementptr inbounds float, float* %17251, i64 1
%17253 = load float, float* %17252
%17254 = load float*, float** %10
%17255 = getelementptr inbounds float, float* %17254, i64 1
%17256 = load float, float* %17255
%17257 = fsub float %17253, %17256
%17258 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %17257, float* %17258
%17259 = load float*, float** %13
%17260 = getelementptr inbounds float, float* %17259, i64 2
%17261 = load float, float* %17260
%17262 = load float*, float** %10
%17263 = getelementptr inbounds float, float* %17262, i64 2
%17264 = load float, float* %17263
%17265 = fsub float %17261, %17264
%17266 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %17265, float* %17266
%17267 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%17268 = load float, float* %17267
%17269 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%17270 = load float, float* %17269
%17271 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%17272 = load float, float* %17271
%17273 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%17274 = load float, float* %17273
%17275 = fmul float %17272, %17274
%17276 = call float @llvm.fmuladd.f32(float %17268, float %17270, float %17275)
%17277 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%17278 = load float, float* %17277
%17279 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%17280 = load float, float* %17279
%17281 = call float @llvm.fmuladd.f32(float %17278, float %17280, float %17276)
%17282 = fcmp ogt float %17281, 0.000000e+00
br i1 %17282, label %17283, label %17284
17283: ; preds = %17158
store i32 0, i32* %7
br label %37477
17284: ; preds = %17158
%17285 = load float*, float** %11
%17286 = getelementptr inbounds float, float* %17285, i64 0
%17287 = load float, float* %17286
%17288 = load float*, float** %8
%17289 = getelementptr inbounds float, float* %17288, i64 0
%17290 = load float, float* %17289
%17291 = fsub float %17287, %17290
%17292 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %17291, float* %17292
%17293 = load float*, float** %11
%17294 = getelementptr inbounds float, float* %17293, i64 1
%17295 = load float, float* %17294
%17296 = load float*, float** %8
%17297 = getelementptr inbounds float, float* %17296, i64 1
%17298 = load float, float* %17297
%17299 = fsub float %17295, %17298
%17300 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %17299, float* %17300
%17301 = load float*, float** %11
%17302 = getelementptr inbounds float, float* %17301, i64 2
%17303 = load float, float* %17302
%17304 = load float*, float** %8
%17305 = getelementptr inbounds float, float* %17304, i64 2
%17306 = load float, float* %17305
%17307 = fsub float %17303, %17306
%17308 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %17307, float* %17308
%17309 = load float*, float** %9
%17310 = getelementptr inbounds float, float* %17309, i64 0
%17311 = load float, float* %17310
%17312 = load float*, float** %8
%17313 = getelementptr inbounds float, float* %17312, i64 0
%17314 = load float, float* %17313
%17315 = fsub float %17311, %17314
%17316 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %17315, float* %17316
%17317 = load float*, float** %9
%17318 = getelementptr inbounds float, float* %17317, i64 1
%17319 = load float, float* %17318
%17320 = load float*, float** %8
%17321 = getelementptr inbounds float, float* %17320, i64 1
%17322 = load float, float* %17321
%17323 = fsub float %17319, %17322
%17324 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %17323, float* %17324
%17325 = load float*, float** %9
%17326 = getelementptr inbounds float, float* %17325, i64 2
%17327 = load float, float* %17326
%17328 = load float*, float** %8
%17329 = getelementptr inbounds float, float* %17328, i64 2
%17330 = load float, float* %17329
%17331 = fsub float %17327, %17330
%17332 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %17331, float* %17332
%17333 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%17334 = load float, float* %17333
%17335 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%17336 = load float, float* %17335
%17337 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%17338 = load float, float* %17337
%17339 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%17340 = load float, float* %17339
%17341 = fmul float %17338, %17340
%17342 = fneg float %17341
%17343 = call float @llvm.fmuladd.f32(float %17334, float %17336, float %17342)
%17344 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %17343, float* %17344
%17345 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%17346 = load float, float* %17345
%17347 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%17348 = load float, float* %17347
%17349 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%17350 = load float, float* %17349
%17351 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%17352 = load float, float* %17351
%17353 = fmul float %17350, %17352
%17354 = fneg float %17353
%17355 = call float @llvm.fmuladd.f32(float %17346, float %17348, float %17354)
%17356 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %17355, float* %17356
%17357 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%17358 = load float, float* %17357
%17359 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%17360 = load float, float* %17359
%17361 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%17362 = load float, float* %17361
%17363 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%17364 = load float, float* %17363
%17365 = fmul float %17362, %17364
%17366 = fneg float %17365
%17367 = call float @llvm.fmuladd.f32(float %17358, float %17360, float %17366)
%17368 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %17367, float* %17368
%17369 = load float*, float** %12
%17370 = getelementptr inbounds float, float* %17369, i64 0
%17371 = load float, float* %17370
%17372 = load float*, float** %8
%17373 = getelementptr inbounds float, float* %17372, i64 0
%17374 = load float, float* %17373
%17375 = fsub float %17371, %17374
%17376 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %17375, float* %17376
%17377 = load float*, float** %12
%17378 = getelementptr inbounds float, float* %17377, i64 1
%17379 = load float, float* %17378
%17380 = load float*, float** %8
%17381 = getelementptr inbounds float, float* %17380, i64 1
%17382 = load float, float* %17381
%17383 = fsub float %17379, %17382
%17384 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %17383, float* %17384
%17385 = load float*, float** %12
%17386 = getelementptr inbounds float, float* %17385, i64 2
%17387 = load float, float* %17386
%17388 = load float*, float** %8
%17389 = getelementptr inbounds float, float* %17388, i64 2
%17390 = load float, float* %17389
%17391 = fsub float %17387, %17390
%17392 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %17391, float* %17392
%17393 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%17394 = load float, float* %17393
%17395 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%17396 = load float, float* %17395
%17397 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%17398 = load float, float* %17397
%17399 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%17400 = load float, float* %17399
%17401 = fmul float %17398, %17400
%17402 = call float @llvm.fmuladd.f32(float %17394, float %17396, float %17401)
%17403 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%17404 = load float, float* %17403
%17405 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%17406 = load float, float* %17405
%17407 = call float @llvm.fmuladd.f32(float %17404, float %17406, float %17402)
%17408 = fcmp ogt float %17407, 0.000000e+00
br i1 %17408, label %17409, label %17410
17409: ; preds = %17284
store i32 0, i32* %7
br label %37477
17410: ; preds = %17284
store i32 1, i32* %7
br label %37477
17411: ; preds = %16643
%17412 = load float, float* %19
%17413 = fcmp olt float %17412, 0.000000e+00
br i1 %17413, label %17414, label %17923
17414: ; preds = %17411
%17415 = load float, float* %18
%17416 = fcmp oge float %17415, 0.000000e+00
br i1 %17416, label %17417, label %17670
17417: ; preds = %17414
%17418 = load float*, float** %13
%17419 = getelementptr inbounds float, float* %17418, i64 0
%17420 = load float, float* %17419
%17421 = load float*, float** %10
%17422 = getelementptr inbounds float, float* %17421, i64 0
%17423 = load float, float* %17422
%17424 = fsub float %17420, %17423
%17425 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %17424, float* %17425
%17426 = load float*, float** %13
%17427 = getelementptr inbounds float, float* %17426, i64 1
%17428 = load float, float* %17427
%17429 = load float*, float** %10
%17430 = getelementptr inbounds float, float* %17429, i64 1
%17431 = load float, float* %17430
%17432 = fsub float %17428, %17431
%17433 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %17432, float* %17433
%17434 = load float*, float** %13
%17435 = getelementptr inbounds float, float* %17434, i64 2
%17436 = load float, float* %17435
%17437 = load float*, float** %10
%17438 = getelementptr inbounds float, float* %17437, i64 2
%17439 = load float, float* %17438
%17440 = fsub float %17436, %17439
%17441 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %17440, float* %17441
%17442 = load float*, float** %8
%17443 = getelementptr inbounds float, float* %17442, i64 0
%17444 = load float, float* %17443
%17445 = load float*, float** %10
%17446 = getelementptr inbounds float, float* %17445, i64 0
%17447 = load float, float* %17446
%17448 = fsub float %17444, %17447
%17449 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %17448, float* %17449
%17450 = load float*, float** %8
%17451 = getelementptr inbounds float, float* %17450, i64 1
%17452 = load float, float* %17451
%17453 = load float*, float** %10
%17454 = getelementptr inbounds float, float* %17453, i64 1
%17455 = load float, float* %17454
%17456 = fsub float %17452, %17455
%17457 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %17456, float* %17457
%17458 = load float*, float** %8
%17459 = getelementptr inbounds float, float* %17458, i64 2
%17460 = load float, float* %17459
%17461 = load float*, float** %10
%17462 = getelementptr inbounds float, float* %17461, i64 2
%17463 = load float, float* %17462
%17464 = fsub float %17460, %17463
%17465 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %17464, float* %17465
%17466 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%17467 = load float, float* %17466
%17468 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%17469 = load float, float* %17468
%17470 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%17471 = load float, float* %17470
%17472 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%17473 = load float, float* %17472
%17474 = fmul float %17471, %17473
%17475 = fneg float %17474
%17476 = call float @llvm.fmuladd.f32(float %17467, float %17469, float %17475)
%17477 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %17476, float* %17477
%17478 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%17479 = load float, float* %17478
%17480 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%17481 = load float, float* %17480
%17482 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%17483 = load float, float* %17482
%17484 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%17485 = load float, float* %17484
%17486 = fmul float %17483, %17485
%17487 = fneg float %17486
%17488 = call float @llvm.fmuladd.f32(float %17479, float %17481, float %17487)
%17489 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %17488, float* %17489
%17490 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%17491 = load float, float* %17490
%17492 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%17493 = load float, float* %17492
%17494 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%17495 = load float, float* %17494
%17496 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%17497 = load float, float* %17496
%17498 = fmul float %17495, %17497
%17499 = fneg float %17498
%17500 = call float @llvm.fmuladd.f32(float %17491, float %17493, float %17499)
%17501 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %17500, float* %17501
%17502 = load float*, float** %12
%17503 = getelementptr inbounds float, float* %17502, i64 0
%17504 = load float, float* %17503
%17505 = load float*, float** %10
%17506 = getelementptr inbounds float, float* %17505, i64 0
%17507 = load float, float* %17506
%17508 = fsub float %17504, %17507
%17509 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %17508, float* %17509
%17510 = load float*, float** %12
%17511 = getelementptr inbounds float, float* %17510, i64 1
%17512 = load float, float* %17511
%17513 = load float*, float** %10
%17514 = getelementptr inbounds float, float* %17513, i64 1
%17515 = load float, float* %17514
%17516 = fsub float %17512, %17515
%17517 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %17516, float* %17517
%17518 = load float*, float** %12
%17519 = getelementptr inbounds float, float* %17518, i64 2
%17520 = load float, float* %17519
%17521 = load float*, float** %10
%17522 = getelementptr inbounds float, float* %17521, i64 2
%17523 = load float, float* %17522
%17524 = fsub float %17520, %17523
%17525 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %17524, float* %17525
%17526 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%17527 = load float, float* %17526
%17528 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%17529 = load float, float* %17528
%17530 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%17531 = load float, float* %17530
%17532 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%17533 = load float, float* %17532
%17534 = fmul float %17531, %17533
%17535 = call float @llvm.fmuladd.f32(float %17527, float %17529, float %17534)
%17536 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%17537 = load float, float* %17536
%17538 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%17539 = load float, float* %17538
%17540 = call float @llvm.fmuladd.f32(float %17537, float %17539, float %17535)
%17541 = fcmp ogt float %17540, 0.000000e+00
br i1 %17541, label %17542, label %17543
17542: ; preds = %17417
store i32 0, i32* %7
br label %37477
17543: ; preds = %17417
%17544 = load float*, float** %13
%17545 = getelementptr inbounds float, float* %17544, i64 0
%17546 = load float, float* %17545
%17547 = load float*, float** %8
%17548 = getelementptr inbounds float, float* %17547, i64 0
%17549 = load float, float* %17548
%17550 = fsub float %17546, %17549
%17551 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %17550, float* %17551
%17552 = load float*, float** %13
%17553 = getelementptr inbounds float, float* %17552, i64 1
%17554 = load float, float* %17553
%17555 = load float*, float** %8
%17556 = getelementptr inbounds float, float* %17555, i64 1
%17557 = load float, float* %17556
%17558 = fsub float %17554, %17557
%17559 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %17558, float* %17559
%17560 = load float*, float** %13
%17561 = getelementptr inbounds float, float* %17560, i64 2
%17562 = load float, float* %17561
%17563 = load float*, float** %8
%17564 = getelementptr inbounds float, float* %17563, i64 2
%17565 = load float, float* %17564
%17566 = fsub float %17562, %17565
%17567 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %17566, float* %17567
%17568 = load float*, float** %9
%17569 = getelementptr inbounds float, float* %17568, i64 0
%17570 = load float, float* %17569
%17571 = load float*, float** %8
%17572 = getelementptr inbounds float, float* %17571, i64 0
%17573 = load float, float* %17572
%17574 = fsub float %17570, %17573
%17575 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %17574, float* %17575
%17576 = load float*, float** %9
%17577 = getelementptr inbounds float, float* %17576, i64 1
%17578 = load float, float* %17577
%17579 = load float*, float** %8
%17580 = getelementptr inbounds float, float* %17579, i64 1
%17581 = load float, float* %17580
%17582 = fsub float %17578, %17581
%17583 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %17582, float* %17583
%17584 = load float*, float** %9
%17585 = getelementptr inbounds float, float* %17584, i64 2
%17586 = load float, float* %17585
%17587 = load float*, float** %8
%17588 = getelementptr inbounds float, float* %17587, i64 2
%17589 = load float, float* %17588
%17590 = fsub float %17586, %17589
%17591 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %17590, float* %17591
%17592 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%17593 = load float, float* %17592
%17594 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%17595 = load float, float* %17594
%17596 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%17597 = load float, float* %17596
%17598 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%17599 = load float, float* %17598
%17600 = fmul float %17597, %17599
%17601 = fneg float %17600
%17602 = call float @llvm.fmuladd.f32(float %17593, float %17595, float %17601)
%17603 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %17602, float* %17603
%17604 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%17605 = load float, float* %17604
%17606 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%17607 = load float, float* %17606
%17608 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%17609 = load float, float* %17608
%17610 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%17611 = load float, float* %17610
%17612 = fmul float %17609, %17611
%17613 = fneg float %17612
%17614 = call float @llvm.fmuladd.f32(float %17605, float %17607, float %17613)
%17615 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %17614, float* %17615
%17616 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%17617 = load float, float* %17616
%17618 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%17619 = load float, float* %17618
%17620 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%17621 = load float, float* %17620
%17622 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%17623 = load float, float* %17622
%17624 = fmul float %17621, %17623
%17625 = fneg float %17624
%17626 = call float @llvm.fmuladd.f32(float %17617, float %17619, float %17625)
%17627 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %17626, float* %17627
%17628 = load float*, float** %11
%17629 = getelementptr inbounds float, float* %17628, i64 0
%17630 = load float, float* %17629
%17631 = load float*, float** %8
%17632 = getelementptr inbounds float, float* %17631, i64 0
%17633 = load float, float* %17632
%17634 = fsub float %17630, %17633
%17635 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %17634, float* %17635
%17636 = load float*, float** %11
%17637 = getelementptr inbounds float, float* %17636, i64 1
%17638 = load float, float* %17637
%17639 = load float*, float** %8
%17640 = getelementptr inbounds float, float* %17639, i64 1
%17641 = load float, float* %17640
%17642 = fsub float %17638, %17641
%17643 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %17642, float* %17643
%17644 = load float*, float** %11
%17645 = getelementptr inbounds float, float* %17644, i64 2
%17646 = load float, float* %17645
%17647 = load float*, float** %8
%17648 = getelementptr inbounds float, float* %17647, i64 2
%17649 = load float, float* %17648
%17650 = fsub float %17646, %17649
%17651 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %17650, float* %17651
%17652 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%17653 = load float, float* %17652
%17654 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%17655 = load float, float* %17654
%17656 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%17657 = load float, float* %17656
%17658 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%17659 = load float, float* %17658
%17660 = fmul float %17657, %17659
%17661 = call float @llvm.fmuladd.f32(float %17653, float %17655, float %17660)
%17662 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%17663 = load float, float* %17662
%17664 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%17665 = load float, float* %17664
%17666 = call float @llvm.fmuladd.f32(float %17663, float %17665, float %17661)
%17667 = fcmp ogt float %17666, 0.000000e+00
br i1 %17667, label %17668, label %17669
17668: ; preds = %17543
store i32 0, i32* %7
br label %37477
17669: ; preds = %17543
store i32 1, i32* %7
br label %37477
17670: ; preds = %17414
%17671 = load float*, float** %11
%17672 = getelementptr inbounds float, float* %17671, i64 0
%17673 = load float, float* %17672
%17674 = load float*, float** %9
%17675 = getelementptr inbounds float, float* %17674, i64 0
%17676 = load float, float* %17675
%17677 = fsub float %17673, %17676
%17678 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %17677, float* %17678
%17679 = load float*, float** %11
%17680 = getelementptr inbounds float, float* %17679, i64 1
%17681 = load float, float* %17680
%17682 = load float*, float** %9
%17683 = getelementptr inbounds float, float* %17682, i64 1
%17684 = load float, float* %17683
%17685 = fsub float %17681, %17684
%17686 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %17685, float* %17686
%17687 = load float*, float** %11
%17688 = getelementptr inbounds float, float* %17687, i64 2
%17689 = load float, float* %17688
%17690 = load float*, float** %9
%17691 = getelementptr inbounds float, float* %17690, i64 2
%17692 = load float, float* %17691
%17693 = fsub float %17689, %17692
%17694 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %17693, float* %17694
%17695 = load float*, float** %8
%17696 = getelementptr inbounds float, float* %17695, i64 0
%17697 = load float, float* %17696
%17698 = load float*, float** %9
%17699 = getelementptr inbounds float, float* %17698, i64 0
%17700 = load float, float* %17699
%17701 = fsub float %17697, %17700
%17702 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %17701, float* %17702
%17703 = load float*, float** %8
%17704 = getelementptr inbounds float, float* %17703, i64 1
%17705 = load float, float* %17704
%17706 = load float*, float** %9
%17707 = getelementptr inbounds float, float* %17706, i64 1
%17708 = load float, float* %17707
%17709 = fsub float %17705, %17708
%17710 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %17709, float* %17710
%17711 = load float*, float** %8
%17712 = getelementptr inbounds float, float* %17711, i64 2
%17713 = load float, float* %17712
%17714 = load float*, float** %9
%17715 = getelementptr inbounds float, float* %17714, i64 2
%17716 = load float, float* %17715
%17717 = fsub float %17713, %17716
%17718 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %17717, float* %17718
%17719 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%17720 = load float, float* %17719
%17721 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%17722 = load float, float* %17721
%17723 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%17724 = load float, float* %17723
%17725 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%17726 = load float, float* %17725
%17727 = fmul float %17724, %17726
%17728 = fneg float %17727
%17729 = call float @llvm.fmuladd.f32(float %17720, float %17722, float %17728)
%17730 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %17729, float* %17730
%17731 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%17732 = load float, float* %17731
%17733 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%17734 = load float, float* %17733
%17735 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%17736 = load float, float* %17735
%17737 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%17738 = load float, float* %17737
%17739 = fmul float %17736, %17738
%17740 = fneg float %17739
%17741 = call float @llvm.fmuladd.f32(float %17732, float %17734, float %17740)
%17742 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %17741, float* %17742
%17743 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%17744 = load float, float* %17743
%17745 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%17746 = load float, float* %17745
%17747 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%17748 = load float, float* %17747
%17749 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%17750 = load float, float* %17749
%17751 = fmul float %17748, %17750
%17752 = fneg float %17751
%17753 = call float @llvm.fmuladd.f32(float %17744, float %17746, float %17752)
%17754 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %17753, float* %17754
%17755 = load float*, float** %13
%17756 = getelementptr inbounds float, float* %17755, i64 0
%17757 = load float, float* %17756
%17758 = load float*, float** %9
%17759 = getelementptr inbounds float, float* %17758, i64 0
%17760 = load float, float* %17759
%17761 = fsub float %17757, %17760
%17762 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %17761, float* %17762
%17763 = load float*, float** %13
%17764 = getelementptr inbounds float, float* %17763, i64 1
%17765 = load float, float* %17764
%17766 = load float*, float** %9
%17767 = getelementptr inbounds float, float* %17766, i64 1
%17768 = load float, float* %17767
%17769 = fsub float %17765, %17768
%17770 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %17769, float* %17770
%17771 = load float*, float** %13
%17772 = getelementptr inbounds float, float* %17771, i64 2
%17773 = load float, float* %17772
%17774 = load float*, float** %9
%17775 = getelementptr inbounds float, float* %17774, i64 2
%17776 = load float, float* %17775
%17777 = fsub float %17773, %17776
%17778 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %17777, float* %17778
%17779 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%17780 = load float, float* %17779
%17781 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%17782 = load float, float* %17781
%17783 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%17784 = load float, float* %17783
%17785 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%17786 = load float, float* %17785
%17787 = fmul float %17784, %17786
%17788 = call float @llvm.fmuladd.f32(float %17780, float %17782, float %17787)
%17789 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%17790 = load float, float* %17789
%17791 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%17792 = load float, float* %17791
%17793 = call float @llvm.fmuladd.f32(float %17790, float %17792, float %17788)
%17794 = fcmp ogt float %17793, 0.000000e+00
br i1 %17794, label %17795, label %17796
17795: ; preds = %17670
store i32 0, i32* %7
br label %37477
17796: ; preds = %17670
%17797 = load float*, float** %11
%17798 = getelementptr inbounds float, float* %17797, i64 0
%17799 = load float, float* %17798
%17800 = load float*, float** %8
%17801 = getelementptr inbounds float, float* %17800, i64 0
%17802 = load float, float* %17801
%17803 = fsub float %17799, %17802
%17804 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %17803, float* %17804
%17805 = load float*, float** %11
%17806 = getelementptr inbounds float, float* %17805, i64 1
%17807 = load float, float* %17806
%17808 = load float*, float** %8
%17809 = getelementptr inbounds float, float* %17808, i64 1
%17810 = load float, float* %17809
%17811 = fsub float %17807, %17810
%17812 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %17811, float* %17812
%17813 = load float*, float** %11
%17814 = getelementptr inbounds float, float* %17813, i64 2
%17815 = load float, float* %17814
%17816 = load float*, float** %8
%17817 = getelementptr inbounds float, float* %17816, i64 2
%17818 = load float, float* %17817
%17819 = fsub float %17815, %17818
%17820 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %17819, float* %17820
%17821 = load float*, float** %10
%17822 = getelementptr inbounds float, float* %17821, i64 0
%17823 = load float, float* %17822
%17824 = load float*, float** %8
%17825 = getelementptr inbounds float, float* %17824, i64 0
%17826 = load float, float* %17825
%17827 = fsub float %17823, %17826
%17828 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %17827, float* %17828
%17829 = load float*, float** %10
%17830 = getelementptr inbounds float, float* %17829, i64 1
%17831 = load float, float* %17830
%17832 = load float*, float** %8
%17833 = getelementptr inbounds float, float* %17832, i64 1
%17834 = load float, float* %17833
%17835 = fsub float %17831, %17834
%17836 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %17835, float* %17836
%17837 = load float*, float** %10
%17838 = getelementptr inbounds float, float* %17837, i64 2
%17839 = load float, float* %17838
%17840 = load float*, float** %8
%17841 = getelementptr inbounds float, float* %17840, i64 2
%17842 = load float, float* %17841
%17843 = fsub float %17839, %17842
%17844 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %17843, float* %17844
%17845 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%17846 = load float, float* %17845
%17847 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%17848 = load float, float* %17847
%17849 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%17850 = load float, float* %17849
%17851 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%17852 = load float, float* %17851
%17853 = fmul float %17850, %17852
%17854 = fneg float %17853
%17855 = call float @llvm.fmuladd.f32(float %17846, float %17848, float %17854)
%17856 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %17855, float* %17856
%17857 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%17858 = load float, float* %17857
%17859 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%17860 = load float, float* %17859
%17861 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%17862 = load float, float* %17861
%17863 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%17864 = load float, float* %17863
%17865 = fmul float %17862, %17864
%17866 = fneg float %17865
%17867 = call float @llvm.fmuladd.f32(float %17858, float %17860, float %17866)
%17868 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %17867, float* %17868
%17869 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%17870 = load float, float* %17869
%17871 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%17872 = load float, float* %17871
%17873 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%17874 = load float, float* %17873
%17875 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%17876 = load float, float* %17875
%17877 = fmul float %17874, %17876
%17878 = fneg float %17877
%17879 = call float @llvm.fmuladd.f32(float %17870, float %17872, float %17878)
%17880 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %17879, float* %17880
%17881 = load float*, float** %12
%17882 = getelementptr inbounds float, float* %17881, i64 0
%17883 = load float, float* %17882
%17884 = load float*, float** %8
%17885 = getelementptr inbounds float, float* %17884, i64 0
%17886 = load float, float* %17885
%17887 = fsub float %17883, %17886
%17888 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %17887, float* %17888
%17889 = load float*, float** %12
%17890 = getelementptr inbounds float, float* %17889, i64 1
%17891 = load float, float* %17890
%17892 = load float*, float** %8
%17893 = getelementptr inbounds float, float* %17892, i64 1
%17894 = load float, float* %17893
%17895 = fsub float %17891, %17894
%17896 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %17895, float* %17896
%17897 = load float*, float** %12
%17898 = getelementptr inbounds float, float* %17897, i64 2
%17899 = load float, float* %17898
%17900 = load float*, float** %8
%17901 = getelementptr inbounds float, float* %17900, i64 2
%17902 = load float, float* %17901
%17903 = fsub float %17899, %17902
%17904 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %17903, float* %17904
%17905 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%17906 = load float, float* %17905
%17907 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%17908 = load float, float* %17907
%17909 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%17910 = load float, float* %17909
%17911 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%17912 = load float, float* %17911
%17913 = fmul float %17910, %17912
%17914 = call float @llvm.fmuladd.f32(float %17906, float %17908, float %17913)
%17915 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%17916 = load float, float* %17915
%17917 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%17918 = load float, float* %17917
%17919 = call float @llvm.fmuladd.f32(float %17916, float %17918, float %17914)
%17920 = fcmp ogt float %17919, 0.000000e+00
br i1 %17920, label %17921, label %17922
17921: ; preds = %17796
store i32 0, i32* %7
br label %37477
17922: ; preds = %17796
store i32 1, i32* %7
br label %37477
17923: ; preds = %17411
%17924 = load float, float* %19
%17925 = fcmp ogt float %17924, 0.000000e+00
br i1 %17925, label %17926, label %18435
17926: ; preds = %17923
%17927 = load float, float* %18
%17928 = fcmp ogt float %17927, 0.000000e+00
br i1 %17928, label %17929, label %18182
17929: ; preds = %17926
%17930 = load float*, float** %11
%17931 = getelementptr inbounds float, float* %17930, i64 0
%17932 = load float, float* %17931
%17933 = load float*, float** %10
%17934 = getelementptr inbounds float, float* %17933, i64 0
%17935 = load float, float* %17934
%17936 = fsub float %17932, %17935
%17937 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %17936, float* %17937
%17938 = load float*, float** %11
%17939 = getelementptr inbounds float, float* %17938, i64 1
%17940 = load float, float* %17939
%17941 = load float*, float** %10
%17942 = getelementptr inbounds float, float* %17941, i64 1
%17943 = load float, float* %17942
%17944 = fsub float %17940, %17943
%17945 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %17944, float* %17945
%17946 = load float*, float** %11
%17947 = getelementptr inbounds float, float* %17946, i64 2
%17948 = load float, float* %17947
%17949 = load float*, float** %10
%17950 = getelementptr inbounds float, float* %17949, i64 2
%17951 = load float, float* %17950
%17952 = fsub float %17948, %17951
%17953 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %17952, float* %17953
%17954 = load float*, float** %8
%17955 = getelementptr inbounds float, float* %17954, i64 0
%17956 = load float, float* %17955
%17957 = load float*, float** %10
%17958 = getelementptr inbounds float, float* %17957, i64 0
%17959 = load float, float* %17958
%17960 = fsub float %17956, %17959
%17961 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %17960, float* %17961
%17962 = load float*, float** %8
%17963 = getelementptr inbounds float, float* %17962, i64 1
%17964 = load float, float* %17963
%17965 = load float*, float** %10
%17966 = getelementptr inbounds float, float* %17965, i64 1
%17967 = load float, float* %17966
%17968 = fsub float %17964, %17967
%17969 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %17968, float* %17969
%17970 = load float*, float** %8
%17971 = getelementptr inbounds float, float* %17970, i64 2
%17972 = load float, float* %17971
%17973 = load float*, float** %10
%17974 = getelementptr inbounds float, float* %17973, i64 2
%17975 = load float, float* %17974
%17976 = fsub float %17972, %17975
%17977 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %17976, float* %17977
%17978 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%17979 = load float, float* %17978
%17980 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%17981 = load float, float* %17980
%17982 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%17983 = load float, float* %17982
%17984 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%17985 = load float, float* %17984
%17986 = fmul float %17983, %17985
%17987 = fneg float %17986
%17988 = call float @llvm.fmuladd.f32(float %17979, float %17981, float %17987)
%17989 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %17988, float* %17989
%17990 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%17991 = load float, float* %17990
%17992 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%17993 = load float, float* %17992
%17994 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%17995 = load float, float* %17994
%17996 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%17997 = load float, float* %17996
%17998 = fmul float %17995, %17997
%17999 = fneg float %17998
%18000 = call float @llvm.fmuladd.f32(float %17991, float %17993, float %17999)
%18001 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %18000, float* %18001
%18002 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%18003 = load float, float* %18002
%18004 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%18005 = load float, float* %18004
%18006 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%18007 = load float, float* %18006
%18008 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%18009 = load float, float* %18008
%18010 = fmul float %18007, %18009
%18011 = fneg float %18010
%18012 = call float @llvm.fmuladd.f32(float %18003, float %18005, float %18011)
%18013 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %18012, float* %18013
%18014 = load float*, float** %13
%18015 = getelementptr inbounds float, float* %18014, i64 0
%18016 = load float, float* %18015
%18017 = load float*, float** %10
%18018 = getelementptr inbounds float, float* %18017, i64 0
%18019 = load float, float* %18018
%18020 = fsub float %18016, %18019
%18021 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %18020, float* %18021
%18022 = load float*, float** %13
%18023 = getelementptr inbounds float, float* %18022, i64 1
%18024 = load float, float* %18023
%18025 = load float*, float** %10
%18026 = getelementptr inbounds float, float* %18025, i64 1
%18027 = load float, float* %18026
%18028 = fsub float %18024, %18027
%18029 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %18028, float* %18029
%18030 = load float*, float** %13
%18031 = getelementptr inbounds float, float* %18030, i64 2
%18032 = load float, float* %18031
%18033 = load float*, float** %10
%18034 = getelementptr inbounds float, float* %18033, i64 2
%18035 = load float, float* %18034
%18036 = fsub float %18032, %18035
%18037 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %18036, float* %18037
%18038 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%18039 = load float, float* %18038
%18040 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%18041 = load float, float* %18040
%18042 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%18043 = load float, float* %18042
%18044 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%18045 = load float, float* %18044
%18046 = fmul float %18043, %18045
%18047 = call float @llvm.fmuladd.f32(float %18039, float %18041, float %18046)
%18048 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%18049 = load float, float* %18048
%18050 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%18051 = load float, float* %18050
%18052 = call float @llvm.fmuladd.f32(float %18049, float %18051, float %18047)
%18053 = fcmp ogt float %18052, 0.000000e+00
br i1 %18053, label %18054, label %18055
18054: ; preds = %17929
store i32 0, i32* %7
br label %37477
18055: ; preds = %17929
%18056 = load float*, float** %11
%18057 = getelementptr inbounds float, float* %18056, i64 0
%18058 = load float, float* %18057
%18059 = load float*, float** %8
%18060 = getelementptr inbounds float, float* %18059, i64 0
%18061 = load float, float* %18060
%18062 = fsub float %18058, %18061
%18063 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %18062, float* %18063
%18064 = load float*, float** %11
%18065 = getelementptr inbounds float, float* %18064, i64 1
%18066 = load float, float* %18065
%18067 = load float*, float** %8
%18068 = getelementptr inbounds float, float* %18067, i64 1
%18069 = load float, float* %18068
%18070 = fsub float %18066, %18069
%18071 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %18070, float* %18071
%18072 = load float*, float** %11
%18073 = getelementptr inbounds float, float* %18072, i64 2
%18074 = load float, float* %18073
%18075 = load float*, float** %8
%18076 = getelementptr inbounds float, float* %18075, i64 2
%18077 = load float, float* %18076
%18078 = fsub float %18074, %18077
%18079 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %18078, float* %18079
%18080 = load float*, float** %9
%18081 = getelementptr inbounds float, float* %18080, i64 0
%18082 = load float, float* %18081
%18083 = load float*, float** %8
%18084 = getelementptr inbounds float, float* %18083, i64 0
%18085 = load float, float* %18084
%18086 = fsub float %18082, %18085
%18087 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %18086, float* %18087
%18088 = load float*, float** %9
%18089 = getelementptr inbounds float, float* %18088, i64 1
%18090 = load float, float* %18089
%18091 = load float*, float** %8
%18092 = getelementptr inbounds float, float* %18091, i64 1
%18093 = load float, float* %18092
%18094 = fsub float %18090, %18093
%18095 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %18094, float* %18095
%18096 = load float*, float** %9
%18097 = getelementptr inbounds float, float* %18096, i64 2
%18098 = load float, float* %18097
%18099 = load float*, float** %8
%18100 = getelementptr inbounds float, float* %18099, i64 2
%18101 = load float, float* %18100
%18102 = fsub float %18098, %18101
%18103 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %18102, float* %18103
%18104 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%18105 = load float, float* %18104
%18106 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%18107 = load float, float* %18106
%18108 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%18109 = load float, float* %18108
%18110 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%18111 = load float, float* %18110
%18112 = fmul float %18109, %18111
%18113 = fneg float %18112
%18114 = call float @llvm.fmuladd.f32(float %18105, float %18107, float %18113)
%18115 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %18114, float* %18115
%18116 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%18117 = load float, float* %18116
%18118 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%18119 = load float, float* %18118
%18120 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%18121 = load float, float* %18120
%18122 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%18123 = load float, float* %18122
%18124 = fmul float %18121, %18123
%18125 = fneg float %18124
%18126 = call float @llvm.fmuladd.f32(float %18117, float %18119, float %18125)
%18127 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %18126, float* %18127
%18128 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%18129 = load float, float* %18128
%18130 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%18131 = load float, float* %18130
%18132 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%18133 = load float, float* %18132
%18134 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%18135 = load float, float* %18134
%18136 = fmul float %18133, %18135
%18137 = fneg float %18136
%18138 = call float @llvm.fmuladd.f32(float %18129, float %18131, float %18137)
%18139 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %18138, float* %18139
%18140 = load float*, float** %12
%18141 = getelementptr inbounds float, float* %18140, i64 0
%18142 = load float, float* %18141
%18143 = load float*, float** %8
%18144 = getelementptr inbounds float, float* %18143, i64 0
%18145 = load float, float* %18144
%18146 = fsub float %18142, %18145
%18147 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %18146, float* %18147
%18148 = load float*, float** %12
%18149 = getelementptr inbounds float, float* %18148, i64 1
%18150 = load float, float* %18149
%18151 = load float*, float** %8
%18152 = getelementptr inbounds float, float* %18151, i64 1
%18153 = load float, float* %18152
%18154 = fsub float %18150, %18153
%18155 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %18154, float* %18155
%18156 = load float*, float** %12
%18157 = getelementptr inbounds float, float* %18156, i64 2
%18158 = load float, float* %18157
%18159 = load float*, float** %8
%18160 = getelementptr inbounds float, float* %18159, i64 2
%18161 = load float, float* %18160
%18162 = fsub float %18158, %18161
%18163 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %18162, float* %18163
%18164 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%18165 = load float, float* %18164
%18166 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%18167 = load float, float* %18166
%18168 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%18169 = load float, float* %18168
%18170 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%18171 = load float, float* %18170
%18172 = fmul float %18169, %18171
%18173 = call float @llvm.fmuladd.f32(float %18165, float %18167, float %18172)
%18174 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%18175 = load float, float* %18174
%18176 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%18177 = load float, float* %18176
%18178 = call float @llvm.fmuladd.f32(float %18175, float %18177, float %18173)
%18179 = fcmp ogt float %18178, 0.000000e+00
br i1 %18179, label %18180, label %18181
18180: ; preds = %18055
store i32 0, i32* %7
br label %37477
18181: ; preds = %18055
store i32 1, i32* %7
br label %37477
18182: ; preds = %17926
%18183 = load float*, float** %13
%18184 = getelementptr inbounds float, float* %18183, i64 0
%18185 = load float, float* %18184
%18186 = load float*, float** %9
%18187 = getelementptr inbounds float, float* %18186, i64 0
%18188 = load float, float* %18187
%18189 = fsub float %18185, %18188
%18190 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %18189, float* %18190
%18191 = load float*, float** %13
%18192 = getelementptr inbounds float, float* %18191, i64 1
%18193 = load float, float* %18192
%18194 = load float*, float** %9
%18195 = getelementptr inbounds float, float* %18194, i64 1
%18196 = load float, float* %18195
%18197 = fsub float %18193, %18196
%18198 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %18197, float* %18198
%18199 = load float*, float** %13
%18200 = getelementptr inbounds float, float* %18199, i64 2
%18201 = load float, float* %18200
%18202 = load float*, float** %9
%18203 = getelementptr inbounds float, float* %18202, i64 2
%18204 = load float, float* %18203
%18205 = fsub float %18201, %18204
%18206 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %18205, float* %18206
%18207 = load float*, float** %8
%18208 = getelementptr inbounds float, float* %18207, i64 0
%18209 = load float, float* %18208
%18210 = load float*, float** %9
%18211 = getelementptr inbounds float, float* %18210, i64 0
%18212 = load float, float* %18211
%18213 = fsub float %18209, %18212
%18214 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %18213, float* %18214
%18215 = load float*, float** %8
%18216 = getelementptr inbounds float, float* %18215, i64 1
%18217 = load float, float* %18216
%18218 = load float*, float** %9
%18219 = getelementptr inbounds float, float* %18218, i64 1
%18220 = load float, float* %18219
%18221 = fsub float %18217, %18220
%18222 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %18221, float* %18222
%18223 = load float*, float** %8
%18224 = getelementptr inbounds float, float* %18223, i64 2
%18225 = load float, float* %18224
%18226 = load float*, float** %9
%18227 = getelementptr inbounds float, float* %18226, i64 2
%18228 = load float, float* %18227
%18229 = fsub float %18225, %18228
%18230 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %18229, float* %18230
%18231 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%18232 = load float, float* %18231
%18233 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%18234 = load float, float* %18233
%18235 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%18236 = load float, float* %18235
%18237 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%18238 = load float, float* %18237
%18239 = fmul float %18236, %18238
%18240 = fneg float %18239
%18241 = call float @llvm.fmuladd.f32(float %18232, float %18234, float %18240)
%18242 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %18241, float* %18242
%18243 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%18244 = load float, float* %18243
%18245 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%18246 = load float, float* %18245
%18247 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%18248 = load float, float* %18247
%18249 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%18250 = load float, float* %18249
%18251 = fmul float %18248, %18250
%18252 = fneg float %18251
%18253 = call float @llvm.fmuladd.f32(float %18244, float %18246, float %18252)
%18254 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %18253, float* %18254
%18255 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%18256 = load float, float* %18255
%18257 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%18258 = load float, float* %18257
%18259 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%18260 = load float, float* %18259
%18261 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%18262 = load float, float* %18261
%18263 = fmul float %18260, %18262
%18264 = fneg float %18263
%18265 = call float @llvm.fmuladd.f32(float %18256, float %18258, float %18264)
%18266 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %18265, float* %18266
%18267 = load float*, float** %12
%18268 = getelementptr inbounds float, float* %18267, i64 0
%18269 = load float, float* %18268
%18270 = load float*, float** %9
%18271 = getelementptr inbounds float, float* %18270, i64 0
%18272 = load float, float* %18271
%18273 = fsub float %18269, %18272
%18274 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %18273, float* %18274
%18275 = load float*, float** %12
%18276 = getelementptr inbounds float, float* %18275, i64 1
%18277 = load float, float* %18276
%18278 = load float*, float** %9
%18279 = getelementptr inbounds float, float* %18278, i64 1
%18280 = load float, float* %18279
%18281 = fsub float %18277, %18280
%18282 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %18281, float* %18282
%18283 = load float*, float** %12
%18284 = getelementptr inbounds float, float* %18283, i64 2
%18285 = load float, float* %18284
%18286 = load float*, float** %9
%18287 = getelementptr inbounds float, float* %18286, i64 2
%18288 = load float, float* %18287
%18289 = fsub float %18285, %18288
%18290 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %18289, float* %18290
%18291 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%18292 = load float, float* %18291
%18293 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%18294 = load float, float* %18293
%18295 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%18296 = load float, float* %18295
%18297 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%18298 = load float, float* %18297
%18299 = fmul float %18296, %18298
%18300 = call float @llvm.fmuladd.f32(float %18292, float %18294, float %18299)
%18301 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%18302 = load float, float* %18301
%18303 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%18304 = load float, float* %18303
%18305 = call float @llvm.fmuladd.f32(float %18302, float %18304, float %18300)
%18306 = fcmp ogt float %18305, 0.000000e+00
br i1 %18306, label %18307, label %18308
18307: ; preds = %18182
store i32 0, i32* %7
br label %37477
18308: ; preds = %18182
%18309 = load float*, float** %13
%18310 = getelementptr inbounds float, float* %18309, i64 0
%18311 = load float, float* %18310
%18312 = load float*, float** %8
%18313 = getelementptr inbounds float, float* %18312, i64 0
%18314 = load float, float* %18313
%18315 = fsub float %18311, %18314
%18316 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %18315, float* %18316
%18317 = load float*, float** %13
%18318 = getelementptr inbounds float, float* %18317, i64 1
%18319 = load float, float* %18318
%18320 = load float*, float** %8
%18321 = getelementptr inbounds float, float* %18320, i64 1
%18322 = load float, float* %18321
%18323 = fsub float %18319, %18322
%18324 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %18323, float* %18324
%18325 = load float*, float** %13
%18326 = getelementptr inbounds float, float* %18325, i64 2
%18327 = load float, float* %18326
%18328 = load float*, float** %8
%18329 = getelementptr inbounds float, float* %18328, i64 2
%18330 = load float, float* %18329
%18331 = fsub float %18327, %18330
%18332 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %18331, float* %18332
%18333 = load float*, float** %10
%18334 = getelementptr inbounds float, float* %18333, i64 0
%18335 = load float, float* %18334
%18336 = load float*, float** %8
%18337 = getelementptr inbounds float, float* %18336, i64 0
%18338 = load float, float* %18337
%18339 = fsub float %18335, %18338
%18340 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %18339, float* %18340
%18341 = load float*, float** %10
%18342 = getelementptr inbounds float, float* %18341, i64 1
%18343 = load float, float* %18342
%18344 = load float*, float** %8
%18345 = getelementptr inbounds float, float* %18344, i64 1
%18346 = load float, float* %18345
%18347 = fsub float %18343, %18346
%18348 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %18347, float* %18348
%18349 = load float*, float** %10
%18350 = getelementptr inbounds float, float* %18349, i64 2
%18351 = load float, float* %18350
%18352 = load float*, float** %8
%18353 = getelementptr inbounds float, float* %18352, i64 2
%18354 = load float, float* %18353
%18355 = fsub float %18351, %18354
%18356 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %18355, float* %18356
%18357 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%18358 = load float, float* %18357
%18359 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%18360 = load float, float* %18359
%18361 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%18362 = load float, float* %18361
%18363 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%18364 = load float, float* %18363
%18365 = fmul float %18362, %18364
%18366 = fneg float %18365
%18367 = call float @llvm.fmuladd.f32(float %18358, float %18360, float %18366)
%18368 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %18367, float* %18368
%18369 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%18370 = load float, float* %18369
%18371 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%18372 = load float, float* %18371
%18373 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%18374 = load float, float* %18373
%18375 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%18376 = load float, float* %18375
%18377 = fmul float %18374, %18376
%18378 = fneg float %18377
%18379 = call float @llvm.fmuladd.f32(float %18370, float %18372, float %18378)
%18380 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %18379, float* %18380
%18381 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%18382 = load float, float* %18381
%18383 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%18384 = load float, float* %18383
%18385 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%18386 = load float, float* %18385
%18387 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%18388 = load float, float* %18387
%18389 = fmul float %18386, %18388
%18390 = fneg float %18389
%18391 = call float @llvm.fmuladd.f32(float %18382, float %18384, float %18390)
%18392 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %18391, float* %18392
%18393 = load float*, float** %11
%18394 = getelementptr inbounds float, float* %18393, i64 0
%18395 = load float, float* %18394
%18396 = load float*, float** %8
%18397 = getelementptr inbounds float, float* %18396, i64 0
%18398 = load float, float* %18397
%18399 = fsub float %18395, %18398
%18400 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %18399, float* %18400
%18401 = load float*, float** %11
%18402 = getelementptr inbounds float, float* %18401, i64 1
%18403 = load float, float* %18402
%18404 = load float*, float** %8
%18405 = getelementptr inbounds float, float* %18404, i64 1
%18406 = load float, float* %18405
%18407 = fsub float %18403, %18406
%18408 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %18407, float* %18408
%18409 = load float*, float** %11
%18410 = getelementptr inbounds float, float* %18409, i64 2
%18411 = load float, float* %18410
%18412 = load float*, float** %8
%18413 = getelementptr inbounds float, float* %18412, i64 2
%18414 = load float, float* %18413
%18415 = fsub float %18411, %18414
%18416 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %18415, float* %18416
%18417 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%18418 = load float, float* %18417
%18419 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%18420 = load float, float* %18419
%18421 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%18422 = load float, float* %18421
%18423 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%18424 = load float, float* %18423
%18425 = fmul float %18422, %18424
%18426 = call float @llvm.fmuladd.f32(float %18418, float %18420, float %18425)
%18427 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%18428 = load float, float* %18427
%18429 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%18430 = load float, float* %18429
%18431 = call float @llvm.fmuladd.f32(float %18428, float %18430, float %18426)
%18432 = fcmp ogt float %18431, 0.000000e+00
br i1 %18432, label %18433, label %18434
18433: ; preds = %18308
store i32 0, i32* %7
br label %37477
18434: ; preds = %18308
store i32 1, i32* %7
br label %37477
18435: ; preds = %17923
%18436 = load float, float* %18
%18437 = fcmp ogt float %18436, 0.000000e+00
br i1 %18437, label %18438, label %18691
18438: ; preds = %18435
%18439 = load float*, float** %12
%18440 = getelementptr inbounds float, float* %18439, i64 0
%18441 = load float, float* %18440
%18442 = load float*, float** %9
%18443 = getelementptr inbounds float, float* %18442, i64 0
%18444 = load float, float* %18443
%18445 = fsub float %18441, %18444
%18446 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %18445, float* %18446
%18447 = load float*, float** %12
%18448 = getelementptr inbounds float, float* %18447, i64 1
%18449 = load float, float* %18448
%18450 = load float*, float** %9
%18451 = getelementptr inbounds float, float* %18450, i64 1
%18452 = load float, float* %18451
%18453 = fsub float %18449, %18452
%18454 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %18453, float* %18454
%18455 = load float*, float** %12
%18456 = getelementptr inbounds float, float* %18455, i64 2
%18457 = load float, float* %18456
%18458 = load float*, float** %9
%18459 = getelementptr inbounds float, float* %18458, i64 2
%18460 = load float, float* %18459
%18461 = fsub float %18457, %18460
%18462 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %18461, float* %18462
%18463 = load float*, float** %8
%18464 = getelementptr inbounds float, float* %18463, i64 0
%18465 = load float, float* %18464
%18466 = load float*, float** %9
%18467 = getelementptr inbounds float, float* %18466, i64 0
%18468 = load float, float* %18467
%18469 = fsub float %18465, %18468
%18470 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %18469, float* %18470
%18471 = load float*, float** %8
%18472 = getelementptr inbounds float, float* %18471, i64 1
%18473 = load float, float* %18472
%18474 = load float*, float** %9
%18475 = getelementptr inbounds float, float* %18474, i64 1
%18476 = load float, float* %18475
%18477 = fsub float %18473, %18476
%18478 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %18477, float* %18478
%18479 = load float*, float** %8
%18480 = getelementptr inbounds float, float* %18479, i64 2
%18481 = load float, float* %18480
%18482 = load float*, float** %9
%18483 = getelementptr inbounds float, float* %18482, i64 2
%18484 = load float, float* %18483
%18485 = fsub float %18481, %18484
%18486 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %18485, float* %18486
%18487 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%18488 = load float, float* %18487
%18489 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%18490 = load float, float* %18489
%18491 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%18492 = load float, float* %18491
%18493 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%18494 = load float, float* %18493
%18495 = fmul float %18492, %18494
%18496 = fneg float %18495
%18497 = call float @llvm.fmuladd.f32(float %18488, float %18490, float %18496)
%18498 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %18497, float* %18498
%18499 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%18500 = load float, float* %18499
%18501 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%18502 = load float, float* %18501
%18503 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%18504 = load float, float* %18503
%18505 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%18506 = load float, float* %18505
%18507 = fmul float %18504, %18506
%18508 = fneg float %18507
%18509 = call float @llvm.fmuladd.f32(float %18500, float %18502, float %18508)
%18510 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %18509, float* %18510
%18511 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%18512 = load float, float* %18511
%18513 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%18514 = load float, float* %18513
%18515 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%18516 = load float, float* %18515
%18517 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%18518 = load float, float* %18517
%18519 = fmul float %18516, %18518
%18520 = fneg float %18519
%18521 = call float @llvm.fmuladd.f32(float %18512, float %18514, float %18520)
%18522 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %18521, float* %18522
%18523 = load float*, float** %11
%18524 = getelementptr inbounds float, float* %18523, i64 0
%18525 = load float, float* %18524
%18526 = load float*, float** %9
%18527 = getelementptr inbounds float, float* %18526, i64 0
%18528 = load float, float* %18527
%18529 = fsub float %18525, %18528
%18530 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %18529, float* %18530
%18531 = load float*, float** %11
%18532 = getelementptr inbounds float, float* %18531, i64 1
%18533 = load float, float* %18532
%18534 = load float*, float** %9
%18535 = getelementptr inbounds float, float* %18534, i64 1
%18536 = load float, float* %18535
%18537 = fsub float %18533, %18536
%18538 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %18537, float* %18538
%18539 = load float*, float** %11
%18540 = getelementptr inbounds float, float* %18539, i64 2
%18541 = load float, float* %18540
%18542 = load float*, float** %9
%18543 = getelementptr inbounds float, float* %18542, i64 2
%18544 = load float, float* %18543
%18545 = fsub float %18541, %18544
%18546 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %18545, float* %18546
%18547 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%18548 = load float, float* %18547
%18549 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%18550 = load float, float* %18549
%18551 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%18552 = load float, float* %18551
%18553 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%18554 = load float, float* %18553
%18555 = fmul float %18552, %18554
%18556 = call float @llvm.fmuladd.f32(float %18548, float %18550, float %18555)
%18557 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%18558 = load float, float* %18557
%18559 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%18560 = load float, float* %18559
%18561 = call float @llvm.fmuladd.f32(float %18558, float %18560, float %18556)
%18562 = fcmp ogt float %18561, 0.000000e+00
br i1 %18562, label %18563, label %18564
18563: ; preds = %18438
store i32 0, i32* %7
br label %37477
18564: ; preds = %18438
%18565 = load float*, float** %12
%18566 = getelementptr inbounds float, float* %18565, i64 0
%18567 = load float, float* %18566
%18568 = load float*, float** %8
%18569 = getelementptr inbounds float, float* %18568, i64 0
%18570 = load float, float* %18569
%18571 = fsub float %18567, %18570
%18572 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %18571, float* %18572
%18573 = load float*, float** %12
%18574 = getelementptr inbounds float, float* %18573, i64 1
%18575 = load float, float* %18574
%18576 = load float*, float** %8
%18577 = getelementptr inbounds float, float* %18576, i64 1
%18578 = load float, float* %18577
%18579 = fsub float %18575, %18578
%18580 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %18579, float* %18580
%18581 = load float*, float** %12
%18582 = getelementptr inbounds float, float* %18581, i64 2
%18583 = load float, float* %18582
%18584 = load float*, float** %8
%18585 = getelementptr inbounds float, float* %18584, i64 2
%18586 = load float, float* %18585
%18587 = fsub float %18583, %18586
%18588 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %18587, float* %18588
%18589 = load float*, float** %10
%18590 = getelementptr inbounds float, float* %18589, i64 0
%18591 = load float, float* %18590
%18592 = load float*, float** %8
%18593 = getelementptr inbounds float, float* %18592, i64 0
%18594 = load float, float* %18593
%18595 = fsub float %18591, %18594
%18596 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %18595, float* %18596
%18597 = load float*, float** %10
%18598 = getelementptr inbounds float, float* %18597, i64 1
%18599 = load float, float* %18598
%18600 = load float*, float** %8
%18601 = getelementptr inbounds float, float* %18600, i64 1
%18602 = load float, float* %18601
%18603 = fsub float %18599, %18602
%18604 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %18603, float* %18604
%18605 = load float*, float** %10
%18606 = getelementptr inbounds float, float* %18605, i64 2
%18607 = load float, float* %18606
%18608 = load float*, float** %8
%18609 = getelementptr inbounds float, float* %18608, i64 2
%18610 = load float, float* %18609
%18611 = fsub float %18607, %18610
%18612 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %18611, float* %18612
%18613 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%18614 = load float, float* %18613
%18615 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%18616 = load float, float* %18615
%18617 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%18618 = load float, float* %18617
%18619 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%18620 = load float, float* %18619
%18621 = fmul float %18618, %18620
%18622 = fneg float %18621
%18623 = call float @llvm.fmuladd.f32(float %18614, float %18616, float %18622)
%18624 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %18623, float* %18624
%18625 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%18626 = load float, float* %18625
%18627 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%18628 = load float, float* %18627
%18629 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%18630 = load float, float* %18629
%18631 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%18632 = load float, float* %18631
%18633 = fmul float %18630, %18632
%18634 = fneg float %18633
%18635 = call float @llvm.fmuladd.f32(float %18626, float %18628, float %18634)
%18636 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %18635, float* %18636
%18637 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%18638 = load float, float* %18637
%18639 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%18640 = load float, float* %18639
%18641 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%18642 = load float, float* %18641
%18643 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%18644 = load float, float* %18643
%18645 = fmul float %18642, %18644
%18646 = fneg float %18645
%18647 = call float @llvm.fmuladd.f32(float %18638, float %18640, float %18646)
%18648 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %18647, float* %18648
%18649 = load float*, float** %13
%18650 = getelementptr inbounds float, float* %18649, i64 0
%18651 = load float, float* %18650
%18652 = load float*, float** %8
%18653 = getelementptr inbounds float, float* %18652, i64 0
%18654 = load float, float* %18653
%18655 = fsub float %18651, %18654
%18656 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %18655, float* %18656
%18657 = load float*, float** %13
%18658 = getelementptr inbounds float, float* %18657, i64 1
%18659 = load float, float* %18658
%18660 = load float*, float** %8
%18661 = getelementptr inbounds float, float* %18660, i64 1
%18662 = load float, float* %18661
%18663 = fsub float %18659, %18662
%18664 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %18663, float* %18664
%18665 = load float*, float** %13
%18666 = getelementptr inbounds float, float* %18665, i64 2
%18667 = load float, float* %18666
%18668 = load float*, float** %8
%18669 = getelementptr inbounds float, float* %18668, i64 2
%18670 = load float, float* %18669
%18671 = fsub float %18667, %18670
%18672 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %18671, float* %18672
%18673 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%18674 = load float, float* %18673
%18675 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%18676 = load float, float* %18675
%18677 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%18678 = load float, float* %18677
%18679 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%18680 = load float, float* %18679
%18681 = fmul float %18678, %18680
%18682 = call float @llvm.fmuladd.f32(float %18674, float %18676, float %18681)
%18683 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%18684 = load float, float* %18683
%18685 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%18686 = load float, float* %18685
%18687 = call float @llvm.fmuladd.f32(float %18684, float %18686, float %18682)
%18688 = fcmp ogt float %18687, 0.000000e+00
br i1 %18688, label %18689, label %18690
18689: ; preds = %18564
store i32 0, i32* %7
br label %37477
18690: ; preds = %18564
store i32 1, i32* %7
br label %37477
18691: ; preds = %18435
%18692 = load float, float* %18
%18693 = fcmp olt float %18692, 0.000000e+00
br i1 %18693, label %18694, label %18947
18694: ; preds = %18691
%18695 = load float*, float** %12
%18696 = getelementptr inbounds float, float* %18695, i64 0
%18697 = load float, float* %18696
%18698 = load float*, float** %10
%18699 = getelementptr inbounds float, float* %18698, i64 0
%18700 = load float, float* %18699
%18701 = fsub float %18697, %18700
%18702 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %18701, float* %18702
%18703 = load float*, float** %12
%18704 = getelementptr inbounds float, float* %18703, i64 1
%18705 = load float, float* %18704
%18706 = load float*, float** %10
%18707 = getelementptr inbounds float, float* %18706, i64 1
%18708 = load float, float* %18707
%18709 = fsub float %18705, %18708
%18710 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %18709, float* %18710
%18711 = load float*, float** %12
%18712 = getelementptr inbounds float, float* %18711, i64 2
%18713 = load float, float* %18712
%18714 = load float*, float** %10
%18715 = getelementptr inbounds float, float* %18714, i64 2
%18716 = load float, float* %18715
%18717 = fsub float %18713, %18716
%18718 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %18717, float* %18718
%18719 = load float*, float** %8
%18720 = getelementptr inbounds float, float* %18719, i64 0
%18721 = load float, float* %18720
%18722 = load float*, float** %10
%18723 = getelementptr inbounds float, float* %18722, i64 0
%18724 = load float, float* %18723
%18725 = fsub float %18721, %18724
%18726 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %18725, float* %18726
%18727 = load float*, float** %8
%18728 = getelementptr inbounds float, float* %18727, i64 1
%18729 = load float, float* %18728
%18730 = load float*, float** %10
%18731 = getelementptr inbounds float, float* %18730, i64 1
%18732 = load float, float* %18731
%18733 = fsub float %18729, %18732
%18734 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %18733, float* %18734
%18735 = load float*, float** %8
%18736 = getelementptr inbounds float, float* %18735, i64 2
%18737 = load float, float* %18736
%18738 = load float*, float** %10
%18739 = getelementptr inbounds float, float* %18738, i64 2
%18740 = load float, float* %18739
%18741 = fsub float %18737, %18740
%18742 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %18741, float* %18742
%18743 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%18744 = load float, float* %18743
%18745 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%18746 = load float, float* %18745
%18747 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%18748 = load float, float* %18747
%18749 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%18750 = load float, float* %18749
%18751 = fmul float %18748, %18750
%18752 = fneg float %18751
%18753 = call float @llvm.fmuladd.f32(float %18744, float %18746, float %18752)
%18754 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %18753, float* %18754
%18755 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%18756 = load float, float* %18755
%18757 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%18758 = load float, float* %18757
%18759 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%18760 = load float, float* %18759
%18761 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%18762 = load float, float* %18761
%18763 = fmul float %18760, %18762
%18764 = fneg float %18763
%18765 = call float @llvm.fmuladd.f32(float %18756, float %18758, float %18764)
%18766 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %18765, float* %18766
%18767 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%18768 = load float, float* %18767
%18769 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%18770 = load float, float* %18769
%18771 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%18772 = load float, float* %18771
%18773 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%18774 = load float, float* %18773
%18775 = fmul float %18772, %18774
%18776 = fneg float %18775
%18777 = call float @llvm.fmuladd.f32(float %18768, float %18770, float %18776)
%18778 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %18777, float* %18778
%18779 = load float*, float** %11
%18780 = getelementptr inbounds float, float* %18779, i64 0
%18781 = load float, float* %18780
%18782 = load float*, float** %10
%18783 = getelementptr inbounds float, float* %18782, i64 0
%18784 = load float, float* %18783
%18785 = fsub float %18781, %18784
%18786 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %18785, float* %18786
%18787 = load float*, float** %11
%18788 = getelementptr inbounds float, float* %18787, i64 1
%18789 = load float, float* %18788
%18790 = load float*, float** %10
%18791 = getelementptr inbounds float, float* %18790, i64 1
%18792 = load float, float* %18791
%18793 = fsub float %18789, %18792
%18794 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %18793, float* %18794
%18795 = load float*, float** %11
%18796 = getelementptr inbounds float, float* %18795, i64 2
%18797 = load float, float* %18796
%18798 = load float*, float** %10
%18799 = getelementptr inbounds float, float* %18798, i64 2
%18800 = load float, float* %18799
%18801 = fsub float %18797, %18800
%18802 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %18801, float* %18802
%18803 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%18804 = load float, float* %18803
%18805 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%18806 = load float, float* %18805
%18807 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%18808 = load float, float* %18807
%18809 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%18810 = load float, float* %18809
%18811 = fmul float %18808, %18810
%18812 = call float @llvm.fmuladd.f32(float %18804, float %18806, float %18811)
%18813 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%18814 = load float, float* %18813
%18815 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%18816 = load float, float* %18815
%18817 = call float @llvm.fmuladd.f32(float %18814, float %18816, float %18812)
%18818 = fcmp ogt float %18817, 0.000000e+00
br i1 %18818, label %18819, label %18820
18819: ; preds = %18694
store i32 0, i32* %7
br label %37477
18820: ; preds = %18694
%18821 = load float*, float** %12
%18822 = getelementptr inbounds float, float* %18821, i64 0
%18823 = load float, float* %18822
%18824 = load float*, float** %8
%18825 = getelementptr inbounds float, float* %18824, i64 0
%18826 = load float, float* %18825
%18827 = fsub float %18823, %18826
%18828 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %18827, float* %18828
%18829 = load float*, float** %12
%18830 = getelementptr inbounds float, float* %18829, i64 1
%18831 = load float, float* %18830
%18832 = load float*, float** %8
%18833 = getelementptr inbounds float, float* %18832, i64 1
%18834 = load float, float* %18833
%18835 = fsub float %18831, %18834
%18836 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %18835, float* %18836
%18837 = load float*, float** %12
%18838 = getelementptr inbounds float, float* %18837, i64 2
%18839 = load float, float* %18838
%18840 = load float*, float** %8
%18841 = getelementptr inbounds float, float* %18840, i64 2
%18842 = load float, float* %18841
%18843 = fsub float %18839, %18842
%18844 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %18843, float* %18844
%18845 = load float*, float** %9
%18846 = getelementptr inbounds float, float* %18845, i64 0
%18847 = load float, float* %18846
%18848 = load float*, float** %8
%18849 = getelementptr inbounds float, float* %18848, i64 0
%18850 = load float, float* %18849
%18851 = fsub float %18847, %18850
%18852 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %18851, float* %18852
%18853 = load float*, float** %9
%18854 = getelementptr inbounds float, float* %18853, i64 1
%18855 = load float, float* %18854
%18856 = load float*, float** %8
%18857 = getelementptr inbounds float, float* %18856, i64 1
%18858 = load float, float* %18857
%18859 = fsub float %18855, %18858
%18860 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %18859, float* %18860
%18861 = load float*, float** %9
%18862 = getelementptr inbounds float, float* %18861, i64 2
%18863 = load float, float* %18862
%18864 = load float*, float** %8
%18865 = getelementptr inbounds float, float* %18864, i64 2
%18866 = load float, float* %18865
%18867 = fsub float %18863, %18866
%18868 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %18867, float* %18868
%18869 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%18870 = load float, float* %18869
%18871 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%18872 = load float, float* %18871
%18873 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%18874 = load float, float* %18873
%18875 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%18876 = load float, float* %18875
%18877 = fmul float %18874, %18876
%18878 = fneg float %18877
%18879 = call float @llvm.fmuladd.f32(float %18870, float %18872, float %18878)
%18880 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %18879, float* %18880
%18881 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%18882 = load float, float* %18881
%18883 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%18884 = load float, float* %18883
%18885 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%18886 = load float, float* %18885
%18887 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%18888 = load float, float* %18887
%18889 = fmul float %18886, %18888
%18890 = fneg float %18889
%18891 = call float @llvm.fmuladd.f32(float %18882, float %18884, float %18890)
%18892 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %18891, float* %18892
%18893 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%18894 = load float, float* %18893
%18895 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%18896 = load float, float* %18895
%18897 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%18898 = load float, float* %18897
%18899 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%18900 = load float, float* %18899
%18901 = fmul float %18898, %18900
%18902 = fneg float %18901
%18903 = call float @llvm.fmuladd.f32(float %18894, float %18896, float %18902)
%18904 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %18903, float* %18904
%18905 = load float*, float** %13
%18906 = getelementptr inbounds float, float* %18905, i64 0
%18907 = load float, float* %18906
%18908 = load float*, float** %8
%18909 = getelementptr inbounds float, float* %18908, i64 0
%18910 = load float, float* %18909
%18911 = fsub float %18907, %18910
%18912 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %18911, float* %18912
%18913 = load float*, float** %13
%18914 = getelementptr inbounds float, float* %18913, i64 1
%18915 = load float, float* %18914
%18916 = load float*, float** %8
%18917 = getelementptr inbounds float, float* %18916, i64 1
%18918 = load float, float* %18917
%18919 = fsub float %18915, %18918
%18920 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %18919, float* %18920
%18921 = load float*, float** %13
%18922 = getelementptr inbounds float, float* %18921, i64 2
%18923 = load float, float* %18922
%18924 = load float*, float** %8
%18925 = getelementptr inbounds float, float* %18924, i64 2
%18926 = load float, float* %18925
%18927 = fsub float %18923, %18926
%18928 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %18927, float* %18928
%18929 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%18930 = load float, float* %18929
%18931 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%18932 = load float, float* %18931
%18933 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%18934 = load float, float* %18933
%18935 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%18936 = load float, float* %18935
%18937 = fmul float %18934, %18936
%18938 = call float @llvm.fmuladd.f32(float %18930, float %18932, float %18937)
%18939 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%18940 = load float, float* %18939
%18941 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%18942 = load float, float* %18941
%18943 = call float @llvm.fmuladd.f32(float %18940, float %18942, float %18938)
%18944 = fcmp ogt float %18943, 0.000000e+00
br i1 %18944, label %18945, label %18946
18945: ; preds = %18820
store i32 0, i32* %7
br label %37477
18946: ; preds = %18820
store i32 1, i32* %7
br label %37477
18947: ; preds = %18691
%18948 = load float*, float** %8
%18949 = load float*, float** %9
%18950 = load float*, float** %10
%18951 = load float*, float** %11
%18952 = load float*, float** %13
%18953 = load float*, float** %12
%18954 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%18955 = getelementptr inbounds [3 x float], [3 x float]* %23, i64 0, i64 0
%18956 = call i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...) bitcast (i32 (...)* @coplanar_tri_tri3d to i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...)*)(float* %18948, float* %18949, float* %18950, float* %18951, float* %18952, float* %18953, float* %18954, float* %18955)
store i32 %18956, i32* %7
br label %37477
18957: ; preds = %9702
%18958 = load float, float* %15
%18959 = fcmp olt float %18958, 0.000000e+00
br i1 %18959, label %18960, label %25127
18960: ; preds = %18957
%18961 = load float, float* %16
%18962 = fcmp oge float %18961, 0.000000e+00
br i1 %18962, label %18963, label %22045
18963: ; preds = %18960
%18964 = load float, float* %17
%18965 = fcmp ogt float %18964, 0.000000e+00
br i1 %18965, label %18966, label %19731
18966: ; preds = %18963
%18967 = load float, float* %19
%18968 = fcmp ogt float %18967, 0.000000e+00
br i1 %18968, label %18969, label %19222
18969: ; preds = %18966
%18970 = load float*, float** %12
%18971 = getelementptr inbounds float, float* %18970, i64 0
%18972 = load float, float* %18971
%18973 = load float*, float** %8
%18974 = getelementptr inbounds float, float* %18973, i64 0
%18975 = load float, float* %18974
%18976 = fsub float %18972, %18975
%18977 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %18976, float* %18977
%18978 = load float*, float** %12
%18979 = getelementptr inbounds float, float* %18978, i64 1
%18980 = load float, float* %18979
%18981 = load float*, float** %8
%18982 = getelementptr inbounds float, float* %18981, i64 1
%18983 = load float, float* %18982
%18984 = fsub float %18980, %18983
%18985 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %18984, float* %18985
%18986 = load float*, float** %12
%18987 = getelementptr inbounds float, float* %18986, i64 2
%18988 = load float, float* %18987
%18989 = load float*, float** %8
%18990 = getelementptr inbounds float, float* %18989, i64 2
%18991 = load float, float* %18990
%18992 = fsub float %18988, %18991
%18993 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %18992, float* %18993
%18994 = load float*, float** %9
%18995 = getelementptr inbounds float, float* %18994, i64 0
%18996 = load float, float* %18995
%18997 = load float*, float** %8
%18998 = getelementptr inbounds float, float* %18997, i64 0
%18999 = load float, float* %18998
%19000 = fsub float %18996, %18999
%19001 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %19000, float* %19001
%19002 = load float*, float** %9
%19003 = getelementptr inbounds float, float* %19002, i64 1
%19004 = load float, float* %19003
%19005 = load float*, float** %8
%19006 = getelementptr inbounds float, float* %19005, i64 1
%19007 = load float, float* %19006
%19008 = fsub float %19004, %19007
%19009 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %19008, float* %19009
%19010 = load float*, float** %9
%19011 = getelementptr inbounds float, float* %19010, i64 2
%19012 = load float, float* %19011
%19013 = load float*, float** %8
%19014 = getelementptr inbounds float, float* %19013, i64 2
%19015 = load float, float* %19014
%19016 = fsub float %19012, %19015
%19017 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %19016, float* %19017
%19018 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%19019 = load float, float* %19018
%19020 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%19021 = load float, float* %19020
%19022 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%19023 = load float, float* %19022
%19024 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%19025 = load float, float* %19024
%19026 = fmul float %19023, %19025
%19027 = fneg float %19026
%19028 = call float @llvm.fmuladd.f32(float %19019, float %19021, float %19027)
%19029 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %19028, float* %19029
%19030 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%19031 = load float, float* %19030
%19032 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%19033 = load float, float* %19032
%19034 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%19035 = load float, float* %19034
%19036 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%19037 = load float, float* %19036
%19038 = fmul float %19035, %19037
%19039 = fneg float %19038
%19040 = call float @llvm.fmuladd.f32(float %19031, float %19033, float %19039)
%19041 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %19040, float* %19041
%19042 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%19043 = load float, float* %19042
%19044 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%19045 = load float, float* %19044
%19046 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%19047 = load float, float* %19046
%19048 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%19049 = load float, float* %19048
%19050 = fmul float %19047, %19049
%19051 = fneg float %19050
%19052 = call float @llvm.fmuladd.f32(float %19043, float %19045, float %19051)
%19053 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %19052, float* %19053
%19054 = load float*, float** %11
%19055 = getelementptr inbounds float, float* %19054, i64 0
%19056 = load float, float* %19055
%19057 = load float*, float** %8
%19058 = getelementptr inbounds float, float* %19057, i64 0
%19059 = load float, float* %19058
%19060 = fsub float %19056, %19059
%19061 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %19060, float* %19061
%19062 = load float*, float** %11
%19063 = getelementptr inbounds float, float* %19062, i64 1
%19064 = load float, float* %19063
%19065 = load float*, float** %8
%19066 = getelementptr inbounds float, float* %19065, i64 1
%19067 = load float, float* %19066
%19068 = fsub float %19064, %19067
%19069 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %19068, float* %19069
%19070 = load float*, float** %11
%19071 = getelementptr inbounds float, float* %19070, i64 2
%19072 = load float, float* %19071
%19073 = load float*, float** %8
%19074 = getelementptr inbounds float, float* %19073, i64 2
%19075 = load float, float* %19074
%19076 = fsub float %19072, %19075
%19077 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %19076, float* %19077
%19078 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%19079 = load float, float* %19078
%19080 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%19081 = load float, float* %19080
%19082 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%19083 = load float, float* %19082
%19084 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%19085 = load float, float* %19084
%19086 = fmul float %19083, %19085
%19087 = call float @llvm.fmuladd.f32(float %19079, float %19081, float %19086)
%19088 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%19089 = load float, float* %19088
%19090 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%19091 = load float, float* %19090
%19092 = call float @llvm.fmuladd.f32(float %19089, float %19091, float %19087)
%19093 = fcmp ogt float %19092, 0.000000e+00
br i1 %19093, label %19094, label %19095
19094: ; preds = %18969
store i32 0, i32* %7
br label %37477
19095: ; preds = %18969
%19096 = load float*, float** %12
%19097 = getelementptr inbounds float, float* %19096, i64 0
%19098 = load float, float* %19097
%19099 = load float*, float** %9
%19100 = getelementptr inbounds float, float* %19099, i64 0
%19101 = load float, float* %19100
%19102 = fsub float %19098, %19101
%19103 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %19102, float* %19103
%19104 = load float*, float** %12
%19105 = getelementptr inbounds float, float* %19104, i64 1
%19106 = load float, float* %19105
%19107 = load float*, float** %9
%19108 = getelementptr inbounds float, float* %19107, i64 1
%19109 = load float, float* %19108
%19110 = fsub float %19106, %19109
%19111 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %19110, float* %19111
%19112 = load float*, float** %12
%19113 = getelementptr inbounds float, float* %19112, i64 2
%19114 = load float, float* %19113
%19115 = load float*, float** %9
%19116 = getelementptr inbounds float, float* %19115, i64 2
%19117 = load float, float* %19116
%19118 = fsub float %19114, %19117
%19119 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %19118, float* %19119
%19120 = load float*, float** %10
%19121 = getelementptr inbounds float, float* %19120, i64 0
%19122 = load float, float* %19121
%19123 = load float*, float** %9
%19124 = getelementptr inbounds float, float* %19123, i64 0
%19125 = load float, float* %19124
%19126 = fsub float %19122, %19125
%19127 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %19126, float* %19127
%19128 = load float*, float** %10
%19129 = getelementptr inbounds float, float* %19128, i64 1
%19130 = load float, float* %19129
%19131 = load float*, float** %9
%19132 = getelementptr inbounds float, float* %19131, i64 1
%19133 = load float, float* %19132
%19134 = fsub float %19130, %19133
%19135 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %19134, float* %19135
%19136 = load float*, float** %10
%19137 = getelementptr inbounds float, float* %19136, i64 2
%19138 = load float, float* %19137
%19139 = load float*, float** %9
%19140 = getelementptr inbounds float, float* %19139, i64 2
%19141 = load float, float* %19140
%19142 = fsub float %19138, %19141
%19143 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %19142, float* %19143
%19144 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%19145 = load float, float* %19144
%19146 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%19147 = load float, float* %19146
%19148 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%19149 = load float, float* %19148
%19150 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%19151 = load float, float* %19150
%19152 = fmul float %19149, %19151
%19153 = fneg float %19152
%19154 = call float @llvm.fmuladd.f32(float %19145, float %19147, float %19153)
%19155 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %19154, float* %19155
%19156 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%19157 = load float, float* %19156
%19158 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%19159 = load float, float* %19158
%19160 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%19161 = load float, float* %19160
%19162 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%19163 = load float, float* %19162
%19164 = fmul float %19161, %19163
%19165 = fneg float %19164
%19166 = call float @llvm.fmuladd.f32(float %19157, float %19159, float %19165)
%19167 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %19166, float* %19167
%19168 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%19169 = load float, float* %19168
%19170 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%19171 = load float, float* %19170
%19172 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%19173 = load float, float* %19172
%19174 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%19175 = load float, float* %19174
%19176 = fmul float %19173, %19175
%19177 = fneg float %19176
%19178 = call float @llvm.fmuladd.f32(float %19169, float %19171, float %19177)
%19179 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %19178, float* %19179
%19180 = load float*, float** %13
%19181 = getelementptr inbounds float, float* %19180, i64 0
%19182 = load float, float* %19181
%19183 = load float*, float** %9
%19184 = getelementptr inbounds float, float* %19183, i64 0
%19185 = load float, float* %19184
%19186 = fsub float %19182, %19185
%19187 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %19186, float* %19187
%19188 = load float*, float** %13
%19189 = getelementptr inbounds float, float* %19188, i64 1
%19190 = load float, float* %19189
%19191 = load float*, float** %9
%19192 = getelementptr inbounds float, float* %19191, i64 1
%19193 = load float, float* %19192
%19194 = fsub float %19190, %19193
%19195 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %19194, float* %19195
%19196 = load float*, float** %13
%19197 = getelementptr inbounds float, float* %19196, i64 2
%19198 = load float, float* %19197
%19199 = load float*, float** %9
%19200 = getelementptr inbounds float, float* %19199, i64 2
%19201 = load float, float* %19200
%19202 = fsub float %19198, %19201
%19203 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %19202, float* %19203
%19204 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%19205 = load float, float* %19204
%19206 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%19207 = load float, float* %19206
%19208 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%19209 = load float, float* %19208
%19210 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%19211 = load float, float* %19210
%19212 = fmul float %19209, %19211
%19213 = call float @llvm.fmuladd.f32(float %19205, float %19207, float %19212)
%19214 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%19215 = load float, float* %19214
%19216 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%19217 = load float, float* %19216
%19218 = call float @llvm.fmuladd.f32(float %19215, float %19217, float %19213)
%19219 = fcmp ogt float %19218, 0.000000e+00
br i1 %19219, label %19220, label %19221
19220: ; preds = %19095
store i32 0, i32* %7
br label %37477
19221: ; preds = %19095
store i32 1, i32* %7
br label %37477
19222: ; preds = %18966
%19223 = load float, float* %18
%19224 = fcmp ogt float %19223, 0.000000e+00
br i1 %19224, label %19225, label %19478
19225: ; preds = %19222
%19226 = load float*, float** %13
%19227 = getelementptr inbounds float, float* %19226, i64 0
%19228 = load float, float* %19227
%19229 = load float*, float** %8
%19230 = getelementptr inbounds float, float* %19229, i64 0
%19231 = load float, float* %19230
%19232 = fsub float %19228, %19231
%19233 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %19232, float* %19233
%19234 = load float*, float** %13
%19235 = getelementptr inbounds float, float* %19234, i64 1
%19236 = load float, float* %19235
%19237 = load float*, float** %8
%19238 = getelementptr inbounds float, float* %19237, i64 1
%19239 = load float, float* %19238
%19240 = fsub float %19236, %19239
%19241 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %19240, float* %19241
%19242 = load float*, float** %13
%19243 = getelementptr inbounds float, float* %19242, i64 2
%19244 = load float, float* %19243
%19245 = load float*, float** %8
%19246 = getelementptr inbounds float, float* %19245, i64 2
%19247 = load float, float* %19246
%19248 = fsub float %19244, %19247
%19249 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %19248, float* %19249
%19250 = load float*, float** %9
%19251 = getelementptr inbounds float, float* %19250, i64 0
%19252 = load float, float* %19251
%19253 = load float*, float** %8
%19254 = getelementptr inbounds float, float* %19253, i64 0
%19255 = load float, float* %19254
%19256 = fsub float %19252, %19255
%19257 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %19256, float* %19257
%19258 = load float*, float** %9
%19259 = getelementptr inbounds float, float* %19258, i64 1
%19260 = load float, float* %19259
%19261 = load float*, float** %8
%19262 = getelementptr inbounds float, float* %19261, i64 1
%19263 = load float, float* %19262
%19264 = fsub float %19260, %19263
%19265 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %19264, float* %19265
%19266 = load float*, float** %9
%19267 = getelementptr inbounds float, float* %19266, i64 2
%19268 = load float, float* %19267
%19269 = load float*, float** %8
%19270 = getelementptr inbounds float, float* %19269, i64 2
%19271 = load float, float* %19270
%19272 = fsub float %19268, %19271
%19273 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %19272, float* %19273
%19274 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%19275 = load float, float* %19274
%19276 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%19277 = load float, float* %19276
%19278 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%19279 = load float, float* %19278
%19280 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%19281 = load float, float* %19280
%19282 = fmul float %19279, %19281
%19283 = fneg float %19282
%19284 = call float @llvm.fmuladd.f32(float %19275, float %19277, float %19283)
%19285 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %19284, float* %19285
%19286 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%19287 = load float, float* %19286
%19288 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%19289 = load float, float* %19288
%19290 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%19291 = load float, float* %19290
%19292 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%19293 = load float, float* %19292
%19294 = fmul float %19291, %19293
%19295 = fneg float %19294
%19296 = call float @llvm.fmuladd.f32(float %19287, float %19289, float %19295)
%19297 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %19296, float* %19297
%19298 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%19299 = load float, float* %19298
%19300 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%19301 = load float, float* %19300
%19302 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%19303 = load float, float* %19302
%19304 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%19305 = load float, float* %19304
%19306 = fmul float %19303, %19305
%19307 = fneg float %19306
%19308 = call float @llvm.fmuladd.f32(float %19299, float %19301, float %19307)
%19309 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %19308, float* %19309
%19310 = load float*, float** %12
%19311 = getelementptr inbounds float, float* %19310, i64 0
%19312 = load float, float* %19311
%19313 = load float*, float** %8
%19314 = getelementptr inbounds float, float* %19313, i64 0
%19315 = load float, float* %19314
%19316 = fsub float %19312, %19315
%19317 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %19316, float* %19317
%19318 = load float*, float** %12
%19319 = getelementptr inbounds float, float* %19318, i64 1
%19320 = load float, float* %19319
%19321 = load float*, float** %8
%19322 = getelementptr inbounds float, float* %19321, i64 1
%19323 = load float, float* %19322
%19324 = fsub float %19320, %19323
%19325 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %19324, float* %19325
%19326 = load float*, float** %12
%19327 = getelementptr inbounds float, float* %19326, i64 2
%19328 = load float, float* %19327
%19329 = load float*, float** %8
%19330 = getelementptr inbounds float, float* %19329, i64 2
%19331 = load float, float* %19330
%19332 = fsub float %19328, %19331
%19333 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %19332, float* %19333
%19334 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%19335 = load float, float* %19334
%19336 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%19337 = load float, float* %19336
%19338 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%19339 = load float, float* %19338
%19340 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%19341 = load float, float* %19340
%19342 = fmul float %19339, %19341
%19343 = call float @llvm.fmuladd.f32(float %19335, float %19337, float %19342)
%19344 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%19345 = load float, float* %19344
%19346 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%19347 = load float, float* %19346
%19348 = call float @llvm.fmuladd.f32(float %19345, float %19347, float %19343)
%19349 = fcmp ogt float %19348, 0.000000e+00
br i1 %19349, label %19350, label %19351
19350: ; preds = %19225
store i32 0, i32* %7
br label %37477
19351: ; preds = %19225
%19352 = load float*, float** %13
%19353 = getelementptr inbounds float, float* %19352, i64 0
%19354 = load float, float* %19353
%19355 = load float*, float** %9
%19356 = getelementptr inbounds float, float* %19355, i64 0
%19357 = load float, float* %19356
%19358 = fsub float %19354, %19357
%19359 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %19358, float* %19359
%19360 = load float*, float** %13
%19361 = getelementptr inbounds float, float* %19360, i64 1
%19362 = load float, float* %19361
%19363 = load float*, float** %9
%19364 = getelementptr inbounds float, float* %19363, i64 1
%19365 = load float, float* %19364
%19366 = fsub float %19362, %19365
%19367 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %19366, float* %19367
%19368 = load float*, float** %13
%19369 = getelementptr inbounds float, float* %19368, i64 2
%19370 = load float, float* %19369
%19371 = load float*, float** %9
%19372 = getelementptr inbounds float, float* %19371, i64 2
%19373 = load float, float* %19372
%19374 = fsub float %19370, %19373
%19375 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %19374, float* %19375
%19376 = load float*, float** %10
%19377 = getelementptr inbounds float, float* %19376, i64 0
%19378 = load float, float* %19377
%19379 = load float*, float** %9
%19380 = getelementptr inbounds float, float* %19379, i64 0
%19381 = load float, float* %19380
%19382 = fsub float %19378, %19381
%19383 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %19382, float* %19383
%19384 = load float*, float** %10
%19385 = getelementptr inbounds float, float* %19384, i64 1
%19386 = load float, float* %19385
%19387 = load float*, float** %9
%19388 = getelementptr inbounds float, float* %19387, i64 1
%19389 = load float, float* %19388
%19390 = fsub float %19386, %19389
%19391 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %19390, float* %19391
%19392 = load float*, float** %10
%19393 = getelementptr inbounds float, float* %19392, i64 2
%19394 = load float, float* %19393
%19395 = load float*, float** %9
%19396 = getelementptr inbounds float, float* %19395, i64 2
%19397 = load float, float* %19396
%19398 = fsub float %19394, %19397
%19399 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %19398, float* %19399
%19400 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%19401 = load float, float* %19400
%19402 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%19403 = load float, float* %19402
%19404 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%19405 = load float, float* %19404
%19406 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%19407 = load float, float* %19406
%19408 = fmul float %19405, %19407
%19409 = fneg float %19408
%19410 = call float @llvm.fmuladd.f32(float %19401, float %19403, float %19409)
%19411 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %19410, float* %19411
%19412 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%19413 = load float, float* %19412
%19414 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%19415 = load float, float* %19414
%19416 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%19417 = load float, float* %19416
%19418 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%19419 = load float, float* %19418
%19420 = fmul float %19417, %19419
%19421 = fneg float %19420
%19422 = call float @llvm.fmuladd.f32(float %19413, float %19415, float %19421)
%19423 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %19422, float* %19423
%19424 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%19425 = load float, float* %19424
%19426 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%19427 = load float, float* %19426
%19428 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%19429 = load float, float* %19428
%19430 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%19431 = load float, float* %19430
%19432 = fmul float %19429, %19431
%19433 = fneg float %19432
%19434 = call float @llvm.fmuladd.f32(float %19425, float %19427, float %19433)
%19435 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %19434, float* %19435
%19436 = load float*, float** %11
%19437 = getelementptr inbounds float, float* %19436, i64 0
%19438 = load float, float* %19437
%19439 = load float*, float** %9
%19440 = getelementptr inbounds float, float* %19439, i64 0
%19441 = load float, float* %19440
%19442 = fsub float %19438, %19441
%19443 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %19442, float* %19443
%19444 = load float*, float** %11
%19445 = getelementptr inbounds float, float* %19444, i64 1
%19446 = load float, float* %19445
%19447 = load float*, float** %9
%19448 = getelementptr inbounds float, float* %19447, i64 1
%19449 = load float, float* %19448
%19450 = fsub float %19446, %19449
%19451 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %19450, float* %19451
%19452 = load float*, float** %11
%19453 = getelementptr inbounds float, float* %19452, i64 2
%19454 = load float, float* %19453
%19455 = load float*, float** %9
%19456 = getelementptr inbounds float, float* %19455, i64 2
%19457 = load float, float* %19456
%19458 = fsub float %19454, %19457
%19459 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %19458, float* %19459
%19460 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%19461 = load float, float* %19460
%19462 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%19463 = load float, float* %19462
%19464 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%19465 = load float, float* %19464
%19466 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%19467 = load float, float* %19466
%19468 = fmul float %19465, %19467
%19469 = call float @llvm.fmuladd.f32(float %19461, float %19463, float %19468)
%19470 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%19471 = load float, float* %19470
%19472 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%19473 = load float, float* %19472
%19474 = call float @llvm.fmuladd.f32(float %19471, float %19473, float %19469)
%19475 = fcmp ogt float %19474, 0.000000e+00
br i1 %19475, label %19476, label %19477
19476: ; preds = %19351
store i32 0, i32* %7
br label %37477
19477: ; preds = %19351
store i32 1, i32* %7
br label %37477
19478: ; preds = %19222
%19479 = load float*, float** %11
%19480 = getelementptr inbounds float, float* %19479, i64 0
%19481 = load float, float* %19480
%19482 = load float*, float** %10
%19483 = getelementptr inbounds float, float* %19482, i64 0
%19484 = load float, float* %19483
%19485 = fsub float %19481, %19484
%19486 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %19485, float* %19486
%19487 = load float*, float** %11
%19488 = getelementptr inbounds float, float* %19487, i64 1
%19489 = load float, float* %19488
%19490 = load float*, float** %10
%19491 = getelementptr inbounds float, float* %19490, i64 1
%19492 = load float, float* %19491
%19493 = fsub float %19489, %19492
%19494 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %19493, float* %19494
%19495 = load float*, float** %11
%19496 = getelementptr inbounds float, float* %19495, i64 2
%19497 = load float, float* %19496
%19498 = load float*, float** %10
%19499 = getelementptr inbounds float, float* %19498, i64 2
%19500 = load float, float* %19499
%19501 = fsub float %19497, %19500
%19502 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %19501, float* %19502
%19503 = load float*, float** %9
%19504 = getelementptr inbounds float, float* %19503, i64 0
%19505 = load float, float* %19504
%19506 = load float*, float** %10
%19507 = getelementptr inbounds float, float* %19506, i64 0
%19508 = load float, float* %19507
%19509 = fsub float %19505, %19508
%19510 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %19509, float* %19510
%19511 = load float*, float** %9
%19512 = getelementptr inbounds float, float* %19511, i64 1
%19513 = load float, float* %19512
%19514 = load float*, float** %10
%19515 = getelementptr inbounds float, float* %19514, i64 1
%19516 = load float, float* %19515
%19517 = fsub float %19513, %19516
%19518 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %19517, float* %19518
%19519 = load float*, float** %9
%19520 = getelementptr inbounds float, float* %19519, i64 2
%19521 = load float, float* %19520
%19522 = load float*, float** %10
%19523 = getelementptr inbounds float, float* %19522, i64 2
%19524 = load float, float* %19523
%19525 = fsub float %19521, %19524
%19526 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %19525, float* %19526
%19527 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%19528 = load float, float* %19527
%19529 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%19530 = load float, float* %19529
%19531 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%19532 = load float, float* %19531
%19533 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%19534 = load float, float* %19533
%19535 = fmul float %19532, %19534
%19536 = fneg float %19535
%19537 = call float @llvm.fmuladd.f32(float %19528, float %19530, float %19536)
%19538 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %19537, float* %19538
%19539 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%19540 = load float, float* %19539
%19541 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%19542 = load float, float* %19541
%19543 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%19544 = load float, float* %19543
%19545 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%19546 = load float, float* %19545
%19547 = fmul float %19544, %19546
%19548 = fneg float %19547
%19549 = call float @llvm.fmuladd.f32(float %19540, float %19542, float %19548)
%19550 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %19549, float* %19550
%19551 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%19552 = load float, float* %19551
%19553 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%19554 = load float, float* %19553
%19555 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%19556 = load float, float* %19555
%19557 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%19558 = load float, float* %19557
%19559 = fmul float %19556, %19558
%19560 = fneg float %19559
%19561 = call float @llvm.fmuladd.f32(float %19552, float %19554, float %19560)
%19562 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %19561, float* %19562
%19563 = load float*, float** %13
%19564 = getelementptr inbounds float, float* %19563, i64 0
%19565 = load float, float* %19564
%19566 = load float*, float** %10
%19567 = getelementptr inbounds float, float* %19566, i64 0
%19568 = load float, float* %19567
%19569 = fsub float %19565, %19568
%19570 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %19569, float* %19570
%19571 = load float*, float** %13
%19572 = getelementptr inbounds float, float* %19571, i64 1
%19573 = load float, float* %19572
%19574 = load float*, float** %10
%19575 = getelementptr inbounds float, float* %19574, i64 1
%19576 = load float, float* %19575
%19577 = fsub float %19573, %19576
%19578 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %19577, float* %19578
%19579 = load float*, float** %13
%19580 = getelementptr inbounds float, float* %19579, i64 2
%19581 = load float, float* %19580
%19582 = load float*, float** %10
%19583 = getelementptr inbounds float, float* %19582, i64 2
%19584 = load float, float* %19583
%19585 = fsub float %19581, %19584
%19586 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %19585, float* %19586
%19587 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%19588 = load float, float* %19587
%19589 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%19590 = load float, float* %19589
%19591 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%19592 = load float, float* %19591
%19593 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%19594 = load float, float* %19593
%19595 = fmul float %19592, %19594
%19596 = call float @llvm.fmuladd.f32(float %19588, float %19590, float %19595)
%19597 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%19598 = load float, float* %19597
%19599 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%19600 = load float, float* %19599
%19601 = call float @llvm.fmuladd.f32(float %19598, float %19600, float %19596)
%19602 = fcmp ogt float %19601, 0.000000e+00
br i1 %19602, label %19603, label %19604
19603: ; preds = %19478
store i32 0, i32* %7
br label %37477
19604: ; preds = %19478
%19605 = load float*, float** %11
%19606 = getelementptr inbounds float, float* %19605, i64 0
%19607 = load float, float* %19606
%19608 = load float*, float** %9
%19609 = getelementptr inbounds float, float* %19608, i64 0
%19610 = load float, float* %19609
%19611 = fsub float %19607, %19610
%19612 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %19611, float* %19612
%19613 = load float*, float** %11
%19614 = getelementptr inbounds float, float* %19613, i64 1
%19615 = load float, float* %19614
%19616 = load float*, float** %9
%19617 = getelementptr inbounds float, float* %19616, i64 1
%19618 = load float, float* %19617
%19619 = fsub float %19615, %19618
%19620 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %19619, float* %19620
%19621 = load float*, float** %11
%19622 = getelementptr inbounds float, float* %19621, i64 2
%19623 = load float, float* %19622
%19624 = load float*, float** %9
%19625 = getelementptr inbounds float, float* %19624, i64 2
%19626 = load float, float* %19625
%19627 = fsub float %19623, %19626
%19628 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %19627, float* %19628
%19629 = load float*, float** %8
%19630 = getelementptr inbounds float, float* %19629, i64 0
%19631 = load float, float* %19630
%19632 = load float*, float** %9
%19633 = getelementptr inbounds float, float* %19632, i64 0
%19634 = load float, float* %19633
%19635 = fsub float %19631, %19634
%19636 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %19635, float* %19636
%19637 = load float*, float** %8
%19638 = getelementptr inbounds float, float* %19637, i64 1
%19639 = load float, float* %19638
%19640 = load float*, float** %9
%19641 = getelementptr inbounds float, float* %19640, i64 1
%19642 = load float, float* %19641
%19643 = fsub float %19639, %19642
%19644 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %19643, float* %19644
%19645 = load float*, float** %8
%19646 = getelementptr inbounds float, float* %19645, i64 2
%19647 = load float, float* %19646
%19648 = load float*, float** %9
%19649 = getelementptr inbounds float, float* %19648, i64 2
%19650 = load float, float* %19649
%19651 = fsub float %19647, %19650
%19652 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %19651, float* %19652
%19653 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%19654 = load float, float* %19653
%19655 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%19656 = load float, float* %19655
%19657 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%19658 = load float, float* %19657
%19659 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%19660 = load float, float* %19659
%19661 = fmul float %19658, %19660
%19662 = fneg float %19661
%19663 = call float @llvm.fmuladd.f32(float %19654, float %19656, float %19662)
%19664 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %19663, float* %19664
%19665 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%19666 = load float, float* %19665
%19667 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%19668 = load float, float* %19667
%19669 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%19670 = load float, float* %19669
%19671 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%19672 = load float, float* %19671
%19673 = fmul float %19670, %19672
%19674 = fneg float %19673
%19675 = call float @llvm.fmuladd.f32(float %19666, float %19668, float %19674)
%19676 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %19675, float* %19676
%19677 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%19678 = load float, float* %19677
%19679 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%19680 = load float, float* %19679
%19681 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%19682 = load float, float* %19681
%19683 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%19684 = load float, float* %19683
%19685 = fmul float %19682, %19684
%19686 = fneg float %19685
%19687 = call float @llvm.fmuladd.f32(float %19678, float %19680, float %19686)
%19688 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %19687, float* %19688
%19689 = load float*, float** %12
%19690 = getelementptr inbounds float, float* %19689, i64 0
%19691 = load float, float* %19690
%19692 = load float*, float** %9
%19693 = getelementptr inbounds float, float* %19692, i64 0
%19694 = load float, float* %19693
%19695 = fsub float %19691, %19694
%19696 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %19695, float* %19696
%19697 = load float*, float** %12
%19698 = getelementptr inbounds float, float* %19697, i64 1
%19699 = load float, float* %19698
%19700 = load float*, float** %9
%19701 = getelementptr inbounds float, float* %19700, i64 1
%19702 = load float, float* %19701
%19703 = fsub float %19699, %19702
%19704 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %19703, float* %19704
%19705 = load float*, float** %12
%19706 = getelementptr inbounds float, float* %19705, i64 2
%19707 = load float, float* %19706
%19708 = load float*, float** %9
%19709 = getelementptr inbounds float, float* %19708, i64 2
%19710 = load float, float* %19709
%19711 = fsub float %19707, %19710
%19712 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %19711, float* %19712
%19713 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%19714 = load float, float* %19713
%19715 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%19716 = load float, float* %19715
%19717 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%19718 = load float, float* %19717
%19719 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%19720 = load float, float* %19719
%19721 = fmul float %19718, %19720
%19722 = call float @llvm.fmuladd.f32(float %19714, float %19716, float %19721)
%19723 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%19724 = load float, float* %19723
%19725 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%19726 = load float, float* %19725
%19727 = call float @llvm.fmuladd.f32(float %19724, float %19726, float %19722)
%19728 = fcmp ogt float %19727, 0.000000e+00
br i1 %19728, label %19729, label %19730
19729: ; preds = %19604
store i32 0, i32* %7
br label %37477
19730: ; preds = %19604
store i32 1, i32* %7
br label %37477
19731: ; preds = %18963
%19732 = load float, float* %17
%19733 = fcmp olt float %19732, 0.000000e+00
br i1 %19733, label %19734, label %20499
19734: ; preds = %19731
%19735 = load float, float* %19
%19736 = fcmp olt float %19735, 0.000000e+00
br i1 %19736, label %19737, label %19990
19737: ; preds = %19734
%19738 = load float*, float** %12
%19739 = getelementptr inbounds float, float* %19738, i64 0
%19740 = load float, float* %19739
%19741 = load float*, float** %10
%19742 = getelementptr inbounds float, float* %19741, i64 0
%19743 = load float, float* %19742
%19744 = fsub float %19740, %19743
%19745 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %19744, float* %19745
%19746 = load float*, float** %12
%19747 = getelementptr inbounds float, float* %19746, i64 1
%19748 = load float, float* %19747
%19749 = load float*, float** %10
%19750 = getelementptr inbounds float, float* %19749, i64 1
%19751 = load float, float* %19750
%19752 = fsub float %19748, %19751
%19753 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %19752, float* %19753
%19754 = load float*, float** %12
%19755 = getelementptr inbounds float, float* %19754, i64 2
%19756 = load float, float* %19755
%19757 = load float*, float** %10
%19758 = getelementptr inbounds float, float* %19757, i64 2
%19759 = load float, float* %19758
%19760 = fsub float %19756, %19759
%19761 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %19760, float* %19761
%19762 = load float*, float** %9
%19763 = getelementptr inbounds float, float* %19762, i64 0
%19764 = load float, float* %19763
%19765 = load float*, float** %10
%19766 = getelementptr inbounds float, float* %19765, i64 0
%19767 = load float, float* %19766
%19768 = fsub float %19764, %19767
%19769 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %19768, float* %19769
%19770 = load float*, float** %9
%19771 = getelementptr inbounds float, float* %19770, i64 1
%19772 = load float, float* %19771
%19773 = load float*, float** %10
%19774 = getelementptr inbounds float, float* %19773, i64 1
%19775 = load float, float* %19774
%19776 = fsub float %19772, %19775
%19777 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %19776, float* %19777
%19778 = load float*, float** %9
%19779 = getelementptr inbounds float, float* %19778, i64 2
%19780 = load float, float* %19779
%19781 = load float*, float** %10
%19782 = getelementptr inbounds float, float* %19781, i64 2
%19783 = load float, float* %19782
%19784 = fsub float %19780, %19783
%19785 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %19784, float* %19785
%19786 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%19787 = load float, float* %19786
%19788 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%19789 = load float, float* %19788
%19790 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%19791 = load float, float* %19790
%19792 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%19793 = load float, float* %19792
%19794 = fmul float %19791, %19793
%19795 = fneg float %19794
%19796 = call float @llvm.fmuladd.f32(float %19787, float %19789, float %19795)
%19797 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %19796, float* %19797
%19798 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%19799 = load float, float* %19798
%19800 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%19801 = load float, float* %19800
%19802 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%19803 = load float, float* %19802
%19804 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%19805 = load float, float* %19804
%19806 = fmul float %19803, %19805
%19807 = fneg float %19806
%19808 = call float @llvm.fmuladd.f32(float %19799, float %19801, float %19807)
%19809 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %19808, float* %19809
%19810 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%19811 = load float, float* %19810
%19812 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%19813 = load float, float* %19812
%19814 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%19815 = load float, float* %19814
%19816 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%19817 = load float, float* %19816
%19818 = fmul float %19815, %19817
%19819 = fneg float %19818
%19820 = call float @llvm.fmuladd.f32(float %19811, float %19813, float %19819)
%19821 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %19820, float* %19821
%19822 = load float*, float** %11
%19823 = getelementptr inbounds float, float* %19822, i64 0
%19824 = load float, float* %19823
%19825 = load float*, float** %10
%19826 = getelementptr inbounds float, float* %19825, i64 0
%19827 = load float, float* %19826
%19828 = fsub float %19824, %19827
%19829 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %19828, float* %19829
%19830 = load float*, float** %11
%19831 = getelementptr inbounds float, float* %19830, i64 1
%19832 = load float, float* %19831
%19833 = load float*, float** %10
%19834 = getelementptr inbounds float, float* %19833, i64 1
%19835 = load float, float* %19834
%19836 = fsub float %19832, %19835
%19837 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %19836, float* %19837
%19838 = load float*, float** %11
%19839 = getelementptr inbounds float, float* %19838, i64 2
%19840 = load float, float* %19839
%19841 = load float*, float** %10
%19842 = getelementptr inbounds float, float* %19841, i64 2
%19843 = load float, float* %19842
%19844 = fsub float %19840, %19843
%19845 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %19844, float* %19845
%19846 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%19847 = load float, float* %19846
%19848 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%19849 = load float, float* %19848
%19850 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%19851 = load float, float* %19850
%19852 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%19853 = load float, float* %19852
%19854 = fmul float %19851, %19853
%19855 = call float @llvm.fmuladd.f32(float %19847, float %19849, float %19854)
%19856 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%19857 = load float, float* %19856
%19858 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%19859 = load float, float* %19858
%19860 = call float @llvm.fmuladd.f32(float %19857, float %19859, float %19855)
%19861 = fcmp ogt float %19860, 0.000000e+00
br i1 %19861, label %19862, label %19863
19862: ; preds = %19737
store i32 0, i32* %7
br label %37477
19863: ; preds = %19737
%19864 = load float*, float** %12
%19865 = getelementptr inbounds float, float* %19864, i64 0
%19866 = load float, float* %19865
%19867 = load float*, float** %9
%19868 = getelementptr inbounds float, float* %19867, i64 0
%19869 = load float, float* %19868
%19870 = fsub float %19866, %19869
%19871 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %19870, float* %19871
%19872 = load float*, float** %12
%19873 = getelementptr inbounds float, float* %19872, i64 1
%19874 = load float, float* %19873
%19875 = load float*, float** %9
%19876 = getelementptr inbounds float, float* %19875, i64 1
%19877 = load float, float* %19876
%19878 = fsub float %19874, %19877
%19879 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %19878, float* %19879
%19880 = load float*, float** %12
%19881 = getelementptr inbounds float, float* %19880, i64 2
%19882 = load float, float* %19881
%19883 = load float*, float** %9
%19884 = getelementptr inbounds float, float* %19883, i64 2
%19885 = load float, float* %19884
%19886 = fsub float %19882, %19885
%19887 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %19886, float* %19887
%19888 = load float*, float** %8
%19889 = getelementptr inbounds float, float* %19888, i64 0
%19890 = load float, float* %19889
%19891 = load float*, float** %9
%19892 = getelementptr inbounds float, float* %19891, i64 0
%19893 = load float, float* %19892
%19894 = fsub float %19890, %19893
%19895 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %19894, float* %19895
%19896 = load float*, float** %8
%19897 = getelementptr inbounds float, float* %19896, i64 1
%19898 = load float, float* %19897
%19899 = load float*, float** %9
%19900 = getelementptr inbounds float, float* %19899, i64 1
%19901 = load float, float* %19900
%19902 = fsub float %19898, %19901
%19903 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %19902, float* %19903
%19904 = load float*, float** %8
%19905 = getelementptr inbounds float, float* %19904, i64 2
%19906 = load float, float* %19905
%19907 = load float*, float** %9
%19908 = getelementptr inbounds float, float* %19907, i64 2
%19909 = load float, float* %19908
%19910 = fsub float %19906, %19909
%19911 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %19910, float* %19911
%19912 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%19913 = load float, float* %19912
%19914 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%19915 = load float, float* %19914
%19916 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%19917 = load float, float* %19916
%19918 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%19919 = load float, float* %19918
%19920 = fmul float %19917, %19919
%19921 = fneg float %19920
%19922 = call float @llvm.fmuladd.f32(float %19913, float %19915, float %19921)
%19923 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %19922, float* %19923
%19924 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%19925 = load float, float* %19924
%19926 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%19927 = load float, float* %19926
%19928 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%19929 = load float, float* %19928
%19930 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%19931 = load float, float* %19930
%19932 = fmul float %19929, %19931
%19933 = fneg float %19932
%19934 = call float @llvm.fmuladd.f32(float %19925, float %19927, float %19933)
%19935 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %19934, float* %19935
%19936 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%19937 = load float, float* %19936
%19938 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%19939 = load float, float* %19938
%19940 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%19941 = load float, float* %19940
%19942 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%19943 = load float, float* %19942
%19944 = fmul float %19941, %19943
%19945 = fneg float %19944
%19946 = call float @llvm.fmuladd.f32(float %19937, float %19939, float %19945)
%19947 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %19946, float* %19947
%19948 = load float*, float** %13
%19949 = getelementptr inbounds float, float* %19948, i64 0
%19950 = load float, float* %19949
%19951 = load float*, float** %9
%19952 = getelementptr inbounds float, float* %19951, i64 0
%19953 = load float, float* %19952
%19954 = fsub float %19950, %19953
%19955 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %19954, float* %19955
%19956 = load float*, float** %13
%19957 = getelementptr inbounds float, float* %19956, i64 1
%19958 = load float, float* %19957
%19959 = load float*, float** %9
%19960 = getelementptr inbounds float, float* %19959, i64 1
%19961 = load float, float* %19960
%19962 = fsub float %19958, %19961
%19963 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %19962, float* %19963
%19964 = load float*, float** %13
%19965 = getelementptr inbounds float, float* %19964, i64 2
%19966 = load float, float* %19965
%19967 = load float*, float** %9
%19968 = getelementptr inbounds float, float* %19967, i64 2
%19969 = load float, float* %19968
%19970 = fsub float %19966, %19969
%19971 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %19970, float* %19971
%19972 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%19973 = load float, float* %19972
%19974 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%19975 = load float, float* %19974
%19976 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%19977 = load float, float* %19976
%19978 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%19979 = load float, float* %19978
%19980 = fmul float %19977, %19979
%19981 = call float @llvm.fmuladd.f32(float %19973, float %19975, float %19980)
%19982 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%19983 = load float, float* %19982
%19984 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%19985 = load float, float* %19984
%19986 = call float @llvm.fmuladd.f32(float %19983, float %19985, float %19981)
%19987 = fcmp ogt float %19986, 0.000000e+00
br i1 %19987, label %19988, label %19989
19988: ; preds = %19863
store i32 0, i32* %7
br label %37477
19989: ; preds = %19863
store i32 1, i32* %7
br label %37477
19990: ; preds = %19734
%19991 = load float, float* %18
%19992 = fcmp olt float %19991, 0.000000e+00
br i1 %19992, label %19993, label %20246
19993: ; preds = %19990
%19994 = load float*, float** %13
%19995 = getelementptr inbounds float, float* %19994, i64 0
%19996 = load float, float* %19995
%19997 = load float*, float** %10
%19998 = getelementptr inbounds float, float* %19997, i64 0
%19999 = load float, float* %19998
%20000 = fsub float %19996, %19999
%20001 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %20000, float* %20001
%20002 = load float*, float** %13
%20003 = getelementptr inbounds float, float* %20002, i64 1
%20004 = load float, float* %20003
%20005 = load float*, float** %10
%20006 = getelementptr inbounds float, float* %20005, i64 1
%20007 = load float, float* %20006
%20008 = fsub float %20004, %20007
%20009 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %20008, float* %20009
%20010 = load float*, float** %13
%20011 = getelementptr inbounds float, float* %20010, i64 2
%20012 = load float, float* %20011
%20013 = load float*, float** %10
%20014 = getelementptr inbounds float, float* %20013, i64 2
%20015 = load float, float* %20014
%20016 = fsub float %20012, %20015
%20017 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %20016, float* %20017
%20018 = load float*, float** %9
%20019 = getelementptr inbounds float, float* %20018, i64 0
%20020 = load float, float* %20019
%20021 = load float*, float** %10
%20022 = getelementptr inbounds float, float* %20021, i64 0
%20023 = load float, float* %20022
%20024 = fsub float %20020, %20023
%20025 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %20024, float* %20025
%20026 = load float*, float** %9
%20027 = getelementptr inbounds float, float* %20026, i64 1
%20028 = load float, float* %20027
%20029 = load float*, float** %10
%20030 = getelementptr inbounds float, float* %20029, i64 1
%20031 = load float, float* %20030
%20032 = fsub float %20028, %20031
%20033 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %20032, float* %20033
%20034 = load float*, float** %9
%20035 = getelementptr inbounds float, float* %20034, i64 2
%20036 = load float, float* %20035
%20037 = load float*, float** %10
%20038 = getelementptr inbounds float, float* %20037, i64 2
%20039 = load float, float* %20038
%20040 = fsub float %20036, %20039
%20041 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %20040, float* %20041
%20042 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%20043 = load float, float* %20042
%20044 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%20045 = load float, float* %20044
%20046 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%20047 = load float, float* %20046
%20048 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%20049 = load float, float* %20048
%20050 = fmul float %20047, %20049
%20051 = fneg float %20050
%20052 = call float @llvm.fmuladd.f32(float %20043, float %20045, float %20051)
%20053 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %20052, float* %20053
%20054 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%20055 = load float, float* %20054
%20056 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%20057 = load float, float* %20056
%20058 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%20059 = load float, float* %20058
%20060 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%20061 = load float, float* %20060
%20062 = fmul float %20059, %20061
%20063 = fneg float %20062
%20064 = call float @llvm.fmuladd.f32(float %20055, float %20057, float %20063)
%20065 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %20064, float* %20065
%20066 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%20067 = load float, float* %20066
%20068 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%20069 = load float, float* %20068
%20070 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%20071 = load float, float* %20070
%20072 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%20073 = load float, float* %20072
%20074 = fmul float %20071, %20073
%20075 = fneg float %20074
%20076 = call float @llvm.fmuladd.f32(float %20067, float %20069, float %20075)
%20077 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %20076, float* %20077
%20078 = load float*, float** %12
%20079 = getelementptr inbounds float, float* %20078, i64 0
%20080 = load float, float* %20079
%20081 = load float*, float** %10
%20082 = getelementptr inbounds float, float* %20081, i64 0
%20083 = load float, float* %20082
%20084 = fsub float %20080, %20083
%20085 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %20084, float* %20085
%20086 = load float*, float** %12
%20087 = getelementptr inbounds float, float* %20086, i64 1
%20088 = load float, float* %20087
%20089 = load float*, float** %10
%20090 = getelementptr inbounds float, float* %20089, i64 1
%20091 = load float, float* %20090
%20092 = fsub float %20088, %20091
%20093 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %20092, float* %20093
%20094 = load float*, float** %12
%20095 = getelementptr inbounds float, float* %20094, i64 2
%20096 = load float, float* %20095
%20097 = load float*, float** %10
%20098 = getelementptr inbounds float, float* %20097, i64 2
%20099 = load float, float* %20098
%20100 = fsub float %20096, %20099
%20101 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %20100, float* %20101
%20102 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%20103 = load float, float* %20102
%20104 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%20105 = load float, float* %20104
%20106 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%20107 = load float, float* %20106
%20108 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%20109 = load float, float* %20108
%20110 = fmul float %20107, %20109
%20111 = call float @llvm.fmuladd.f32(float %20103, float %20105, float %20110)
%20112 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%20113 = load float, float* %20112
%20114 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%20115 = load float, float* %20114
%20116 = call float @llvm.fmuladd.f32(float %20113, float %20115, float %20111)
%20117 = fcmp ogt float %20116, 0.000000e+00
br i1 %20117, label %20118, label %20119
20118: ; preds = %19993
store i32 0, i32* %7
br label %37477
20119: ; preds = %19993
%20120 = load float*, float** %13
%20121 = getelementptr inbounds float, float* %20120, i64 0
%20122 = load float, float* %20121
%20123 = load float*, float** %9
%20124 = getelementptr inbounds float, float* %20123, i64 0
%20125 = load float, float* %20124
%20126 = fsub float %20122, %20125
%20127 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %20126, float* %20127
%20128 = load float*, float** %13
%20129 = getelementptr inbounds float, float* %20128, i64 1
%20130 = load float, float* %20129
%20131 = load float*, float** %9
%20132 = getelementptr inbounds float, float* %20131, i64 1
%20133 = load float, float* %20132
%20134 = fsub float %20130, %20133
%20135 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %20134, float* %20135
%20136 = load float*, float** %13
%20137 = getelementptr inbounds float, float* %20136, i64 2
%20138 = load float, float* %20137
%20139 = load float*, float** %9
%20140 = getelementptr inbounds float, float* %20139, i64 2
%20141 = load float, float* %20140
%20142 = fsub float %20138, %20141
%20143 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %20142, float* %20143
%20144 = load float*, float** %8
%20145 = getelementptr inbounds float, float* %20144, i64 0
%20146 = load float, float* %20145
%20147 = load float*, float** %9
%20148 = getelementptr inbounds float, float* %20147, i64 0
%20149 = load float, float* %20148
%20150 = fsub float %20146, %20149
%20151 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %20150, float* %20151
%20152 = load float*, float** %8
%20153 = getelementptr inbounds float, float* %20152, i64 1
%20154 = load float, float* %20153
%20155 = load float*, float** %9
%20156 = getelementptr inbounds float, float* %20155, i64 1
%20157 = load float, float* %20156
%20158 = fsub float %20154, %20157
%20159 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %20158, float* %20159
%20160 = load float*, float** %8
%20161 = getelementptr inbounds float, float* %20160, i64 2
%20162 = load float, float* %20161
%20163 = load float*, float** %9
%20164 = getelementptr inbounds float, float* %20163, i64 2
%20165 = load float, float* %20164
%20166 = fsub float %20162, %20165
%20167 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %20166, float* %20167
%20168 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%20169 = load float, float* %20168
%20170 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%20171 = load float, float* %20170
%20172 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%20173 = load float, float* %20172
%20174 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%20175 = load float, float* %20174
%20176 = fmul float %20173, %20175
%20177 = fneg float %20176
%20178 = call float @llvm.fmuladd.f32(float %20169, float %20171, float %20177)
%20179 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %20178, float* %20179
%20180 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%20181 = load float, float* %20180
%20182 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%20183 = load float, float* %20182
%20184 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%20185 = load float, float* %20184
%20186 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%20187 = load float, float* %20186
%20188 = fmul float %20185, %20187
%20189 = fneg float %20188
%20190 = call float @llvm.fmuladd.f32(float %20181, float %20183, float %20189)
%20191 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %20190, float* %20191
%20192 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%20193 = load float, float* %20192
%20194 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%20195 = load float, float* %20194
%20196 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%20197 = load float, float* %20196
%20198 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%20199 = load float, float* %20198
%20200 = fmul float %20197, %20199
%20201 = fneg float %20200
%20202 = call float @llvm.fmuladd.f32(float %20193, float %20195, float %20201)
%20203 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %20202, float* %20203
%20204 = load float*, float** %11
%20205 = getelementptr inbounds float, float* %20204, i64 0
%20206 = load float, float* %20205
%20207 = load float*, float** %9
%20208 = getelementptr inbounds float, float* %20207, i64 0
%20209 = load float, float* %20208
%20210 = fsub float %20206, %20209
%20211 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %20210, float* %20211
%20212 = load float*, float** %11
%20213 = getelementptr inbounds float, float* %20212, i64 1
%20214 = load float, float* %20213
%20215 = load float*, float** %9
%20216 = getelementptr inbounds float, float* %20215, i64 1
%20217 = load float, float* %20216
%20218 = fsub float %20214, %20217
%20219 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %20218, float* %20219
%20220 = load float*, float** %11
%20221 = getelementptr inbounds float, float* %20220, i64 2
%20222 = load float, float* %20221
%20223 = load float*, float** %9
%20224 = getelementptr inbounds float, float* %20223, i64 2
%20225 = load float, float* %20224
%20226 = fsub float %20222, %20225
%20227 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %20226, float* %20227
%20228 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%20229 = load float, float* %20228
%20230 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%20231 = load float, float* %20230
%20232 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%20233 = load float, float* %20232
%20234 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%20235 = load float, float* %20234
%20236 = fmul float %20233, %20235
%20237 = call float @llvm.fmuladd.f32(float %20229, float %20231, float %20236)
%20238 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%20239 = load float, float* %20238
%20240 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%20241 = load float, float* %20240
%20242 = call float @llvm.fmuladd.f32(float %20239, float %20241, float %20237)
%20243 = fcmp ogt float %20242, 0.000000e+00
br i1 %20243, label %20244, label %20245
20244: ; preds = %20119
store i32 0, i32* %7
br label %37477
20245: ; preds = %20119
store i32 1, i32* %7
br label %37477
20246: ; preds = %19990
%20247 = load float*, float** %11
%20248 = getelementptr inbounds float, float* %20247, i64 0
%20249 = load float, float* %20248
%20250 = load float*, float** %8
%20251 = getelementptr inbounds float, float* %20250, i64 0
%20252 = load float, float* %20251
%20253 = fsub float %20249, %20252
%20254 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %20253, float* %20254
%20255 = load float*, float** %11
%20256 = getelementptr inbounds float, float* %20255, i64 1
%20257 = load float, float* %20256
%20258 = load float*, float** %8
%20259 = getelementptr inbounds float, float* %20258, i64 1
%20260 = load float, float* %20259
%20261 = fsub float %20257, %20260
%20262 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %20261, float* %20262
%20263 = load float*, float** %11
%20264 = getelementptr inbounds float, float* %20263, i64 2
%20265 = load float, float* %20264
%20266 = load float*, float** %8
%20267 = getelementptr inbounds float, float* %20266, i64 2
%20268 = load float, float* %20267
%20269 = fsub float %20265, %20268
%20270 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %20269, float* %20270
%20271 = load float*, float** %9
%20272 = getelementptr inbounds float, float* %20271, i64 0
%20273 = load float, float* %20272
%20274 = load float*, float** %8
%20275 = getelementptr inbounds float, float* %20274, i64 0
%20276 = load float, float* %20275
%20277 = fsub float %20273, %20276
%20278 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %20277, float* %20278
%20279 = load float*, float** %9
%20280 = getelementptr inbounds float, float* %20279, i64 1
%20281 = load float, float* %20280
%20282 = load float*, float** %8
%20283 = getelementptr inbounds float, float* %20282, i64 1
%20284 = load float, float* %20283
%20285 = fsub float %20281, %20284
%20286 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %20285, float* %20286
%20287 = load float*, float** %9
%20288 = getelementptr inbounds float, float* %20287, i64 2
%20289 = load float, float* %20288
%20290 = load float*, float** %8
%20291 = getelementptr inbounds float, float* %20290, i64 2
%20292 = load float, float* %20291
%20293 = fsub float %20289, %20292
%20294 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %20293, float* %20294
%20295 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%20296 = load float, float* %20295
%20297 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%20298 = load float, float* %20297
%20299 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%20300 = load float, float* %20299
%20301 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%20302 = load float, float* %20301
%20303 = fmul float %20300, %20302
%20304 = fneg float %20303
%20305 = call float @llvm.fmuladd.f32(float %20296, float %20298, float %20304)
%20306 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %20305, float* %20306
%20307 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%20308 = load float, float* %20307
%20309 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%20310 = load float, float* %20309
%20311 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%20312 = load float, float* %20311
%20313 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%20314 = load float, float* %20313
%20315 = fmul float %20312, %20314
%20316 = fneg float %20315
%20317 = call float @llvm.fmuladd.f32(float %20308, float %20310, float %20316)
%20318 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %20317, float* %20318
%20319 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%20320 = load float, float* %20319
%20321 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%20322 = load float, float* %20321
%20323 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%20324 = load float, float* %20323
%20325 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%20326 = load float, float* %20325
%20327 = fmul float %20324, %20326
%20328 = fneg float %20327
%20329 = call float @llvm.fmuladd.f32(float %20320, float %20322, float %20328)
%20330 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %20329, float* %20330
%20331 = load float*, float** %13
%20332 = getelementptr inbounds float, float* %20331, i64 0
%20333 = load float, float* %20332
%20334 = load float*, float** %8
%20335 = getelementptr inbounds float, float* %20334, i64 0
%20336 = load float, float* %20335
%20337 = fsub float %20333, %20336
%20338 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %20337, float* %20338
%20339 = load float*, float** %13
%20340 = getelementptr inbounds float, float* %20339, i64 1
%20341 = load float, float* %20340
%20342 = load float*, float** %8
%20343 = getelementptr inbounds float, float* %20342, i64 1
%20344 = load float, float* %20343
%20345 = fsub float %20341, %20344
%20346 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %20345, float* %20346
%20347 = load float*, float** %13
%20348 = getelementptr inbounds float, float* %20347, i64 2
%20349 = load float, float* %20348
%20350 = load float*, float** %8
%20351 = getelementptr inbounds float, float* %20350, i64 2
%20352 = load float, float* %20351
%20353 = fsub float %20349, %20352
%20354 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %20353, float* %20354
%20355 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%20356 = load float, float* %20355
%20357 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%20358 = load float, float* %20357
%20359 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%20360 = load float, float* %20359
%20361 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%20362 = load float, float* %20361
%20363 = fmul float %20360, %20362
%20364 = call float @llvm.fmuladd.f32(float %20356, float %20358, float %20363)
%20365 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%20366 = load float, float* %20365
%20367 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%20368 = load float, float* %20367
%20369 = call float @llvm.fmuladd.f32(float %20366, float %20368, float %20364)
%20370 = fcmp ogt float %20369, 0.000000e+00
br i1 %20370, label %20371, label %20372
20371: ; preds = %20246
store i32 0, i32* %7
br label %37477
20372: ; preds = %20246
%20373 = load float*, float** %11
%20374 = getelementptr inbounds float, float* %20373, i64 0
%20375 = load float, float* %20374
%20376 = load float*, float** %9
%20377 = getelementptr inbounds float, float* %20376, i64 0
%20378 = load float, float* %20377
%20379 = fsub float %20375, %20378
%20380 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %20379, float* %20380
%20381 = load float*, float** %11
%20382 = getelementptr inbounds float, float* %20381, i64 1
%20383 = load float, float* %20382
%20384 = load float*, float** %9
%20385 = getelementptr inbounds float, float* %20384, i64 1
%20386 = load float, float* %20385
%20387 = fsub float %20383, %20386
%20388 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %20387, float* %20388
%20389 = load float*, float** %11
%20390 = getelementptr inbounds float, float* %20389, i64 2
%20391 = load float, float* %20390
%20392 = load float*, float** %9
%20393 = getelementptr inbounds float, float* %20392, i64 2
%20394 = load float, float* %20393
%20395 = fsub float %20391, %20394
%20396 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %20395, float* %20396
%20397 = load float*, float** %10
%20398 = getelementptr inbounds float, float* %20397, i64 0
%20399 = load float, float* %20398
%20400 = load float*, float** %9
%20401 = getelementptr inbounds float, float* %20400, i64 0
%20402 = load float, float* %20401
%20403 = fsub float %20399, %20402
%20404 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %20403, float* %20404
%20405 = load float*, float** %10
%20406 = getelementptr inbounds float, float* %20405, i64 1
%20407 = load float, float* %20406
%20408 = load float*, float** %9
%20409 = getelementptr inbounds float, float* %20408, i64 1
%20410 = load float, float* %20409
%20411 = fsub float %20407, %20410
%20412 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %20411, float* %20412
%20413 = load float*, float** %10
%20414 = getelementptr inbounds float, float* %20413, i64 2
%20415 = load float, float* %20414
%20416 = load float*, float** %9
%20417 = getelementptr inbounds float, float* %20416, i64 2
%20418 = load float, float* %20417
%20419 = fsub float %20415, %20418
%20420 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %20419, float* %20420
%20421 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%20422 = load float, float* %20421
%20423 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%20424 = load float, float* %20423
%20425 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%20426 = load float, float* %20425
%20427 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%20428 = load float, float* %20427
%20429 = fmul float %20426, %20428
%20430 = fneg float %20429
%20431 = call float @llvm.fmuladd.f32(float %20422, float %20424, float %20430)
%20432 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %20431, float* %20432
%20433 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%20434 = load float, float* %20433
%20435 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%20436 = load float, float* %20435
%20437 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%20438 = load float, float* %20437
%20439 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%20440 = load float, float* %20439
%20441 = fmul float %20438, %20440
%20442 = fneg float %20441
%20443 = call float @llvm.fmuladd.f32(float %20434, float %20436, float %20442)
%20444 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %20443, float* %20444
%20445 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%20446 = load float, float* %20445
%20447 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%20448 = load float, float* %20447
%20449 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%20450 = load float, float* %20449
%20451 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%20452 = load float, float* %20451
%20453 = fmul float %20450, %20452
%20454 = fneg float %20453
%20455 = call float @llvm.fmuladd.f32(float %20446, float %20448, float %20454)
%20456 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %20455, float* %20456
%20457 = load float*, float** %12
%20458 = getelementptr inbounds float, float* %20457, i64 0
%20459 = load float, float* %20458
%20460 = load float*, float** %9
%20461 = getelementptr inbounds float, float* %20460, i64 0
%20462 = load float, float* %20461
%20463 = fsub float %20459, %20462
%20464 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %20463, float* %20464
%20465 = load float*, float** %12
%20466 = getelementptr inbounds float, float* %20465, i64 1
%20467 = load float, float* %20466
%20468 = load float*, float** %9
%20469 = getelementptr inbounds float, float* %20468, i64 1
%20470 = load float, float* %20469
%20471 = fsub float %20467, %20470
%20472 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %20471, float* %20472
%20473 = load float*, float** %12
%20474 = getelementptr inbounds float, float* %20473, i64 2
%20475 = load float, float* %20474
%20476 = load float*, float** %9
%20477 = getelementptr inbounds float, float* %20476, i64 2
%20478 = load float, float* %20477
%20479 = fsub float %20475, %20478
%20480 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %20479, float* %20480
%20481 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%20482 = load float, float* %20481
%20483 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%20484 = load float, float* %20483
%20485 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%20486 = load float, float* %20485
%20487 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%20488 = load float, float* %20487
%20489 = fmul float %20486, %20488
%20490 = call float @llvm.fmuladd.f32(float %20482, float %20484, float %20489)
%20491 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%20492 = load float, float* %20491
%20493 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%20494 = load float, float* %20493
%20495 = call float @llvm.fmuladd.f32(float %20492, float %20494, float %20490)
%20496 = fcmp ogt float %20495, 0.000000e+00
br i1 %20496, label %20497, label %20498
20497: ; preds = %20372
store i32 0, i32* %7
br label %37477
20498: ; preds = %20372
store i32 1, i32* %7
br label %37477
20499: ; preds = %19731
%20500 = load float, float* %19
%20501 = fcmp olt float %20500, 0.000000e+00
br i1 %20501, label %20502, label %21011
20502: ; preds = %20499
%20503 = load float, float* %18
%20504 = fcmp oge float %20503, 0.000000e+00
br i1 %20504, label %20505, label %20758
20505: ; preds = %20502
%20506 = load float*, float** %13
%20507 = getelementptr inbounds float, float* %20506, i64 0
%20508 = load float, float* %20507
%20509 = load float*, float** %8
%20510 = getelementptr inbounds float, float* %20509, i64 0
%20511 = load float, float* %20510
%20512 = fsub float %20508, %20511
%20513 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %20512, float* %20513
%20514 = load float*, float** %13
%20515 = getelementptr inbounds float, float* %20514, i64 1
%20516 = load float, float* %20515
%20517 = load float*, float** %8
%20518 = getelementptr inbounds float, float* %20517, i64 1
%20519 = load float, float* %20518
%20520 = fsub float %20516, %20519
%20521 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %20520, float* %20521
%20522 = load float*, float** %13
%20523 = getelementptr inbounds float, float* %20522, i64 2
%20524 = load float, float* %20523
%20525 = load float*, float** %8
%20526 = getelementptr inbounds float, float* %20525, i64 2
%20527 = load float, float* %20526
%20528 = fsub float %20524, %20527
%20529 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %20528, float* %20529
%20530 = load float*, float** %9
%20531 = getelementptr inbounds float, float* %20530, i64 0
%20532 = load float, float* %20531
%20533 = load float*, float** %8
%20534 = getelementptr inbounds float, float* %20533, i64 0
%20535 = load float, float* %20534
%20536 = fsub float %20532, %20535
%20537 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %20536, float* %20537
%20538 = load float*, float** %9
%20539 = getelementptr inbounds float, float* %20538, i64 1
%20540 = load float, float* %20539
%20541 = load float*, float** %8
%20542 = getelementptr inbounds float, float* %20541, i64 1
%20543 = load float, float* %20542
%20544 = fsub float %20540, %20543
%20545 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %20544, float* %20545
%20546 = load float*, float** %9
%20547 = getelementptr inbounds float, float* %20546, i64 2
%20548 = load float, float* %20547
%20549 = load float*, float** %8
%20550 = getelementptr inbounds float, float* %20549, i64 2
%20551 = load float, float* %20550
%20552 = fsub float %20548, %20551
%20553 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %20552, float* %20553
%20554 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%20555 = load float, float* %20554
%20556 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%20557 = load float, float* %20556
%20558 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%20559 = load float, float* %20558
%20560 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%20561 = load float, float* %20560
%20562 = fmul float %20559, %20561
%20563 = fneg float %20562
%20564 = call float @llvm.fmuladd.f32(float %20555, float %20557, float %20563)
%20565 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %20564, float* %20565
%20566 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%20567 = load float, float* %20566
%20568 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%20569 = load float, float* %20568
%20570 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%20571 = load float, float* %20570
%20572 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%20573 = load float, float* %20572
%20574 = fmul float %20571, %20573
%20575 = fneg float %20574
%20576 = call float @llvm.fmuladd.f32(float %20567, float %20569, float %20575)
%20577 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %20576, float* %20577
%20578 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%20579 = load float, float* %20578
%20580 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%20581 = load float, float* %20580
%20582 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%20583 = load float, float* %20582
%20584 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%20585 = load float, float* %20584
%20586 = fmul float %20583, %20585
%20587 = fneg float %20586
%20588 = call float @llvm.fmuladd.f32(float %20579, float %20581, float %20587)
%20589 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %20588, float* %20589
%20590 = load float*, float** %12
%20591 = getelementptr inbounds float, float* %20590, i64 0
%20592 = load float, float* %20591
%20593 = load float*, float** %8
%20594 = getelementptr inbounds float, float* %20593, i64 0
%20595 = load float, float* %20594
%20596 = fsub float %20592, %20595
%20597 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %20596, float* %20597
%20598 = load float*, float** %12
%20599 = getelementptr inbounds float, float* %20598, i64 1
%20600 = load float, float* %20599
%20601 = load float*, float** %8
%20602 = getelementptr inbounds float, float* %20601, i64 1
%20603 = load float, float* %20602
%20604 = fsub float %20600, %20603
%20605 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %20604, float* %20605
%20606 = load float*, float** %12
%20607 = getelementptr inbounds float, float* %20606, i64 2
%20608 = load float, float* %20607
%20609 = load float*, float** %8
%20610 = getelementptr inbounds float, float* %20609, i64 2
%20611 = load float, float* %20610
%20612 = fsub float %20608, %20611
%20613 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %20612, float* %20613
%20614 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%20615 = load float, float* %20614
%20616 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%20617 = load float, float* %20616
%20618 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%20619 = load float, float* %20618
%20620 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%20621 = load float, float* %20620
%20622 = fmul float %20619, %20621
%20623 = call float @llvm.fmuladd.f32(float %20615, float %20617, float %20622)
%20624 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%20625 = load float, float* %20624
%20626 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%20627 = load float, float* %20626
%20628 = call float @llvm.fmuladd.f32(float %20625, float %20627, float %20623)
%20629 = fcmp ogt float %20628, 0.000000e+00
br i1 %20629, label %20630, label %20631
20630: ; preds = %20505
store i32 0, i32* %7
br label %37477
20631: ; preds = %20505
%20632 = load float*, float** %13
%20633 = getelementptr inbounds float, float* %20632, i64 0
%20634 = load float, float* %20633
%20635 = load float*, float** %9
%20636 = getelementptr inbounds float, float* %20635, i64 0
%20637 = load float, float* %20636
%20638 = fsub float %20634, %20637
%20639 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %20638, float* %20639
%20640 = load float*, float** %13
%20641 = getelementptr inbounds float, float* %20640, i64 1
%20642 = load float, float* %20641
%20643 = load float*, float** %9
%20644 = getelementptr inbounds float, float* %20643, i64 1
%20645 = load float, float* %20644
%20646 = fsub float %20642, %20645
%20647 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %20646, float* %20647
%20648 = load float*, float** %13
%20649 = getelementptr inbounds float, float* %20648, i64 2
%20650 = load float, float* %20649
%20651 = load float*, float** %9
%20652 = getelementptr inbounds float, float* %20651, i64 2
%20653 = load float, float* %20652
%20654 = fsub float %20650, %20653
%20655 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %20654, float* %20655
%20656 = load float*, float** %10
%20657 = getelementptr inbounds float, float* %20656, i64 0
%20658 = load float, float* %20657
%20659 = load float*, float** %9
%20660 = getelementptr inbounds float, float* %20659, i64 0
%20661 = load float, float* %20660
%20662 = fsub float %20658, %20661
%20663 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %20662, float* %20663
%20664 = load float*, float** %10
%20665 = getelementptr inbounds float, float* %20664, i64 1
%20666 = load float, float* %20665
%20667 = load float*, float** %9
%20668 = getelementptr inbounds float, float* %20667, i64 1
%20669 = load float, float* %20668
%20670 = fsub float %20666, %20669
%20671 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %20670, float* %20671
%20672 = load float*, float** %10
%20673 = getelementptr inbounds float, float* %20672, i64 2
%20674 = load float, float* %20673
%20675 = load float*, float** %9
%20676 = getelementptr inbounds float, float* %20675, i64 2
%20677 = load float, float* %20676
%20678 = fsub float %20674, %20677
%20679 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %20678, float* %20679
%20680 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%20681 = load float, float* %20680
%20682 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%20683 = load float, float* %20682
%20684 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%20685 = load float, float* %20684
%20686 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%20687 = load float, float* %20686
%20688 = fmul float %20685, %20687
%20689 = fneg float %20688
%20690 = call float @llvm.fmuladd.f32(float %20681, float %20683, float %20689)
%20691 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %20690, float* %20691
%20692 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%20693 = load float, float* %20692
%20694 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%20695 = load float, float* %20694
%20696 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%20697 = load float, float* %20696
%20698 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%20699 = load float, float* %20698
%20700 = fmul float %20697, %20699
%20701 = fneg float %20700
%20702 = call float @llvm.fmuladd.f32(float %20693, float %20695, float %20701)
%20703 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %20702, float* %20703
%20704 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%20705 = load float, float* %20704
%20706 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%20707 = load float, float* %20706
%20708 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%20709 = load float, float* %20708
%20710 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%20711 = load float, float* %20710
%20712 = fmul float %20709, %20711
%20713 = fneg float %20712
%20714 = call float @llvm.fmuladd.f32(float %20705, float %20707, float %20713)
%20715 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %20714, float* %20715
%20716 = load float*, float** %11
%20717 = getelementptr inbounds float, float* %20716, i64 0
%20718 = load float, float* %20717
%20719 = load float*, float** %9
%20720 = getelementptr inbounds float, float* %20719, i64 0
%20721 = load float, float* %20720
%20722 = fsub float %20718, %20721
%20723 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %20722, float* %20723
%20724 = load float*, float** %11
%20725 = getelementptr inbounds float, float* %20724, i64 1
%20726 = load float, float* %20725
%20727 = load float*, float** %9
%20728 = getelementptr inbounds float, float* %20727, i64 1
%20729 = load float, float* %20728
%20730 = fsub float %20726, %20729
%20731 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %20730, float* %20731
%20732 = load float*, float** %11
%20733 = getelementptr inbounds float, float* %20732, i64 2
%20734 = load float, float* %20733
%20735 = load float*, float** %9
%20736 = getelementptr inbounds float, float* %20735, i64 2
%20737 = load float, float* %20736
%20738 = fsub float %20734, %20737
%20739 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %20738, float* %20739
%20740 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%20741 = load float, float* %20740
%20742 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%20743 = load float, float* %20742
%20744 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%20745 = load float, float* %20744
%20746 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%20747 = load float, float* %20746
%20748 = fmul float %20745, %20747
%20749 = call float @llvm.fmuladd.f32(float %20741, float %20743, float %20748)
%20750 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%20751 = load float, float* %20750
%20752 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%20753 = load float, float* %20752
%20754 = call float @llvm.fmuladd.f32(float %20751, float %20753, float %20749)
%20755 = fcmp ogt float %20754, 0.000000e+00
br i1 %20755, label %20756, label %20757
20756: ; preds = %20631
store i32 0, i32* %7
br label %37477
20757: ; preds = %20631
store i32 1, i32* %7
br label %37477
20758: ; preds = %20502
%20759 = load float*, float** %11
%20760 = getelementptr inbounds float, float* %20759, i64 0
%20761 = load float, float* %20760
%20762 = load float*, float** %10
%20763 = getelementptr inbounds float, float* %20762, i64 0
%20764 = load float, float* %20763
%20765 = fsub float %20761, %20764
%20766 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %20765, float* %20766
%20767 = load float*, float** %11
%20768 = getelementptr inbounds float, float* %20767, i64 1
%20769 = load float, float* %20768
%20770 = load float*, float** %10
%20771 = getelementptr inbounds float, float* %20770, i64 1
%20772 = load float, float* %20771
%20773 = fsub float %20769, %20772
%20774 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %20773, float* %20774
%20775 = load float*, float** %11
%20776 = getelementptr inbounds float, float* %20775, i64 2
%20777 = load float, float* %20776
%20778 = load float*, float** %10
%20779 = getelementptr inbounds float, float* %20778, i64 2
%20780 = load float, float* %20779
%20781 = fsub float %20777, %20780
%20782 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %20781, float* %20782
%20783 = load float*, float** %9
%20784 = getelementptr inbounds float, float* %20783, i64 0
%20785 = load float, float* %20784
%20786 = load float*, float** %10
%20787 = getelementptr inbounds float, float* %20786, i64 0
%20788 = load float, float* %20787
%20789 = fsub float %20785, %20788
%20790 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %20789, float* %20790
%20791 = load float*, float** %9
%20792 = getelementptr inbounds float, float* %20791, i64 1
%20793 = load float, float* %20792
%20794 = load float*, float** %10
%20795 = getelementptr inbounds float, float* %20794, i64 1
%20796 = load float, float* %20795
%20797 = fsub float %20793, %20796
%20798 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %20797, float* %20798
%20799 = load float*, float** %9
%20800 = getelementptr inbounds float, float* %20799, i64 2
%20801 = load float, float* %20800
%20802 = load float*, float** %10
%20803 = getelementptr inbounds float, float* %20802, i64 2
%20804 = load float, float* %20803
%20805 = fsub float %20801, %20804
%20806 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %20805, float* %20806
%20807 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%20808 = load float, float* %20807
%20809 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%20810 = load float, float* %20809
%20811 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%20812 = load float, float* %20811
%20813 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%20814 = load float, float* %20813
%20815 = fmul float %20812, %20814
%20816 = fneg float %20815
%20817 = call float @llvm.fmuladd.f32(float %20808, float %20810, float %20816)
%20818 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %20817, float* %20818
%20819 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%20820 = load float, float* %20819
%20821 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%20822 = load float, float* %20821
%20823 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%20824 = load float, float* %20823
%20825 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%20826 = load float, float* %20825
%20827 = fmul float %20824, %20826
%20828 = fneg float %20827
%20829 = call float @llvm.fmuladd.f32(float %20820, float %20822, float %20828)
%20830 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %20829, float* %20830
%20831 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%20832 = load float, float* %20831
%20833 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%20834 = load float, float* %20833
%20835 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%20836 = load float, float* %20835
%20837 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%20838 = load float, float* %20837
%20839 = fmul float %20836, %20838
%20840 = fneg float %20839
%20841 = call float @llvm.fmuladd.f32(float %20832, float %20834, float %20840)
%20842 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %20841, float* %20842
%20843 = load float*, float** %13
%20844 = getelementptr inbounds float, float* %20843, i64 0
%20845 = load float, float* %20844
%20846 = load float*, float** %10
%20847 = getelementptr inbounds float, float* %20846, i64 0
%20848 = load float, float* %20847
%20849 = fsub float %20845, %20848
%20850 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %20849, float* %20850
%20851 = load float*, float** %13
%20852 = getelementptr inbounds float, float* %20851, i64 1
%20853 = load float, float* %20852
%20854 = load float*, float** %10
%20855 = getelementptr inbounds float, float* %20854, i64 1
%20856 = load float, float* %20855
%20857 = fsub float %20853, %20856
%20858 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %20857, float* %20858
%20859 = load float*, float** %13
%20860 = getelementptr inbounds float, float* %20859, i64 2
%20861 = load float, float* %20860
%20862 = load float*, float** %10
%20863 = getelementptr inbounds float, float* %20862, i64 2
%20864 = load float, float* %20863
%20865 = fsub float %20861, %20864
%20866 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %20865, float* %20866
%20867 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%20868 = load float, float* %20867
%20869 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%20870 = load float, float* %20869
%20871 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%20872 = load float, float* %20871
%20873 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%20874 = load float, float* %20873
%20875 = fmul float %20872, %20874
%20876 = call float @llvm.fmuladd.f32(float %20868, float %20870, float %20875)
%20877 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%20878 = load float, float* %20877
%20879 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%20880 = load float, float* %20879
%20881 = call float @llvm.fmuladd.f32(float %20878, float %20880, float %20876)
%20882 = fcmp ogt float %20881, 0.000000e+00
br i1 %20882, label %20883, label %20884
20883: ; preds = %20758
store i32 0, i32* %7
br label %37477
20884: ; preds = %20758
%20885 = load float*, float** %11
%20886 = getelementptr inbounds float, float* %20885, i64 0
%20887 = load float, float* %20886
%20888 = load float*, float** %9
%20889 = getelementptr inbounds float, float* %20888, i64 0
%20890 = load float, float* %20889
%20891 = fsub float %20887, %20890
%20892 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %20891, float* %20892
%20893 = load float*, float** %11
%20894 = getelementptr inbounds float, float* %20893, i64 1
%20895 = load float, float* %20894
%20896 = load float*, float** %9
%20897 = getelementptr inbounds float, float* %20896, i64 1
%20898 = load float, float* %20897
%20899 = fsub float %20895, %20898
%20900 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %20899, float* %20900
%20901 = load float*, float** %11
%20902 = getelementptr inbounds float, float* %20901, i64 2
%20903 = load float, float* %20902
%20904 = load float*, float** %9
%20905 = getelementptr inbounds float, float* %20904, i64 2
%20906 = load float, float* %20905
%20907 = fsub float %20903, %20906
%20908 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %20907, float* %20908
%20909 = load float*, float** %8
%20910 = getelementptr inbounds float, float* %20909, i64 0
%20911 = load float, float* %20910
%20912 = load float*, float** %9
%20913 = getelementptr inbounds float, float* %20912, i64 0
%20914 = load float, float* %20913
%20915 = fsub float %20911, %20914
%20916 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %20915, float* %20916
%20917 = load float*, float** %8
%20918 = getelementptr inbounds float, float* %20917, i64 1
%20919 = load float, float* %20918
%20920 = load float*, float** %9
%20921 = getelementptr inbounds float, float* %20920, i64 1
%20922 = load float, float* %20921
%20923 = fsub float %20919, %20922
%20924 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %20923, float* %20924
%20925 = load float*, float** %8
%20926 = getelementptr inbounds float, float* %20925, i64 2
%20927 = load float, float* %20926
%20928 = load float*, float** %9
%20929 = getelementptr inbounds float, float* %20928, i64 2
%20930 = load float, float* %20929
%20931 = fsub float %20927, %20930
%20932 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %20931, float* %20932
%20933 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%20934 = load float, float* %20933
%20935 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%20936 = load float, float* %20935
%20937 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%20938 = load float, float* %20937
%20939 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%20940 = load float, float* %20939
%20941 = fmul float %20938, %20940
%20942 = fneg float %20941
%20943 = call float @llvm.fmuladd.f32(float %20934, float %20936, float %20942)
%20944 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %20943, float* %20944
%20945 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%20946 = load float, float* %20945
%20947 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%20948 = load float, float* %20947
%20949 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%20950 = load float, float* %20949
%20951 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%20952 = load float, float* %20951
%20953 = fmul float %20950, %20952
%20954 = fneg float %20953
%20955 = call float @llvm.fmuladd.f32(float %20946, float %20948, float %20954)
%20956 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %20955, float* %20956
%20957 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%20958 = load float, float* %20957
%20959 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%20960 = load float, float* %20959
%20961 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%20962 = load float, float* %20961
%20963 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%20964 = load float, float* %20963
%20965 = fmul float %20962, %20964
%20966 = fneg float %20965
%20967 = call float @llvm.fmuladd.f32(float %20958, float %20960, float %20966)
%20968 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %20967, float* %20968
%20969 = load float*, float** %12
%20970 = getelementptr inbounds float, float* %20969, i64 0
%20971 = load float, float* %20970
%20972 = load float*, float** %9
%20973 = getelementptr inbounds float, float* %20972, i64 0
%20974 = load float, float* %20973
%20975 = fsub float %20971, %20974
%20976 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %20975, float* %20976
%20977 = load float*, float** %12
%20978 = getelementptr inbounds float, float* %20977, i64 1
%20979 = load float, float* %20978
%20980 = load float*, float** %9
%20981 = getelementptr inbounds float, float* %20980, i64 1
%20982 = load float, float* %20981
%20983 = fsub float %20979, %20982
%20984 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %20983, float* %20984
%20985 = load float*, float** %12
%20986 = getelementptr inbounds float, float* %20985, i64 2
%20987 = load float, float* %20986
%20988 = load float*, float** %9
%20989 = getelementptr inbounds float, float* %20988, i64 2
%20990 = load float, float* %20989
%20991 = fsub float %20987, %20990
%20992 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %20991, float* %20992
%20993 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%20994 = load float, float* %20993
%20995 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%20996 = load float, float* %20995
%20997 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%20998 = load float, float* %20997
%20999 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%21000 = load float, float* %20999
%21001 = fmul float %20998, %21000
%21002 = call float @llvm.fmuladd.f32(float %20994, float %20996, float %21001)
%21003 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%21004 = load float, float* %21003
%21005 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%21006 = load float, float* %21005
%21007 = call float @llvm.fmuladd.f32(float %21004, float %21006, float %21002)
%21008 = fcmp ogt float %21007, 0.000000e+00
br i1 %21008, label %21009, label %21010
21009: ; preds = %20884
store i32 0, i32* %7
br label %37477
21010: ; preds = %20884
store i32 1, i32* %7
br label %37477
21011: ; preds = %20499
%21012 = load float, float* %19
%21013 = fcmp ogt float %21012, 0.000000e+00
br i1 %21013, label %21014, label %21523
21014: ; preds = %21011
%21015 = load float, float* %18
%21016 = fcmp ogt float %21015, 0.000000e+00
br i1 %21016, label %21017, label %21270
21017: ; preds = %21014
%21018 = load float*, float** %11
%21019 = getelementptr inbounds float, float* %21018, i64 0
%21020 = load float, float* %21019
%21021 = load float*, float** %8
%21022 = getelementptr inbounds float, float* %21021, i64 0
%21023 = load float, float* %21022
%21024 = fsub float %21020, %21023
%21025 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %21024, float* %21025
%21026 = load float*, float** %11
%21027 = getelementptr inbounds float, float* %21026, i64 1
%21028 = load float, float* %21027
%21029 = load float*, float** %8
%21030 = getelementptr inbounds float, float* %21029, i64 1
%21031 = load float, float* %21030
%21032 = fsub float %21028, %21031
%21033 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %21032, float* %21033
%21034 = load float*, float** %11
%21035 = getelementptr inbounds float, float* %21034, i64 2
%21036 = load float, float* %21035
%21037 = load float*, float** %8
%21038 = getelementptr inbounds float, float* %21037, i64 2
%21039 = load float, float* %21038
%21040 = fsub float %21036, %21039
%21041 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %21040, float* %21041
%21042 = load float*, float** %9
%21043 = getelementptr inbounds float, float* %21042, i64 0
%21044 = load float, float* %21043
%21045 = load float*, float** %8
%21046 = getelementptr inbounds float, float* %21045, i64 0
%21047 = load float, float* %21046
%21048 = fsub float %21044, %21047
%21049 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %21048, float* %21049
%21050 = load float*, float** %9
%21051 = getelementptr inbounds float, float* %21050, i64 1
%21052 = load float, float* %21051
%21053 = load float*, float** %8
%21054 = getelementptr inbounds float, float* %21053, i64 1
%21055 = load float, float* %21054
%21056 = fsub float %21052, %21055
%21057 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %21056, float* %21057
%21058 = load float*, float** %9
%21059 = getelementptr inbounds float, float* %21058, i64 2
%21060 = load float, float* %21059
%21061 = load float*, float** %8
%21062 = getelementptr inbounds float, float* %21061, i64 2
%21063 = load float, float* %21062
%21064 = fsub float %21060, %21063
%21065 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %21064, float* %21065
%21066 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%21067 = load float, float* %21066
%21068 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%21069 = load float, float* %21068
%21070 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%21071 = load float, float* %21070
%21072 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%21073 = load float, float* %21072
%21074 = fmul float %21071, %21073
%21075 = fneg float %21074
%21076 = call float @llvm.fmuladd.f32(float %21067, float %21069, float %21075)
%21077 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %21076, float* %21077
%21078 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%21079 = load float, float* %21078
%21080 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%21081 = load float, float* %21080
%21082 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%21083 = load float, float* %21082
%21084 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%21085 = load float, float* %21084
%21086 = fmul float %21083, %21085
%21087 = fneg float %21086
%21088 = call float @llvm.fmuladd.f32(float %21079, float %21081, float %21087)
%21089 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %21088, float* %21089
%21090 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%21091 = load float, float* %21090
%21092 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%21093 = load float, float* %21092
%21094 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%21095 = load float, float* %21094
%21096 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%21097 = load float, float* %21096
%21098 = fmul float %21095, %21097
%21099 = fneg float %21098
%21100 = call float @llvm.fmuladd.f32(float %21091, float %21093, float %21099)
%21101 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %21100, float* %21101
%21102 = load float*, float** %13
%21103 = getelementptr inbounds float, float* %21102, i64 0
%21104 = load float, float* %21103
%21105 = load float*, float** %8
%21106 = getelementptr inbounds float, float* %21105, i64 0
%21107 = load float, float* %21106
%21108 = fsub float %21104, %21107
%21109 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %21108, float* %21109
%21110 = load float*, float** %13
%21111 = getelementptr inbounds float, float* %21110, i64 1
%21112 = load float, float* %21111
%21113 = load float*, float** %8
%21114 = getelementptr inbounds float, float* %21113, i64 1
%21115 = load float, float* %21114
%21116 = fsub float %21112, %21115
%21117 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %21116, float* %21117
%21118 = load float*, float** %13
%21119 = getelementptr inbounds float, float* %21118, i64 2
%21120 = load float, float* %21119
%21121 = load float*, float** %8
%21122 = getelementptr inbounds float, float* %21121, i64 2
%21123 = load float, float* %21122
%21124 = fsub float %21120, %21123
%21125 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %21124, float* %21125
%21126 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%21127 = load float, float* %21126
%21128 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%21129 = load float, float* %21128
%21130 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%21131 = load float, float* %21130
%21132 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%21133 = load float, float* %21132
%21134 = fmul float %21131, %21133
%21135 = call float @llvm.fmuladd.f32(float %21127, float %21129, float %21134)
%21136 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%21137 = load float, float* %21136
%21138 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%21139 = load float, float* %21138
%21140 = call float @llvm.fmuladd.f32(float %21137, float %21139, float %21135)
%21141 = fcmp ogt float %21140, 0.000000e+00
br i1 %21141, label %21142, label %21143
21142: ; preds = %21017
store i32 0, i32* %7
br label %37477
21143: ; preds = %21017
%21144 = load float*, float** %11
%21145 = getelementptr inbounds float, float* %21144, i64 0
%21146 = load float, float* %21145
%21147 = load float*, float** %9
%21148 = getelementptr inbounds float, float* %21147, i64 0
%21149 = load float, float* %21148
%21150 = fsub float %21146, %21149
%21151 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %21150, float* %21151
%21152 = load float*, float** %11
%21153 = getelementptr inbounds float, float* %21152, i64 1
%21154 = load float, float* %21153
%21155 = load float*, float** %9
%21156 = getelementptr inbounds float, float* %21155, i64 1
%21157 = load float, float* %21156
%21158 = fsub float %21154, %21157
%21159 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %21158, float* %21159
%21160 = load float*, float** %11
%21161 = getelementptr inbounds float, float* %21160, i64 2
%21162 = load float, float* %21161
%21163 = load float*, float** %9
%21164 = getelementptr inbounds float, float* %21163, i64 2
%21165 = load float, float* %21164
%21166 = fsub float %21162, %21165
%21167 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %21166, float* %21167
%21168 = load float*, float** %10
%21169 = getelementptr inbounds float, float* %21168, i64 0
%21170 = load float, float* %21169
%21171 = load float*, float** %9
%21172 = getelementptr inbounds float, float* %21171, i64 0
%21173 = load float, float* %21172
%21174 = fsub float %21170, %21173
%21175 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %21174, float* %21175
%21176 = load float*, float** %10
%21177 = getelementptr inbounds float, float* %21176, i64 1
%21178 = load float, float* %21177
%21179 = load float*, float** %9
%21180 = getelementptr inbounds float, float* %21179, i64 1
%21181 = load float, float* %21180
%21182 = fsub float %21178, %21181
%21183 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %21182, float* %21183
%21184 = load float*, float** %10
%21185 = getelementptr inbounds float, float* %21184, i64 2
%21186 = load float, float* %21185
%21187 = load float*, float** %9
%21188 = getelementptr inbounds float, float* %21187, i64 2
%21189 = load float, float* %21188
%21190 = fsub float %21186, %21189
%21191 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %21190, float* %21191
%21192 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%21193 = load float, float* %21192
%21194 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%21195 = load float, float* %21194
%21196 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%21197 = load float, float* %21196
%21198 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%21199 = load float, float* %21198
%21200 = fmul float %21197, %21199
%21201 = fneg float %21200
%21202 = call float @llvm.fmuladd.f32(float %21193, float %21195, float %21201)
%21203 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %21202, float* %21203
%21204 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%21205 = load float, float* %21204
%21206 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%21207 = load float, float* %21206
%21208 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%21209 = load float, float* %21208
%21210 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%21211 = load float, float* %21210
%21212 = fmul float %21209, %21211
%21213 = fneg float %21212
%21214 = call float @llvm.fmuladd.f32(float %21205, float %21207, float %21213)
%21215 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %21214, float* %21215
%21216 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%21217 = load float, float* %21216
%21218 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%21219 = load float, float* %21218
%21220 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%21221 = load float, float* %21220
%21222 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%21223 = load float, float* %21222
%21224 = fmul float %21221, %21223
%21225 = fneg float %21224
%21226 = call float @llvm.fmuladd.f32(float %21217, float %21219, float %21225)
%21227 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %21226, float* %21227
%21228 = load float*, float** %12
%21229 = getelementptr inbounds float, float* %21228, i64 0
%21230 = load float, float* %21229
%21231 = load float*, float** %9
%21232 = getelementptr inbounds float, float* %21231, i64 0
%21233 = load float, float* %21232
%21234 = fsub float %21230, %21233
%21235 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %21234, float* %21235
%21236 = load float*, float** %12
%21237 = getelementptr inbounds float, float* %21236, i64 1
%21238 = load float, float* %21237
%21239 = load float*, float** %9
%21240 = getelementptr inbounds float, float* %21239, i64 1
%21241 = load float, float* %21240
%21242 = fsub float %21238, %21241
%21243 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %21242, float* %21243
%21244 = load float*, float** %12
%21245 = getelementptr inbounds float, float* %21244, i64 2
%21246 = load float, float* %21245
%21247 = load float*, float** %9
%21248 = getelementptr inbounds float, float* %21247, i64 2
%21249 = load float, float* %21248
%21250 = fsub float %21246, %21249
%21251 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %21250, float* %21251
%21252 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%21253 = load float, float* %21252
%21254 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%21255 = load float, float* %21254
%21256 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%21257 = load float, float* %21256
%21258 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%21259 = load float, float* %21258
%21260 = fmul float %21257, %21259
%21261 = call float @llvm.fmuladd.f32(float %21253, float %21255, float %21260)
%21262 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%21263 = load float, float* %21262
%21264 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%21265 = load float, float* %21264
%21266 = call float @llvm.fmuladd.f32(float %21263, float %21265, float %21261)
%21267 = fcmp ogt float %21266, 0.000000e+00
br i1 %21267, label %21268, label %21269
21268: ; preds = %21143
store i32 0, i32* %7
br label %37477
21269: ; preds = %21143
store i32 1, i32* %7
br label %37477
21270: ; preds = %21014
%21271 = load float*, float** %13
%21272 = getelementptr inbounds float, float* %21271, i64 0
%21273 = load float, float* %21272
%21274 = load float*, float** %10
%21275 = getelementptr inbounds float, float* %21274, i64 0
%21276 = load float, float* %21275
%21277 = fsub float %21273, %21276
%21278 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %21277, float* %21278
%21279 = load float*, float** %13
%21280 = getelementptr inbounds float, float* %21279, i64 1
%21281 = load float, float* %21280
%21282 = load float*, float** %10
%21283 = getelementptr inbounds float, float* %21282, i64 1
%21284 = load float, float* %21283
%21285 = fsub float %21281, %21284
%21286 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %21285, float* %21286
%21287 = load float*, float** %13
%21288 = getelementptr inbounds float, float* %21287, i64 2
%21289 = load float, float* %21288
%21290 = load float*, float** %10
%21291 = getelementptr inbounds float, float* %21290, i64 2
%21292 = load float, float* %21291
%21293 = fsub float %21289, %21292
%21294 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %21293, float* %21294
%21295 = load float*, float** %9
%21296 = getelementptr inbounds float, float* %21295, i64 0
%21297 = load float, float* %21296
%21298 = load float*, float** %10
%21299 = getelementptr inbounds float, float* %21298, i64 0
%21300 = load float, float* %21299
%21301 = fsub float %21297, %21300
%21302 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %21301, float* %21302
%21303 = load float*, float** %9
%21304 = getelementptr inbounds float, float* %21303, i64 1
%21305 = load float, float* %21304
%21306 = load float*, float** %10
%21307 = getelementptr inbounds float, float* %21306, i64 1
%21308 = load float, float* %21307
%21309 = fsub float %21305, %21308
%21310 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %21309, float* %21310
%21311 = load float*, float** %9
%21312 = getelementptr inbounds float, float* %21311, i64 2
%21313 = load float, float* %21312
%21314 = load float*, float** %10
%21315 = getelementptr inbounds float, float* %21314, i64 2
%21316 = load float, float* %21315
%21317 = fsub float %21313, %21316
%21318 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %21317, float* %21318
%21319 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%21320 = load float, float* %21319
%21321 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%21322 = load float, float* %21321
%21323 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%21324 = load float, float* %21323
%21325 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%21326 = load float, float* %21325
%21327 = fmul float %21324, %21326
%21328 = fneg float %21327
%21329 = call float @llvm.fmuladd.f32(float %21320, float %21322, float %21328)
%21330 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %21329, float* %21330
%21331 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%21332 = load float, float* %21331
%21333 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%21334 = load float, float* %21333
%21335 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%21336 = load float, float* %21335
%21337 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%21338 = load float, float* %21337
%21339 = fmul float %21336, %21338
%21340 = fneg float %21339
%21341 = call float @llvm.fmuladd.f32(float %21332, float %21334, float %21340)
%21342 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %21341, float* %21342
%21343 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%21344 = load float, float* %21343
%21345 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%21346 = load float, float* %21345
%21347 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%21348 = load float, float* %21347
%21349 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%21350 = load float, float* %21349
%21351 = fmul float %21348, %21350
%21352 = fneg float %21351
%21353 = call float @llvm.fmuladd.f32(float %21344, float %21346, float %21352)
%21354 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %21353, float* %21354
%21355 = load float*, float** %12
%21356 = getelementptr inbounds float, float* %21355, i64 0
%21357 = load float, float* %21356
%21358 = load float*, float** %10
%21359 = getelementptr inbounds float, float* %21358, i64 0
%21360 = load float, float* %21359
%21361 = fsub float %21357, %21360
%21362 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %21361, float* %21362
%21363 = load float*, float** %12
%21364 = getelementptr inbounds float, float* %21363, i64 1
%21365 = load float, float* %21364
%21366 = load float*, float** %10
%21367 = getelementptr inbounds float, float* %21366, i64 1
%21368 = load float, float* %21367
%21369 = fsub float %21365, %21368
%21370 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %21369, float* %21370
%21371 = load float*, float** %12
%21372 = getelementptr inbounds float, float* %21371, i64 2
%21373 = load float, float* %21372
%21374 = load float*, float** %10
%21375 = getelementptr inbounds float, float* %21374, i64 2
%21376 = load float, float* %21375
%21377 = fsub float %21373, %21376
%21378 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %21377, float* %21378
%21379 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%21380 = load float, float* %21379
%21381 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%21382 = load float, float* %21381
%21383 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%21384 = load float, float* %21383
%21385 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%21386 = load float, float* %21385
%21387 = fmul float %21384, %21386
%21388 = call float @llvm.fmuladd.f32(float %21380, float %21382, float %21387)
%21389 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%21390 = load float, float* %21389
%21391 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%21392 = load float, float* %21391
%21393 = call float @llvm.fmuladd.f32(float %21390, float %21392, float %21388)
%21394 = fcmp ogt float %21393, 0.000000e+00
br i1 %21394, label %21395, label %21396
21395: ; preds = %21270
store i32 0, i32* %7
br label %37477
21396: ; preds = %21270
%21397 = load float*, float** %13
%21398 = getelementptr inbounds float, float* %21397, i64 0
%21399 = load float, float* %21398
%21400 = load float*, float** %9
%21401 = getelementptr inbounds float, float* %21400, i64 0
%21402 = load float, float* %21401
%21403 = fsub float %21399, %21402
%21404 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %21403, float* %21404
%21405 = load float*, float** %13
%21406 = getelementptr inbounds float, float* %21405, i64 1
%21407 = load float, float* %21406
%21408 = load float*, float** %9
%21409 = getelementptr inbounds float, float* %21408, i64 1
%21410 = load float, float* %21409
%21411 = fsub float %21407, %21410
%21412 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %21411, float* %21412
%21413 = load float*, float** %13
%21414 = getelementptr inbounds float, float* %21413, i64 2
%21415 = load float, float* %21414
%21416 = load float*, float** %9
%21417 = getelementptr inbounds float, float* %21416, i64 2
%21418 = load float, float* %21417
%21419 = fsub float %21415, %21418
%21420 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %21419, float* %21420
%21421 = load float*, float** %8
%21422 = getelementptr inbounds float, float* %21421, i64 0
%21423 = load float, float* %21422
%21424 = load float*, float** %9
%21425 = getelementptr inbounds float, float* %21424, i64 0
%21426 = load float, float* %21425
%21427 = fsub float %21423, %21426
%21428 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %21427, float* %21428
%21429 = load float*, float** %8
%21430 = getelementptr inbounds float, float* %21429, i64 1
%21431 = load float, float* %21430
%21432 = load float*, float** %9
%21433 = getelementptr inbounds float, float* %21432, i64 1
%21434 = load float, float* %21433
%21435 = fsub float %21431, %21434
%21436 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %21435, float* %21436
%21437 = load float*, float** %8
%21438 = getelementptr inbounds float, float* %21437, i64 2
%21439 = load float, float* %21438
%21440 = load float*, float** %9
%21441 = getelementptr inbounds float, float* %21440, i64 2
%21442 = load float, float* %21441
%21443 = fsub float %21439, %21442
%21444 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %21443, float* %21444
%21445 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%21446 = load float, float* %21445
%21447 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%21448 = load float, float* %21447
%21449 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%21450 = load float, float* %21449
%21451 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%21452 = load float, float* %21451
%21453 = fmul float %21450, %21452
%21454 = fneg float %21453
%21455 = call float @llvm.fmuladd.f32(float %21446, float %21448, float %21454)
%21456 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %21455, float* %21456
%21457 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%21458 = load float, float* %21457
%21459 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%21460 = load float, float* %21459
%21461 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%21462 = load float, float* %21461
%21463 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%21464 = load float, float* %21463
%21465 = fmul float %21462, %21464
%21466 = fneg float %21465
%21467 = call float @llvm.fmuladd.f32(float %21458, float %21460, float %21466)
%21468 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %21467, float* %21468
%21469 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%21470 = load float, float* %21469
%21471 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%21472 = load float, float* %21471
%21473 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%21474 = load float, float* %21473
%21475 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%21476 = load float, float* %21475
%21477 = fmul float %21474, %21476
%21478 = fneg float %21477
%21479 = call float @llvm.fmuladd.f32(float %21470, float %21472, float %21478)
%21480 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %21479, float* %21480
%21481 = load float*, float** %11
%21482 = getelementptr inbounds float, float* %21481, i64 0
%21483 = load float, float* %21482
%21484 = load float*, float** %9
%21485 = getelementptr inbounds float, float* %21484, i64 0
%21486 = load float, float* %21485
%21487 = fsub float %21483, %21486
%21488 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %21487, float* %21488
%21489 = load float*, float** %11
%21490 = getelementptr inbounds float, float* %21489, i64 1
%21491 = load float, float* %21490
%21492 = load float*, float** %9
%21493 = getelementptr inbounds float, float* %21492, i64 1
%21494 = load float, float* %21493
%21495 = fsub float %21491, %21494
%21496 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %21495, float* %21496
%21497 = load float*, float** %11
%21498 = getelementptr inbounds float, float* %21497, i64 2
%21499 = load float, float* %21498
%21500 = load float*, float** %9
%21501 = getelementptr inbounds float, float* %21500, i64 2
%21502 = load float, float* %21501
%21503 = fsub float %21499, %21502
%21504 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %21503, float* %21504
%21505 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%21506 = load float, float* %21505
%21507 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%21508 = load float, float* %21507
%21509 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%21510 = load float, float* %21509
%21511 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%21512 = load float, float* %21511
%21513 = fmul float %21510, %21512
%21514 = call float @llvm.fmuladd.f32(float %21506, float %21508, float %21513)
%21515 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%21516 = load float, float* %21515
%21517 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%21518 = load float, float* %21517
%21519 = call float @llvm.fmuladd.f32(float %21516, float %21518, float %21514)
%21520 = fcmp ogt float %21519, 0.000000e+00
br i1 %21520, label %21521, label %21522
21521: ; preds = %21396
store i32 0, i32* %7
br label %37477
21522: ; preds = %21396
store i32 1, i32* %7
br label %37477
21523: ; preds = %21011
%21524 = load float, float* %18
%21525 = fcmp ogt float %21524, 0.000000e+00
br i1 %21525, label %21526, label %21779
21526: ; preds = %21523
%21527 = load float*, float** %12
%21528 = getelementptr inbounds float, float* %21527, i64 0
%21529 = load float, float* %21528
%21530 = load float*, float** %10
%21531 = getelementptr inbounds float, float* %21530, i64 0
%21532 = load float, float* %21531
%21533 = fsub float %21529, %21532
%21534 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %21533, float* %21534
%21535 = load float*, float** %12
%21536 = getelementptr inbounds float, float* %21535, i64 1
%21537 = load float, float* %21536
%21538 = load float*, float** %10
%21539 = getelementptr inbounds float, float* %21538, i64 1
%21540 = load float, float* %21539
%21541 = fsub float %21537, %21540
%21542 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %21541, float* %21542
%21543 = load float*, float** %12
%21544 = getelementptr inbounds float, float* %21543, i64 2
%21545 = load float, float* %21544
%21546 = load float*, float** %10
%21547 = getelementptr inbounds float, float* %21546, i64 2
%21548 = load float, float* %21547
%21549 = fsub float %21545, %21548
%21550 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %21549, float* %21550
%21551 = load float*, float** %9
%21552 = getelementptr inbounds float, float* %21551, i64 0
%21553 = load float, float* %21552
%21554 = load float*, float** %10
%21555 = getelementptr inbounds float, float* %21554, i64 0
%21556 = load float, float* %21555
%21557 = fsub float %21553, %21556
%21558 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %21557, float* %21558
%21559 = load float*, float** %9
%21560 = getelementptr inbounds float, float* %21559, i64 1
%21561 = load float, float* %21560
%21562 = load float*, float** %10
%21563 = getelementptr inbounds float, float* %21562, i64 1
%21564 = load float, float* %21563
%21565 = fsub float %21561, %21564
%21566 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %21565, float* %21566
%21567 = load float*, float** %9
%21568 = getelementptr inbounds float, float* %21567, i64 2
%21569 = load float, float* %21568
%21570 = load float*, float** %10
%21571 = getelementptr inbounds float, float* %21570, i64 2
%21572 = load float, float* %21571
%21573 = fsub float %21569, %21572
%21574 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %21573, float* %21574
%21575 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%21576 = load float, float* %21575
%21577 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%21578 = load float, float* %21577
%21579 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%21580 = load float, float* %21579
%21581 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%21582 = load float, float* %21581
%21583 = fmul float %21580, %21582
%21584 = fneg float %21583
%21585 = call float @llvm.fmuladd.f32(float %21576, float %21578, float %21584)
%21586 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %21585, float* %21586
%21587 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%21588 = load float, float* %21587
%21589 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%21590 = load float, float* %21589
%21591 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%21592 = load float, float* %21591
%21593 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%21594 = load float, float* %21593
%21595 = fmul float %21592, %21594
%21596 = fneg float %21595
%21597 = call float @llvm.fmuladd.f32(float %21588, float %21590, float %21596)
%21598 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %21597, float* %21598
%21599 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%21600 = load float, float* %21599
%21601 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%21602 = load float, float* %21601
%21603 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%21604 = load float, float* %21603
%21605 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%21606 = load float, float* %21605
%21607 = fmul float %21604, %21606
%21608 = fneg float %21607
%21609 = call float @llvm.fmuladd.f32(float %21600, float %21602, float %21608)
%21610 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %21609, float* %21610
%21611 = load float*, float** %11
%21612 = getelementptr inbounds float, float* %21611, i64 0
%21613 = load float, float* %21612
%21614 = load float*, float** %10
%21615 = getelementptr inbounds float, float* %21614, i64 0
%21616 = load float, float* %21615
%21617 = fsub float %21613, %21616
%21618 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %21617, float* %21618
%21619 = load float*, float** %11
%21620 = getelementptr inbounds float, float* %21619, i64 1
%21621 = load float, float* %21620
%21622 = load float*, float** %10
%21623 = getelementptr inbounds float, float* %21622, i64 1
%21624 = load float, float* %21623
%21625 = fsub float %21621, %21624
%21626 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %21625, float* %21626
%21627 = load float*, float** %11
%21628 = getelementptr inbounds float, float* %21627, i64 2
%21629 = load float, float* %21628
%21630 = load float*, float** %10
%21631 = getelementptr inbounds float, float* %21630, i64 2
%21632 = load float, float* %21631
%21633 = fsub float %21629, %21632
%21634 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %21633, float* %21634
%21635 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%21636 = load float, float* %21635
%21637 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%21638 = load float, float* %21637
%21639 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%21640 = load float, float* %21639
%21641 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%21642 = load float, float* %21641
%21643 = fmul float %21640, %21642
%21644 = call float @llvm.fmuladd.f32(float %21636, float %21638, float %21643)
%21645 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%21646 = load float, float* %21645
%21647 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%21648 = load float, float* %21647
%21649 = call float @llvm.fmuladd.f32(float %21646, float %21648, float %21644)
%21650 = fcmp ogt float %21649, 0.000000e+00
br i1 %21650, label %21651, label %21652
21651: ; preds = %21526
store i32 0, i32* %7
br label %37477
21652: ; preds = %21526
%21653 = load float*, float** %12
%21654 = getelementptr inbounds float, float* %21653, i64 0
%21655 = load float, float* %21654
%21656 = load float*, float** %9
%21657 = getelementptr inbounds float, float* %21656, i64 0
%21658 = load float, float* %21657
%21659 = fsub float %21655, %21658
%21660 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %21659, float* %21660
%21661 = load float*, float** %12
%21662 = getelementptr inbounds float, float* %21661, i64 1
%21663 = load float, float* %21662
%21664 = load float*, float** %9
%21665 = getelementptr inbounds float, float* %21664, i64 1
%21666 = load float, float* %21665
%21667 = fsub float %21663, %21666
%21668 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %21667, float* %21668
%21669 = load float*, float** %12
%21670 = getelementptr inbounds float, float* %21669, i64 2
%21671 = load float, float* %21670
%21672 = load float*, float** %9
%21673 = getelementptr inbounds float, float* %21672, i64 2
%21674 = load float, float* %21673
%21675 = fsub float %21671, %21674
%21676 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %21675, float* %21676
%21677 = load float*, float** %8
%21678 = getelementptr inbounds float, float* %21677, i64 0
%21679 = load float, float* %21678
%21680 = load float*, float** %9
%21681 = getelementptr inbounds float, float* %21680, i64 0
%21682 = load float, float* %21681
%21683 = fsub float %21679, %21682
%21684 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %21683, float* %21684
%21685 = load float*, float** %8
%21686 = getelementptr inbounds float, float* %21685, i64 1
%21687 = load float, float* %21686
%21688 = load float*, float** %9
%21689 = getelementptr inbounds float, float* %21688, i64 1
%21690 = load float, float* %21689
%21691 = fsub float %21687, %21690
%21692 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %21691, float* %21692
%21693 = load float*, float** %8
%21694 = getelementptr inbounds float, float* %21693, i64 2
%21695 = load float, float* %21694
%21696 = load float*, float** %9
%21697 = getelementptr inbounds float, float* %21696, i64 2
%21698 = load float, float* %21697
%21699 = fsub float %21695, %21698
%21700 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %21699, float* %21700
%21701 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%21702 = load float, float* %21701
%21703 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%21704 = load float, float* %21703
%21705 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%21706 = load float, float* %21705
%21707 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%21708 = load float, float* %21707
%21709 = fmul float %21706, %21708
%21710 = fneg float %21709
%21711 = call float @llvm.fmuladd.f32(float %21702, float %21704, float %21710)
%21712 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %21711, float* %21712
%21713 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%21714 = load float, float* %21713
%21715 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%21716 = load float, float* %21715
%21717 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%21718 = load float, float* %21717
%21719 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%21720 = load float, float* %21719
%21721 = fmul float %21718, %21720
%21722 = fneg float %21721
%21723 = call float @llvm.fmuladd.f32(float %21714, float %21716, float %21722)
%21724 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %21723, float* %21724
%21725 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%21726 = load float, float* %21725
%21727 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%21728 = load float, float* %21727
%21729 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%21730 = load float, float* %21729
%21731 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%21732 = load float, float* %21731
%21733 = fmul float %21730, %21732
%21734 = fneg float %21733
%21735 = call float @llvm.fmuladd.f32(float %21726, float %21728, float %21734)
%21736 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %21735, float* %21736
%21737 = load float*, float** %13
%21738 = getelementptr inbounds float, float* %21737, i64 0
%21739 = load float, float* %21738
%21740 = load float*, float** %9
%21741 = getelementptr inbounds float, float* %21740, i64 0
%21742 = load float, float* %21741
%21743 = fsub float %21739, %21742
%21744 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %21743, float* %21744
%21745 = load float*, float** %13
%21746 = getelementptr inbounds float, float* %21745, i64 1
%21747 = load float, float* %21746
%21748 = load float*, float** %9
%21749 = getelementptr inbounds float, float* %21748, i64 1
%21750 = load float, float* %21749
%21751 = fsub float %21747, %21750
%21752 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %21751, float* %21752
%21753 = load float*, float** %13
%21754 = getelementptr inbounds float, float* %21753, i64 2
%21755 = load float, float* %21754
%21756 = load float*, float** %9
%21757 = getelementptr inbounds float, float* %21756, i64 2
%21758 = load float, float* %21757
%21759 = fsub float %21755, %21758
%21760 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %21759, float* %21760
%21761 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%21762 = load float, float* %21761
%21763 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%21764 = load float, float* %21763
%21765 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%21766 = load float, float* %21765
%21767 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%21768 = load float, float* %21767
%21769 = fmul float %21766, %21768
%21770 = call float @llvm.fmuladd.f32(float %21762, float %21764, float %21769)
%21771 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%21772 = load float, float* %21771
%21773 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%21774 = load float, float* %21773
%21775 = call float @llvm.fmuladd.f32(float %21772, float %21774, float %21770)
%21776 = fcmp ogt float %21775, 0.000000e+00
br i1 %21776, label %21777, label %21778
21777: ; preds = %21652
store i32 0, i32* %7
br label %37477
21778: ; preds = %21652
store i32 1, i32* %7
br label %37477
21779: ; preds = %21523
%21780 = load float, float* %18
%21781 = fcmp olt float %21780, 0.000000e+00
br i1 %21781, label %21782, label %22035
21782: ; preds = %21779
%21783 = load float*, float** %12
%21784 = getelementptr inbounds float, float* %21783, i64 0
%21785 = load float, float* %21784
%21786 = load float*, float** %8
%21787 = getelementptr inbounds float, float* %21786, i64 0
%21788 = load float, float* %21787
%21789 = fsub float %21785, %21788
%21790 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %21789, float* %21790
%21791 = load float*, float** %12
%21792 = getelementptr inbounds float, float* %21791, i64 1
%21793 = load float, float* %21792
%21794 = load float*, float** %8
%21795 = getelementptr inbounds float, float* %21794, i64 1
%21796 = load float, float* %21795
%21797 = fsub float %21793, %21796
%21798 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %21797, float* %21798
%21799 = load float*, float** %12
%21800 = getelementptr inbounds float, float* %21799, i64 2
%21801 = load float, float* %21800
%21802 = load float*, float** %8
%21803 = getelementptr inbounds float, float* %21802, i64 2
%21804 = load float, float* %21803
%21805 = fsub float %21801, %21804
%21806 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %21805, float* %21806
%21807 = load float*, float** %9
%21808 = getelementptr inbounds float, float* %21807, i64 0
%21809 = load float, float* %21808
%21810 = load float*, float** %8
%21811 = getelementptr inbounds float, float* %21810, i64 0
%21812 = load float, float* %21811
%21813 = fsub float %21809, %21812
%21814 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %21813, float* %21814
%21815 = load float*, float** %9
%21816 = getelementptr inbounds float, float* %21815, i64 1
%21817 = load float, float* %21816
%21818 = load float*, float** %8
%21819 = getelementptr inbounds float, float* %21818, i64 1
%21820 = load float, float* %21819
%21821 = fsub float %21817, %21820
%21822 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %21821, float* %21822
%21823 = load float*, float** %9
%21824 = getelementptr inbounds float, float* %21823, i64 2
%21825 = load float, float* %21824
%21826 = load float*, float** %8
%21827 = getelementptr inbounds float, float* %21826, i64 2
%21828 = load float, float* %21827
%21829 = fsub float %21825, %21828
%21830 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %21829, float* %21830
%21831 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%21832 = load float, float* %21831
%21833 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%21834 = load float, float* %21833
%21835 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%21836 = load float, float* %21835
%21837 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%21838 = load float, float* %21837
%21839 = fmul float %21836, %21838
%21840 = fneg float %21839
%21841 = call float @llvm.fmuladd.f32(float %21832, float %21834, float %21840)
%21842 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %21841, float* %21842
%21843 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%21844 = load float, float* %21843
%21845 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%21846 = load float, float* %21845
%21847 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%21848 = load float, float* %21847
%21849 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%21850 = load float, float* %21849
%21851 = fmul float %21848, %21850
%21852 = fneg float %21851
%21853 = call float @llvm.fmuladd.f32(float %21844, float %21846, float %21852)
%21854 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %21853, float* %21854
%21855 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%21856 = load float, float* %21855
%21857 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%21858 = load float, float* %21857
%21859 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%21860 = load float, float* %21859
%21861 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%21862 = load float, float* %21861
%21863 = fmul float %21860, %21862
%21864 = fneg float %21863
%21865 = call float @llvm.fmuladd.f32(float %21856, float %21858, float %21864)
%21866 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %21865, float* %21866
%21867 = load float*, float** %11
%21868 = getelementptr inbounds float, float* %21867, i64 0
%21869 = load float, float* %21868
%21870 = load float*, float** %8
%21871 = getelementptr inbounds float, float* %21870, i64 0
%21872 = load float, float* %21871
%21873 = fsub float %21869, %21872
%21874 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %21873, float* %21874
%21875 = load float*, float** %11
%21876 = getelementptr inbounds float, float* %21875, i64 1
%21877 = load float, float* %21876
%21878 = load float*, float** %8
%21879 = getelementptr inbounds float, float* %21878, i64 1
%21880 = load float, float* %21879
%21881 = fsub float %21877, %21880
%21882 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %21881, float* %21882
%21883 = load float*, float** %11
%21884 = getelementptr inbounds float, float* %21883, i64 2
%21885 = load float, float* %21884
%21886 = load float*, float** %8
%21887 = getelementptr inbounds float, float* %21886, i64 2
%21888 = load float, float* %21887
%21889 = fsub float %21885, %21888
%21890 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %21889, float* %21890
%21891 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%21892 = load float, float* %21891
%21893 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%21894 = load float, float* %21893
%21895 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%21896 = load float, float* %21895
%21897 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%21898 = load float, float* %21897
%21899 = fmul float %21896, %21898
%21900 = call float @llvm.fmuladd.f32(float %21892, float %21894, float %21899)
%21901 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%21902 = load float, float* %21901
%21903 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%21904 = load float, float* %21903
%21905 = call float @llvm.fmuladd.f32(float %21902, float %21904, float %21900)
%21906 = fcmp ogt float %21905, 0.000000e+00
br i1 %21906, label %21907, label %21908
21907: ; preds = %21782
store i32 0, i32* %7
br label %37477
21908: ; preds = %21782
%21909 = load float*, float** %12
%21910 = getelementptr inbounds float, float* %21909, i64 0
%21911 = load float, float* %21910
%21912 = load float*, float** %9
%21913 = getelementptr inbounds float, float* %21912, i64 0
%21914 = load float, float* %21913
%21915 = fsub float %21911, %21914
%21916 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %21915, float* %21916
%21917 = load float*, float** %12
%21918 = getelementptr inbounds float, float* %21917, i64 1
%21919 = load float, float* %21918
%21920 = load float*, float** %9
%21921 = getelementptr inbounds float, float* %21920, i64 1
%21922 = load float, float* %21921
%21923 = fsub float %21919, %21922
%21924 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %21923, float* %21924
%21925 = load float*, float** %12
%21926 = getelementptr inbounds float, float* %21925, i64 2
%21927 = load float, float* %21926
%21928 = load float*, float** %9
%21929 = getelementptr inbounds float, float* %21928, i64 2
%21930 = load float, float* %21929
%21931 = fsub float %21927, %21930
%21932 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %21931, float* %21932
%21933 = load float*, float** %10
%21934 = getelementptr inbounds float, float* %21933, i64 0
%21935 = load float, float* %21934
%21936 = load float*, float** %9
%21937 = getelementptr inbounds float, float* %21936, i64 0
%21938 = load float, float* %21937
%21939 = fsub float %21935, %21938
%21940 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %21939, float* %21940
%21941 = load float*, float** %10
%21942 = getelementptr inbounds float, float* %21941, i64 1
%21943 = load float, float* %21942
%21944 = load float*, float** %9
%21945 = getelementptr inbounds float, float* %21944, i64 1
%21946 = load float, float* %21945
%21947 = fsub float %21943, %21946
%21948 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %21947, float* %21948
%21949 = load float*, float** %10
%21950 = getelementptr inbounds float, float* %21949, i64 2
%21951 = load float, float* %21950
%21952 = load float*, float** %9
%21953 = getelementptr inbounds float, float* %21952, i64 2
%21954 = load float, float* %21953
%21955 = fsub float %21951, %21954
%21956 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %21955, float* %21956
%21957 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%21958 = load float, float* %21957
%21959 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%21960 = load float, float* %21959
%21961 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%21962 = load float, float* %21961
%21963 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%21964 = load float, float* %21963
%21965 = fmul float %21962, %21964
%21966 = fneg float %21965
%21967 = call float @llvm.fmuladd.f32(float %21958, float %21960, float %21966)
%21968 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %21967, float* %21968
%21969 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%21970 = load float, float* %21969
%21971 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%21972 = load float, float* %21971
%21973 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%21974 = load float, float* %21973
%21975 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%21976 = load float, float* %21975
%21977 = fmul float %21974, %21976
%21978 = fneg float %21977
%21979 = call float @llvm.fmuladd.f32(float %21970, float %21972, float %21978)
%21980 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %21979, float* %21980
%21981 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%21982 = load float, float* %21981
%21983 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%21984 = load float, float* %21983
%21985 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%21986 = load float, float* %21985
%21987 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%21988 = load float, float* %21987
%21989 = fmul float %21986, %21988
%21990 = fneg float %21989
%21991 = call float @llvm.fmuladd.f32(float %21982, float %21984, float %21990)
%21992 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %21991, float* %21992
%21993 = load float*, float** %13
%21994 = getelementptr inbounds float, float* %21993, i64 0
%21995 = load float, float* %21994
%21996 = load float*, float** %9
%21997 = getelementptr inbounds float, float* %21996, i64 0
%21998 = load float, float* %21997
%21999 = fsub float %21995, %21998
%22000 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %21999, float* %22000
%22001 = load float*, float** %13
%22002 = getelementptr inbounds float, float* %22001, i64 1
%22003 = load float, float* %22002
%22004 = load float*, float** %9
%22005 = getelementptr inbounds float, float* %22004, i64 1
%22006 = load float, float* %22005
%22007 = fsub float %22003, %22006
%22008 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %22007, float* %22008
%22009 = load float*, float** %13
%22010 = getelementptr inbounds float, float* %22009, i64 2
%22011 = load float, float* %22010
%22012 = load float*, float** %9
%22013 = getelementptr inbounds float, float* %22012, i64 2
%22014 = load float, float* %22013
%22015 = fsub float %22011, %22014
%22016 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %22015, float* %22016
%22017 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%22018 = load float, float* %22017
%22019 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%22020 = load float, float* %22019
%22021 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%22022 = load float, float* %22021
%22023 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%22024 = load float, float* %22023
%22025 = fmul float %22022, %22024
%22026 = call float @llvm.fmuladd.f32(float %22018, float %22020, float %22025)
%22027 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%22028 = load float, float* %22027
%22029 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%22030 = load float, float* %22029
%22031 = call float @llvm.fmuladd.f32(float %22028, float %22030, float %22026)
%22032 = fcmp ogt float %22031, 0.000000e+00
br i1 %22032, label %22033, label %22034
22033: ; preds = %21908
store i32 0, i32* %7
br label %37477
22034: ; preds = %21908
store i32 1, i32* %7
br label %37477
22035: ; preds = %21779
%22036 = load float*, float** %9
%22037 = load float*, float** %10
%22038 = load float*, float** %8
%22039 = load float*, float** %11
%22040 = load float*, float** %13
%22041 = load float*, float** %12
%22042 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%22043 = getelementptr inbounds [3 x float], [3 x float]* %23, i64 0, i64 0
%22044 = call i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...) bitcast (i32 (...)* @coplanar_tri_tri3d to i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...)*)(float* %22036, float* %22037, float* %22038, float* %22039, float* %22040, float* %22041, float* %22042, float* %22043)
store i32 %22044, i32* %7
br label %37477
22045: ; preds = %18960
%22046 = load float, float* %17
%22047 = fcmp ogt float %22046, 0.000000e+00
br i1 %22047, label %22048, label %22813
22048: ; preds = %22045
%22049 = load float, float* %18
%22050 = fcmp ogt float %22049, 0.000000e+00
br i1 %22050, label %22051, label %22304
22051: ; preds = %22048
%22052 = load float*, float** %13
%22053 = getelementptr inbounds float, float* %22052, i64 0
%22054 = load float, float* %22053
%22055 = load float*, float** %10
%22056 = getelementptr inbounds float, float* %22055, i64 0
%22057 = load float, float* %22056
%22058 = fsub float %22054, %22057
%22059 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %22058, float* %22059
%22060 = load float*, float** %13
%22061 = getelementptr inbounds float, float* %22060, i64 1
%22062 = load float, float* %22061
%22063 = load float*, float** %10
%22064 = getelementptr inbounds float, float* %22063, i64 1
%22065 = load float, float* %22064
%22066 = fsub float %22062, %22065
%22067 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %22066, float* %22067
%22068 = load float*, float** %13
%22069 = getelementptr inbounds float, float* %22068, i64 2
%22070 = load float, float* %22069
%22071 = load float*, float** %10
%22072 = getelementptr inbounds float, float* %22071, i64 2
%22073 = load float, float* %22072
%22074 = fsub float %22070, %22073
%22075 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %22074, float* %22075
%22076 = load float*, float** %8
%22077 = getelementptr inbounds float, float* %22076, i64 0
%22078 = load float, float* %22077
%22079 = load float*, float** %10
%22080 = getelementptr inbounds float, float* %22079, i64 0
%22081 = load float, float* %22080
%22082 = fsub float %22078, %22081
%22083 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %22082, float* %22083
%22084 = load float*, float** %8
%22085 = getelementptr inbounds float, float* %22084, i64 1
%22086 = load float, float* %22085
%22087 = load float*, float** %10
%22088 = getelementptr inbounds float, float* %22087, i64 1
%22089 = load float, float* %22088
%22090 = fsub float %22086, %22089
%22091 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %22090, float* %22091
%22092 = load float*, float** %8
%22093 = getelementptr inbounds float, float* %22092, i64 2
%22094 = load float, float* %22093
%22095 = load float*, float** %10
%22096 = getelementptr inbounds float, float* %22095, i64 2
%22097 = load float, float* %22096
%22098 = fsub float %22094, %22097
%22099 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %22098, float* %22099
%22100 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%22101 = load float, float* %22100
%22102 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%22103 = load float, float* %22102
%22104 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%22105 = load float, float* %22104
%22106 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%22107 = load float, float* %22106
%22108 = fmul float %22105, %22107
%22109 = fneg float %22108
%22110 = call float @llvm.fmuladd.f32(float %22101, float %22103, float %22109)
%22111 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %22110, float* %22111
%22112 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%22113 = load float, float* %22112
%22114 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%22115 = load float, float* %22114
%22116 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%22117 = load float, float* %22116
%22118 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%22119 = load float, float* %22118
%22120 = fmul float %22117, %22119
%22121 = fneg float %22120
%22122 = call float @llvm.fmuladd.f32(float %22113, float %22115, float %22121)
%22123 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %22122, float* %22123
%22124 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%22125 = load float, float* %22124
%22126 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%22127 = load float, float* %22126
%22128 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%22129 = load float, float* %22128
%22130 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%22131 = load float, float* %22130
%22132 = fmul float %22129, %22131
%22133 = fneg float %22132
%22134 = call float @llvm.fmuladd.f32(float %22125, float %22127, float %22133)
%22135 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %22134, float* %22135
%22136 = load float*, float** %11
%22137 = getelementptr inbounds float, float* %22136, i64 0
%22138 = load float, float* %22137
%22139 = load float*, float** %10
%22140 = getelementptr inbounds float, float* %22139, i64 0
%22141 = load float, float* %22140
%22142 = fsub float %22138, %22141
%22143 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %22142, float* %22143
%22144 = load float*, float** %11
%22145 = getelementptr inbounds float, float* %22144, i64 1
%22146 = load float, float* %22145
%22147 = load float*, float** %10
%22148 = getelementptr inbounds float, float* %22147, i64 1
%22149 = load float, float* %22148
%22150 = fsub float %22146, %22149
%22151 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %22150, float* %22151
%22152 = load float*, float** %11
%22153 = getelementptr inbounds float, float* %22152, i64 2
%22154 = load float, float* %22153
%22155 = load float*, float** %10
%22156 = getelementptr inbounds float, float* %22155, i64 2
%22157 = load float, float* %22156
%22158 = fsub float %22154, %22157
%22159 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %22158, float* %22159
%22160 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%22161 = load float, float* %22160
%22162 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%22163 = load float, float* %22162
%22164 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%22165 = load float, float* %22164
%22166 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%22167 = load float, float* %22166
%22168 = fmul float %22165, %22167
%22169 = call float @llvm.fmuladd.f32(float %22161, float %22163, float %22168)
%22170 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%22171 = load float, float* %22170
%22172 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%22173 = load float, float* %22172
%22174 = call float @llvm.fmuladd.f32(float %22171, float %22173, float %22169)
%22175 = fcmp ogt float %22174, 0.000000e+00
br i1 %22175, label %22176, label %22177
22176: ; preds = %22051
store i32 0, i32* %7
br label %37477
22177: ; preds = %22051
%22178 = load float*, float** %13
%22179 = getelementptr inbounds float, float* %22178, i64 0
%22180 = load float, float* %22179
%22181 = load float*, float** %8
%22182 = getelementptr inbounds float, float* %22181, i64 0
%22183 = load float, float* %22182
%22184 = fsub float %22180, %22183
%22185 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %22184, float* %22185
%22186 = load float*, float** %13
%22187 = getelementptr inbounds float, float* %22186, i64 1
%22188 = load float, float* %22187
%22189 = load float*, float** %8
%22190 = getelementptr inbounds float, float* %22189, i64 1
%22191 = load float, float* %22190
%22192 = fsub float %22188, %22191
%22193 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %22192, float* %22193
%22194 = load float*, float** %13
%22195 = getelementptr inbounds float, float* %22194, i64 2
%22196 = load float, float* %22195
%22197 = load float*, float** %8
%22198 = getelementptr inbounds float, float* %22197, i64 2
%22199 = load float, float* %22198
%22200 = fsub float %22196, %22199
%22201 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %22200, float* %22201
%22202 = load float*, float** %9
%22203 = getelementptr inbounds float, float* %22202, i64 0
%22204 = load float, float* %22203
%22205 = load float*, float** %8
%22206 = getelementptr inbounds float, float* %22205, i64 0
%22207 = load float, float* %22206
%22208 = fsub float %22204, %22207
%22209 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %22208, float* %22209
%22210 = load float*, float** %9
%22211 = getelementptr inbounds float, float* %22210, i64 1
%22212 = load float, float* %22211
%22213 = load float*, float** %8
%22214 = getelementptr inbounds float, float* %22213, i64 1
%22215 = load float, float* %22214
%22216 = fsub float %22212, %22215
%22217 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %22216, float* %22217
%22218 = load float*, float** %9
%22219 = getelementptr inbounds float, float* %22218, i64 2
%22220 = load float, float* %22219
%22221 = load float*, float** %8
%22222 = getelementptr inbounds float, float* %22221, i64 2
%22223 = load float, float* %22222
%22224 = fsub float %22220, %22223
%22225 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %22224, float* %22225
%22226 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%22227 = load float, float* %22226
%22228 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%22229 = load float, float* %22228
%22230 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%22231 = load float, float* %22230
%22232 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%22233 = load float, float* %22232
%22234 = fmul float %22231, %22233
%22235 = fneg float %22234
%22236 = call float @llvm.fmuladd.f32(float %22227, float %22229, float %22235)
%22237 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %22236, float* %22237
%22238 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%22239 = load float, float* %22238
%22240 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%22241 = load float, float* %22240
%22242 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%22243 = load float, float* %22242
%22244 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%22245 = load float, float* %22244
%22246 = fmul float %22243, %22245
%22247 = fneg float %22246
%22248 = call float @llvm.fmuladd.f32(float %22239, float %22241, float %22247)
%22249 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %22248, float* %22249
%22250 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%22251 = load float, float* %22250
%22252 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%22253 = load float, float* %22252
%22254 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%22255 = load float, float* %22254
%22256 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%22257 = load float, float* %22256
%22258 = fmul float %22255, %22257
%22259 = fneg float %22258
%22260 = call float @llvm.fmuladd.f32(float %22251, float %22253, float %22259)
%22261 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %22260, float* %22261
%22262 = load float*, float** %12
%22263 = getelementptr inbounds float, float* %22262, i64 0
%22264 = load float, float* %22263
%22265 = load float*, float** %8
%22266 = getelementptr inbounds float, float* %22265, i64 0
%22267 = load float, float* %22266
%22268 = fsub float %22264, %22267
%22269 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %22268, float* %22269
%22270 = load float*, float** %12
%22271 = getelementptr inbounds float, float* %22270, i64 1
%22272 = load float, float* %22271
%22273 = load float*, float** %8
%22274 = getelementptr inbounds float, float* %22273, i64 1
%22275 = load float, float* %22274
%22276 = fsub float %22272, %22275
%22277 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %22276, float* %22277
%22278 = load float*, float** %12
%22279 = getelementptr inbounds float, float* %22278, i64 2
%22280 = load float, float* %22279
%22281 = load float*, float** %8
%22282 = getelementptr inbounds float, float* %22281, i64 2
%22283 = load float, float* %22282
%22284 = fsub float %22280, %22283
%22285 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %22284, float* %22285
%22286 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%22287 = load float, float* %22286
%22288 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%22289 = load float, float* %22288
%22290 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%22291 = load float, float* %22290
%22292 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%22293 = load float, float* %22292
%22294 = fmul float %22291, %22293
%22295 = call float @llvm.fmuladd.f32(float %22287, float %22289, float %22294)
%22296 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%22297 = load float, float* %22296
%22298 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%22299 = load float, float* %22298
%22300 = call float @llvm.fmuladd.f32(float %22297, float %22299, float %22295)
%22301 = fcmp ogt float %22300, 0.000000e+00
br i1 %22301, label %22302, label %22303
22302: ; preds = %22177
store i32 0, i32* %7
br label %37477
22303: ; preds = %22177
store i32 1, i32* %7
br label %37477
22304: ; preds = %22048
%22305 = load float, float* %19
%22306 = fcmp ogt float %22305, 0.000000e+00
br i1 %22306, label %22307, label %22560
22307: ; preds = %22304
%22308 = load float*, float** %12
%22309 = getelementptr inbounds float, float* %22308, i64 0
%22310 = load float, float* %22309
%22311 = load float*, float** %10
%22312 = getelementptr inbounds float, float* %22311, i64 0
%22313 = load float, float* %22312
%22314 = fsub float %22310, %22313
%22315 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %22314, float* %22315
%22316 = load float*, float** %12
%22317 = getelementptr inbounds float, float* %22316, i64 1
%22318 = load float, float* %22317
%22319 = load float*, float** %10
%22320 = getelementptr inbounds float, float* %22319, i64 1
%22321 = load float, float* %22320
%22322 = fsub float %22318, %22321
%22323 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %22322, float* %22323
%22324 = load float*, float** %12
%22325 = getelementptr inbounds float, float* %22324, i64 2
%22326 = load float, float* %22325
%22327 = load float*, float** %10
%22328 = getelementptr inbounds float, float* %22327, i64 2
%22329 = load float, float* %22328
%22330 = fsub float %22326, %22329
%22331 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %22330, float* %22331
%22332 = load float*, float** %8
%22333 = getelementptr inbounds float, float* %22332, i64 0
%22334 = load float, float* %22333
%22335 = load float*, float** %10
%22336 = getelementptr inbounds float, float* %22335, i64 0
%22337 = load float, float* %22336
%22338 = fsub float %22334, %22337
%22339 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %22338, float* %22339
%22340 = load float*, float** %8
%22341 = getelementptr inbounds float, float* %22340, i64 1
%22342 = load float, float* %22341
%22343 = load float*, float** %10
%22344 = getelementptr inbounds float, float* %22343, i64 1
%22345 = load float, float* %22344
%22346 = fsub float %22342, %22345
%22347 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %22346, float* %22347
%22348 = load float*, float** %8
%22349 = getelementptr inbounds float, float* %22348, i64 2
%22350 = load float, float* %22349
%22351 = load float*, float** %10
%22352 = getelementptr inbounds float, float* %22351, i64 2
%22353 = load float, float* %22352
%22354 = fsub float %22350, %22353
%22355 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %22354, float* %22355
%22356 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%22357 = load float, float* %22356
%22358 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%22359 = load float, float* %22358
%22360 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%22361 = load float, float* %22360
%22362 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%22363 = load float, float* %22362
%22364 = fmul float %22361, %22363
%22365 = fneg float %22364
%22366 = call float @llvm.fmuladd.f32(float %22357, float %22359, float %22365)
%22367 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %22366, float* %22367
%22368 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%22369 = load float, float* %22368
%22370 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%22371 = load float, float* %22370
%22372 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%22373 = load float, float* %22372
%22374 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%22375 = load float, float* %22374
%22376 = fmul float %22373, %22375
%22377 = fneg float %22376
%22378 = call float @llvm.fmuladd.f32(float %22369, float %22371, float %22377)
%22379 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %22378, float* %22379
%22380 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%22381 = load float, float* %22380
%22382 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%22383 = load float, float* %22382
%22384 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%22385 = load float, float* %22384
%22386 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%22387 = load float, float* %22386
%22388 = fmul float %22385, %22387
%22389 = fneg float %22388
%22390 = call float @llvm.fmuladd.f32(float %22381, float %22383, float %22389)
%22391 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %22390, float* %22391
%22392 = load float*, float** %13
%22393 = getelementptr inbounds float, float* %22392, i64 0
%22394 = load float, float* %22393
%22395 = load float*, float** %10
%22396 = getelementptr inbounds float, float* %22395, i64 0
%22397 = load float, float* %22396
%22398 = fsub float %22394, %22397
%22399 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %22398, float* %22399
%22400 = load float*, float** %13
%22401 = getelementptr inbounds float, float* %22400, i64 1
%22402 = load float, float* %22401
%22403 = load float*, float** %10
%22404 = getelementptr inbounds float, float* %22403, i64 1
%22405 = load float, float* %22404
%22406 = fsub float %22402, %22405
%22407 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %22406, float* %22407
%22408 = load float*, float** %13
%22409 = getelementptr inbounds float, float* %22408, i64 2
%22410 = load float, float* %22409
%22411 = load float*, float** %10
%22412 = getelementptr inbounds float, float* %22411, i64 2
%22413 = load float, float* %22412
%22414 = fsub float %22410, %22413
%22415 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %22414, float* %22415
%22416 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%22417 = load float, float* %22416
%22418 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%22419 = load float, float* %22418
%22420 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%22421 = load float, float* %22420
%22422 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%22423 = load float, float* %22422
%22424 = fmul float %22421, %22423
%22425 = call float @llvm.fmuladd.f32(float %22417, float %22419, float %22424)
%22426 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%22427 = load float, float* %22426
%22428 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%22429 = load float, float* %22428
%22430 = call float @llvm.fmuladd.f32(float %22427, float %22429, float %22425)
%22431 = fcmp ogt float %22430, 0.000000e+00
br i1 %22431, label %22432, label %22433
22432: ; preds = %22307
store i32 0, i32* %7
br label %37477
22433: ; preds = %22307
%22434 = load float*, float** %12
%22435 = getelementptr inbounds float, float* %22434, i64 0
%22436 = load float, float* %22435
%22437 = load float*, float** %8
%22438 = getelementptr inbounds float, float* %22437, i64 0
%22439 = load float, float* %22438
%22440 = fsub float %22436, %22439
%22441 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %22440, float* %22441
%22442 = load float*, float** %12
%22443 = getelementptr inbounds float, float* %22442, i64 1
%22444 = load float, float* %22443
%22445 = load float*, float** %8
%22446 = getelementptr inbounds float, float* %22445, i64 1
%22447 = load float, float* %22446
%22448 = fsub float %22444, %22447
%22449 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %22448, float* %22449
%22450 = load float*, float** %12
%22451 = getelementptr inbounds float, float* %22450, i64 2
%22452 = load float, float* %22451
%22453 = load float*, float** %8
%22454 = getelementptr inbounds float, float* %22453, i64 2
%22455 = load float, float* %22454
%22456 = fsub float %22452, %22455
%22457 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %22456, float* %22457
%22458 = load float*, float** %9
%22459 = getelementptr inbounds float, float* %22458, i64 0
%22460 = load float, float* %22459
%22461 = load float*, float** %8
%22462 = getelementptr inbounds float, float* %22461, i64 0
%22463 = load float, float* %22462
%22464 = fsub float %22460, %22463
%22465 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %22464, float* %22465
%22466 = load float*, float** %9
%22467 = getelementptr inbounds float, float* %22466, i64 1
%22468 = load float, float* %22467
%22469 = load float*, float** %8
%22470 = getelementptr inbounds float, float* %22469, i64 1
%22471 = load float, float* %22470
%22472 = fsub float %22468, %22471
%22473 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %22472, float* %22473
%22474 = load float*, float** %9
%22475 = getelementptr inbounds float, float* %22474, i64 2
%22476 = load float, float* %22475
%22477 = load float*, float** %8
%22478 = getelementptr inbounds float, float* %22477, i64 2
%22479 = load float, float* %22478
%22480 = fsub float %22476, %22479
%22481 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %22480, float* %22481
%22482 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%22483 = load float, float* %22482
%22484 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%22485 = load float, float* %22484
%22486 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%22487 = load float, float* %22486
%22488 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%22489 = load float, float* %22488
%22490 = fmul float %22487, %22489
%22491 = fneg float %22490
%22492 = call float @llvm.fmuladd.f32(float %22483, float %22485, float %22491)
%22493 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %22492, float* %22493
%22494 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%22495 = load float, float* %22494
%22496 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%22497 = load float, float* %22496
%22498 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%22499 = load float, float* %22498
%22500 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%22501 = load float, float* %22500
%22502 = fmul float %22499, %22501
%22503 = fneg float %22502
%22504 = call float @llvm.fmuladd.f32(float %22495, float %22497, float %22503)
%22505 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %22504, float* %22505
%22506 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%22507 = load float, float* %22506
%22508 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%22509 = load float, float* %22508
%22510 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%22511 = load float, float* %22510
%22512 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%22513 = load float, float* %22512
%22514 = fmul float %22511, %22513
%22515 = fneg float %22514
%22516 = call float @llvm.fmuladd.f32(float %22507, float %22509, float %22515)
%22517 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %22516, float* %22517
%22518 = load float*, float** %11
%22519 = getelementptr inbounds float, float* %22518, i64 0
%22520 = load float, float* %22519
%22521 = load float*, float** %8
%22522 = getelementptr inbounds float, float* %22521, i64 0
%22523 = load float, float* %22522
%22524 = fsub float %22520, %22523
%22525 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %22524, float* %22525
%22526 = load float*, float** %11
%22527 = getelementptr inbounds float, float* %22526, i64 1
%22528 = load float, float* %22527
%22529 = load float*, float** %8
%22530 = getelementptr inbounds float, float* %22529, i64 1
%22531 = load float, float* %22530
%22532 = fsub float %22528, %22531
%22533 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %22532, float* %22533
%22534 = load float*, float** %11
%22535 = getelementptr inbounds float, float* %22534, i64 2
%22536 = load float, float* %22535
%22537 = load float*, float** %8
%22538 = getelementptr inbounds float, float* %22537, i64 2
%22539 = load float, float* %22538
%22540 = fsub float %22536, %22539
%22541 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %22540, float* %22541
%22542 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%22543 = load float, float* %22542
%22544 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%22545 = load float, float* %22544
%22546 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%22547 = load float, float* %22546
%22548 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%22549 = load float, float* %22548
%22550 = fmul float %22547, %22549
%22551 = call float @llvm.fmuladd.f32(float %22543, float %22545, float %22550)
%22552 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%22553 = load float, float* %22552
%22554 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%22555 = load float, float* %22554
%22556 = call float @llvm.fmuladd.f32(float %22553, float %22555, float %22551)
%22557 = fcmp ogt float %22556, 0.000000e+00
br i1 %22557, label %22558, label %22559
22558: ; preds = %22433
store i32 0, i32* %7
br label %37477
22559: ; preds = %22433
store i32 1, i32* %7
br label %37477
22560: ; preds = %22304
%22561 = load float*, float** %11
%22562 = getelementptr inbounds float, float* %22561, i64 0
%22563 = load float, float* %22562
%22564 = load float*, float** %9
%22565 = getelementptr inbounds float, float* %22564, i64 0
%22566 = load float, float* %22565
%22567 = fsub float %22563, %22566
%22568 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %22567, float* %22568
%22569 = load float*, float** %11
%22570 = getelementptr inbounds float, float* %22569, i64 1
%22571 = load float, float* %22570
%22572 = load float*, float** %9
%22573 = getelementptr inbounds float, float* %22572, i64 1
%22574 = load float, float* %22573
%22575 = fsub float %22571, %22574
%22576 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %22575, float* %22576
%22577 = load float*, float** %11
%22578 = getelementptr inbounds float, float* %22577, i64 2
%22579 = load float, float* %22578
%22580 = load float*, float** %9
%22581 = getelementptr inbounds float, float* %22580, i64 2
%22582 = load float, float* %22581
%22583 = fsub float %22579, %22582
%22584 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %22583, float* %22584
%22585 = load float*, float** %8
%22586 = getelementptr inbounds float, float* %22585, i64 0
%22587 = load float, float* %22586
%22588 = load float*, float** %9
%22589 = getelementptr inbounds float, float* %22588, i64 0
%22590 = load float, float* %22589
%22591 = fsub float %22587, %22590
%22592 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %22591, float* %22592
%22593 = load float*, float** %8
%22594 = getelementptr inbounds float, float* %22593, i64 1
%22595 = load float, float* %22594
%22596 = load float*, float** %9
%22597 = getelementptr inbounds float, float* %22596, i64 1
%22598 = load float, float* %22597
%22599 = fsub float %22595, %22598
%22600 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %22599, float* %22600
%22601 = load float*, float** %8
%22602 = getelementptr inbounds float, float* %22601, i64 2
%22603 = load float, float* %22602
%22604 = load float*, float** %9
%22605 = getelementptr inbounds float, float* %22604, i64 2
%22606 = load float, float* %22605
%22607 = fsub float %22603, %22606
%22608 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %22607, float* %22608
%22609 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%22610 = load float, float* %22609
%22611 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%22612 = load float, float* %22611
%22613 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%22614 = load float, float* %22613
%22615 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%22616 = load float, float* %22615
%22617 = fmul float %22614, %22616
%22618 = fneg float %22617
%22619 = call float @llvm.fmuladd.f32(float %22610, float %22612, float %22618)
%22620 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %22619, float* %22620
%22621 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%22622 = load float, float* %22621
%22623 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%22624 = load float, float* %22623
%22625 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%22626 = load float, float* %22625
%22627 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%22628 = load float, float* %22627
%22629 = fmul float %22626, %22628
%22630 = fneg float %22629
%22631 = call float @llvm.fmuladd.f32(float %22622, float %22624, float %22630)
%22632 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %22631, float* %22632
%22633 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%22634 = load float, float* %22633
%22635 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%22636 = load float, float* %22635
%22637 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%22638 = load float, float* %22637
%22639 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%22640 = load float, float* %22639
%22641 = fmul float %22638, %22640
%22642 = fneg float %22641
%22643 = call float @llvm.fmuladd.f32(float %22634, float %22636, float %22642)
%22644 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %22643, float* %22644
%22645 = load float*, float** %12
%22646 = getelementptr inbounds float, float* %22645, i64 0
%22647 = load float, float* %22646
%22648 = load float*, float** %9
%22649 = getelementptr inbounds float, float* %22648, i64 0
%22650 = load float, float* %22649
%22651 = fsub float %22647, %22650
%22652 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %22651, float* %22652
%22653 = load float*, float** %12
%22654 = getelementptr inbounds float, float* %22653, i64 1
%22655 = load float, float* %22654
%22656 = load float*, float** %9
%22657 = getelementptr inbounds float, float* %22656, i64 1
%22658 = load float, float* %22657
%22659 = fsub float %22655, %22658
%22660 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %22659, float* %22660
%22661 = load float*, float** %12
%22662 = getelementptr inbounds float, float* %22661, i64 2
%22663 = load float, float* %22662
%22664 = load float*, float** %9
%22665 = getelementptr inbounds float, float* %22664, i64 2
%22666 = load float, float* %22665
%22667 = fsub float %22663, %22666
%22668 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %22667, float* %22668
%22669 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%22670 = load float, float* %22669
%22671 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%22672 = load float, float* %22671
%22673 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%22674 = load float, float* %22673
%22675 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%22676 = load float, float* %22675
%22677 = fmul float %22674, %22676
%22678 = call float @llvm.fmuladd.f32(float %22670, float %22672, float %22677)
%22679 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%22680 = load float, float* %22679
%22681 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%22682 = load float, float* %22681
%22683 = call float @llvm.fmuladd.f32(float %22680, float %22682, float %22678)
%22684 = fcmp ogt float %22683, 0.000000e+00
br i1 %22684, label %22685, label %22686
22685: ; preds = %22560
store i32 0, i32* %7
br label %37477
22686: ; preds = %22560
%22687 = load float*, float** %11
%22688 = getelementptr inbounds float, float* %22687, i64 0
%22689 = load float, float* %22688
%22690 = load float*, float** %8
%22691 = getelementptr inbounds float, float* %22690, i64 0
%22692 = load float, float* %22691
%22693 = fsub float %22689, %22692
%22694 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %22693, float* %22694
%22695 = load float*, float** %11
%22696 = getelementptr inbounds float, float* %22695, i64 1
%22697 = load float, float* %22696
%22698 = load float*, float** %8
%22699 = getelementptr inbounds float, float* %22698, i64 1
%22700 = load float, float* %22699
%22701 = fsub float %22697, %22700
%22702 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %22701, float* %22702
%22703 = load float*, float** %11
%22704 = getelementptr inbounds float, float* %22703, i64 2
%22705 = load float, float* %22704
%22706 = load float*, float** %8
%22707 = getelementptr inbounds float, float* %22706, i64 2
%22708 = load float, float* %22707
%22709 = fsub float %22705, %22708
%22710 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %22709, float* %22710
%22711 = load float*, float** %10
%22712 = getelementptr inbounds float, float* %22711, i64 0
%22713 = load float, float* %22712
%22714 = load float*, float** %8
%22715 = getelementptr inbounds float, float* %22714, i64 0
%22716 = load float, float* %22715
%22717 = fsub float %22713, %22716
%22718 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %22717, float* %22718
%22719 = load float*, float** %10
%22720 = getelementptr inbounds float, float* %22719, i64 1
%22721 = load float, float* %22720
%22722 = load float*, float** %8
%22723 = getelementptr inbounds float, float* %22722, i64 1
%22724 = load float, float* %22723
%22725 = fsub float %22721, %22724
%22726 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %22725, float* %22726
%22727 = load float*, float** %10
%22728 = getelementptr inbounds float, float* %22727, i64 2
%22729 = load float, float* %22728
%22730 = load float*, float** %8
%22731 = getelementptr inbounds float, float* %22730, i64 2
%22732 = load float, float* %22731
%22733 = fsub float %22729, %22732
%22734 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %22733, float* %22734
%22735 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%22736 = load float, float* %22735
%22737 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%22738 = load float, float* %22737
%22739 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%22740 = load float, float* %22739
%22741 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%22742 = load float, float* %22741
%22743 = fmul float %22740, %22742
%22744 = fneg float %22743
%22745 = call float @llvm.fmuladd.f32(float %22736, float %22738, float %22744)
%22746 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %22745, float* %22746
%22747 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%22748 = load float, float* %22747
%22749 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%22750 = load float, float* %22749
%22751 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%22752 = load float, float* %22751
%22753 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%22754 = load float, float* %22753
%22755 = fmul float %22752, %22754
%22756 = fneg float %22755
%22757 = call float @llvm.fmuladd.f32(float %22748, float %22750, float %22756)
%22758 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %22757, float* %22758
%22759 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%22760 = load float, float* %22759
%22761 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%22762 = load float, float* %22761
%22763 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%22764 = load float, float* %22763
%22765 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%22766 = load float, float* %22765
%22767 = fmul float %22764, %22766
%22768 = fneg float %22767
%22769 = call float @llvm.fmuladd.f32(float %22760, float %22762, float %22768)
%22770 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %22769, float* %22770
%22771 = load float*, float** %13
%22772 = getelementptr inbounds float, float* %22771, i64 0
%22773 = load float, float* %22772
%22774 = load float*, float** %8
%22775 = getelementptr inbounds float, float* %22774, i64 0
%22776 = load float, float* %22775
%22777 = fsub float %22773, %22776
%22778 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %22777, float* %22778
%22779 = load float*, float** %13
%22780 = getelementptr inbounds float, float* %22779, i64 1
%22781 = load float, float* %22780
%22782 = load float*, float** %8
%22783 = getelementptr inbounds float, float* %22782, i64 1
%22784 = load float, float* %22783
%22785 = fsub float %22781, %22784
%22786 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %22785, float* %22786
%22787 = load float*, float** %13
%22788 = getelementptr inbounds float, float* %22787, i64 2
%22789 = load float, float* %22788
%22790 = load float*, float** %8
%22791 = getelementptr inbounds float, float* %22790, i64 2
%22792 = load float, float* %22791
%22793 = fsub float %22789, %22792
%22794 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %22793, float* %22794
%22795 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%22796 = load float, float* %22795
%22797 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%22798 = load float, float* %22797
%22799 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%22800 = load float, float* %22799
%22801 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%22802 = load float, float* %22801
%22803 = fmul float %22800, %22802
%22804 = call float @llvm.fmuladd.f32(float %22796, float %22798, float %22803)
%22805 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%22806 = load float, float* %22805
%22807 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%22808 = load float, float* %22807
%22809 = call float @llvm.fmuladd.f32(float %22806, float %22808, float %22804)
%22810 = fcmp ogt float %22809, 0.000000e+00
br i1 %22810, label %22811, label %22812
22811: ; preds = %22686
store i32 0, i32* %7
br label %37477
22812: ; preds = %22686
store i32 1, i32* %7
br label %37477
22813: ; preds = %22045
%22814 = load float, float* %17
%22815 = fcmp olt float %22814, 0.000000e+00
br i1 %22815, label %22816, label %23581
22816: ; preds = %22813
%22817 = load float, float* %18
%22818 = fcmp olt float %22817, 0.000000e+00
br i1 %22818, label %22819, label %23072
22819: ; preds = %22816
%22820 = load float*, float** %13
%22821 = getelementptr inbounds float, float* %22820, i64 0
%22822 = load float, float* %22821
%22823 = load float*, float** %9
%22824 = getelementptr inbounds float, float* %22823, i64 0
%22825 = load float, float* %22824
%22826 = fsub float %22822, %22825
%22827 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %22826, float* %22827
%22828 = load float*, float** %13
%22829 = getelementptr inbounds float, float* %22828, i64 1
%22830 = load float, float* %22829
%22831 = load float*, float** %9
%22832 = getelementptr inbounds float, float* %22831, i64 1
%22833 = load float, float* %22832
%22834 = fsub float %22830, %22833
%22835 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %22834, float* %22835
%22836 = load float*, float** %13
%22837 = getelementptr inbounds float, float* %22836, i64 2
%22838 = load float, float* %22837
%22839 = load float*, float** %9
%22840 = getelementptr inbounds float, float* %22839, i64 2
%22841 = load float, float* %22840
%22842 = fsub float %22838, %22841
%22843 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %22842, float* %22843
%22844 = load float*, float** %8
%22845 = getelementptr inbounds float, float* %22844, i64 0
%22846 = load float, float* %22845
%22847 = load float*, float** %9
%22848 = getelementptr inbounds float, float* %22847, i64 0
%22849 = load float, float* %22848
%22850 = fsub float %22846, %22849
%22851 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %22850, float* %22851
%22852 = load float*, float** %8
%22853 = getelementptr inbounds float, float* %22852, i64 1
%22854 = load float, float* %22853
%22855 = load float*, float** %9
%22856 = getelementptr inbounds float, float* %22855, i64 1
%22857 = load float, float* %22856
%22858 = fsub float %22854, %22857
%22859 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %22858, float* %22859
%22860 = load float*, float** %8
%22861 = getelementptr inbounds float, float* %22860, i64 2
%22862 = load float, float* %22861
%22863 = load float*, float** %9
%22864 = getelementptr inbounds float, float* %22863, i64 2
%22865 = load float, float* %22864
%22866 = fsub float %22862, %22865
%22867 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %22866, float* %22867
%22868 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%22869 = load float, float* %22868
%22870 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%22871 = load float, float* %22870
%22872 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%22873 = load float, float* %22872
%22874 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%22875 = load float, float* %22874
%22876 = fmul float %22873, %22875
%22877 = fneg float %22876
%22878 = call float @llvm.fmuladd.f32(float %22869, float %22871, float %22877)
%22879 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %22878, float* %22879
%22880 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%22881 = load float, float* %22880
%22882 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%22883 = load float, float* %22882
%22884 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%22885 = load float, float* %22884
%22886 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%22887 = load float, float* %22886
%22888 = fmul float %22885, %22887
%22889 = fneg float %22888
%22890 = call float @llvm.fmuladd.f32(float %22881, float %22883, float %22889)
%22891 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %22890, float* %22891
%22892 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%22893 = load float, float* %22892
%22894 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%22895 = load float, float* %22894
%22896 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%22897 = load float, float* %22896
%22898 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%22899 = load float, float* %22898
%22900 = fmul float %22897, %22899
%22901 = fneg float %22900
%22902 = call float @llvm.fmuladd.f32(float %22893, float %22895, float %22901)
%22903 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %22902, float* %22903
%22904 = load float*, float** %11
%22905 = getelementptr inbounds float, float* %22904, i64 0
%22906 = load float, float* %22905
%22907 = load float*, float** %9
%22908 = getelementptr inbounds float, float* %22907, i64 0
%22909 = load float, float* %22908
%22910 = fsub float %22906, %22909
%22911 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %22910, float* %22911
%22912 = load float*, float** %11
%22913 = getelementptr inbounds float, float* %22912, i64 1
%22914 = load float, float* %22913
%22915 = load float*, float** %9
%22916 = getelementptr inbounds float, float* %22915, i64 1
%22917 = load float, float* %22916
%22918 = fsub float %22914, %22917
%22919 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %22918, float* %22919
%22920 = load float*, float** %11
%22921 = getelementptr inbounds float, float* %22920, i64 2
%22922 = load float, float* %22921
%22923 = load float*, float** %9
%22924 = getelementptr inbounds float, float* %22923, i64 2
%22925 = load float, float* %22924
%22926 = fsub float %22922, %22925
%22927 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %22926, float* %22927
%22928 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%22929 = load float, float* %22928
%22930 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%22931 = load float, float* %22930
%22932 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%22933 = load float, float* %22932
%22934 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%22935 = load float, float* %22934
%22936 = fmul float %22933, %22935
%22937 = call float @llvm.fmuladd.f32(float %22929, float %22931, float %22936)
%22938 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%22939 = load float, float* %22938
%22940 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%22941 = load float, float* %22940
%22942 = call float @llvm.fmuladd.f32(float %22939, float %22941, float %22937)
%22943 = fcmp ogt float %22942, 0.000000e+00
br i1 %22943, label %22944, label %22945
22944: ; preds = %22819
store i32 0, i32* %7
br label %37477
22945: ; preds = %22819
%22946 = load float*, float** %13
%22947 = getelementptr inbounds float, float* %22946, i64 0
%22948 = load float, float* %22947
%22949 = load float*, float** %8
%22950 = getelementptr inbounds float, float* %22949, i64 0
%22951 = load float, float* %22950
%22952 = fsub float %22948, %22951
%22953 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %22952, float* %22953
%22954 = load float*, float** %13
%22955 = getelementptr inbounds float, float* %22954, i64 1
%22956 = load float, float* %22955
%22957 = load float*, float** %8
%22958 = getelementptr inbounds float, float* %22957, i64 1
%22959 = load float, float* %22958
%22960 = fsub float %22956, %22959
%22961 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %22960, float* %22961
%22962 = load float*, float** %13
%22963 = getelementptr inbounds float, float* %22962, i64 2
%22964 = load float, float* %22963
%22965 = load float*, float** %8
%22966 = getelementptr inbounds float, float* %22965, i64 2
%22967 = load float, float* %22966
%22968 = fsub float %22964, %22967
%22969 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %22968, float* %22969
%22970 = load float*, float** %10
%22971 = getelementptr inbounds float, float* %22970, i64 0
%22972 = load float, float* %22971
%22973 = load float*, float** %8
%22974 = getelementptr inbounds float, float* %22973, i64 0
%22975 = load float, float* %22974
%22976 = fsub float %22972, %22975
%22977 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %22976, float* %22977
%22978 = load float*, float** %10
%22979 = getelementptr inbounds float, float* %22978, i64 1
%22980 = load float, float* %22979
%22981 = load float*, float** %8
%22982 = getelementptr inbounds float, float* %22981, i64 1
%22983 = load float, float* %22982
%22984 = fsub float %22980, %22983
%22985 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %22984, float* %22985
%22986 = load float*, float** %10
%22987 = getelementptr inbounds float, float* %22986, i64 2
%22988 = load float, float* %22987
%22989 = load float*, float** %8
%22990 = getelementptr inbounds float, float* %22989, i64 2
%22991 = load float, float* %22990
%22992 = fsub float %22988, %22991
%22993 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %22992, float* %22993
%22994 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%22995 = load float, float* %22994
%22996 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%22997 = load float, float* %22996
%22998 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%22999 = load float, float* %22998
%23000 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%23001 = load float, float* %23000
%23002 = fmul float %22999, %23001
%23003 = fneg float %23002
%23004 = call float @llvm.fmuladd.f32(float %22995, float %22997, float %23003)
%23005 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %23004, float* %23005
%23006 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%23007 = load float, float* %23006
%23008 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%23009 = load float, float* %23008
%23010 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%23011 = load float, float* %23010
%23012 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%23013 = load float, float* %23012
%23014 = fmul float %23011, %23013
%23015 = fneg float %23014
%23016 = call float @llvm.fmuladd.f32(float %23007, float %23009, float %23015)
%23017 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %23016, float* %23017
%23018 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%23019 = load float, float* %23018
%23020 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%23021 = load float, float* %23020
%23022 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%23023 = load float, float* %23022
%23024 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%23025 = load float, float* %23024
%23026 = fmul float %23023, %23025
%23027 = fneg float %23026
%23028 = call float @llvm.fmuladd.f32(float %23019, float %23021, float %23027)
%23029 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %23028, float* %23029
%23030 = load float*, float** %12
%23031 = getelementptr inbounds float, float* %23030, i64 0
%23032 = load float, float* %23031
%23033 = load float*, float** %8
%23034 = getelementptr inbounds float, float* %23033, i64 0
%23035 = load float, float* %23034
%23036 = fsub float %23032, %23035
%23037 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %23036, float* %23037
%23038 = load float*, float** %12
%23039 = getelementptr inbounds float, float* %23038, i64 1
%23040 = load float, float* %23039
%23041 = load float*, float** %8
%23042 = getelementptr inbounds float, float* %23041, i64 1
%23043 = load float, float* %23042
%23044 = fsub float %23040, %23043
%23045 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %23044, float* %23045
%23046 = load float*, float** %12
%23047 = getelementptr inbounds float, float* %23046, i64 2
%23048 = load float, float* %23047
%23049 = load float*, float** %8
%23050 = getelementptr inbounds float, float* %23049, i64 2
%23051 = load float, float* %23050
%23052 = fsub float %23048, %23051
%23053 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %23052, float* %23053
%23054 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%23055 = load float, float* %23054
%23056 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%23057 = load float, float* %23056
%23058 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%23059 = load float, float* %23058
%23060 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%23061 = load float, float* %23060
%23062 = fmul float %23059, %23061
%23063 = call float @llvm.fmuladd.f32(float %23055, float %23057, float %23062)
%23064 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%23065 = load float, float* %23064
%23066 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%23067 = load float, float* %23066
%23068 = call float @llvm.fmuladd.f32(float %23065, float %23067, float %23063)
%23069 = fcmp ogt float %23068, 0.000000e+00
br i1 %23069, label %23070, label %23071
23070: ; preds = %22945
store i32 0, i32* %7
br label %37477
23071: ; preds = %22945
store i32 1, i32* %7
br label %37477
23072: ; preds = %22816
%23073 = load float, float* %19
%23074 = fcmp olt float %23073, 0.000000e+00
br i1 %23074, label %23075, label %23328
23075: ; preds = %23072
%23076 = load float*, float** %12
%23077 = getelementptr inbounds float, float* %23076, i64 0
%23078 = load float, float* %23077
%23079 = load float*, float** %9
%23080 = getelementptr inbounds float, float* %23079, i64 0
%23081 = load float, float* %23080
%23082 = fsub float %23078, %23081
%23083 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %23082, float* %23083
%23084 = load float*, float** %12
%23085 = getelementptr inbounds float, float* %23084, i64 1
%23086 = load float, float* %23085
%23087 = load float*, float** %9
%23088 = getelementptr inbounds float, float* %23087, i64 1
%23089 = load float, float* %23088
%23090 = fsub float %23086, %23089
%23091 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %23090, float* %23091
%23092 = load float*, float** %12
%23093 = getelementptr inbounds float, float* %23092, i64 2
%23094 = load float, float* %23093
%23095 = load float*, float** %9
%23096 = getelementptr inbounds float, float* %23095, i64 2
%23097 = load float, float* %23096
%23098 = fsub float %23094, %23097
%23099 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %23098, float* %23099
%23100 = load float*, float** %8
%23101 = getelementptr inbounds float, float* %23100, i64 0
%23102 = load float, float* %23101
%23103 = load float*, float** %9
%23104 = getelementptr inbounds float, float* %23103, i64 0
%23105 = load float, float* %23104
%23106 = fsub float %23102, %23105
%23107 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %23106, float* %23107
%23108 = load float*, float** %8
%23109 = getelementptr inbounds float, float* %23108, i64 1
%23110 = load float, float* %23109
%23111 = load float*, float** %9
%23112 = getelementptr inbounds float, float* %23111, i64 1
%23113 = load float, float* %23112
%23114 = fsub float %23110, %23113
%23115 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %23114, float* %23115
%23116 = load float*, float** %8
%23117 = getelementptr inbounds float, float* %23116, i64 2
%23118 = load float, float* %23117
%23119 = load float*, float** %9
%23120 = getelementptr inbounds float, float* %23119, i64 2
%23121 = load float, float* %23120
%23122 = fsub float %23118, %23121
%23123 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %23122, float* %23123
%23124 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%23125 = load float, float* %23124
%23126 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%23127 = load float, float* %23126
%23128 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%23129 = load float, float* %23128
%23130 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%23131 = load float, float* %23130
%23132 = fmul float %23129, %23131
%23133 = fneg float %23132
%23134 = call float @llvm.fmuladd.f32(float %23125, float %23127, float %23133)
%23135 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %23134, float* %23135
%23136 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%23137 = load float, float* %23136
%23138 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%23139 = load float, float* %23138
%23140 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%23141 = load float, float* %23140
%23142 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%23143 = load float, float* %23142
%23144 = fmul float %23141, %23143
%23145 = fneg float %23144
%23146 = call float @llvm.fmuladd.f32(float %23137, float %23139, float %23145)
%23147 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %23146, float* %23147
%23148 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%23149 = load float, float* %23148
%23150 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%23151 = load float, float* %23150
%23152 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%23153 = load float, float* %23152
%23154 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%23155 = load float, float* %23154
%23156 = fmul float %23153, %23155
%23157 = fneg float %23156
%23158 = call float @llvm.fmuladd.f32(float %23149, float %23151, float %23157)
%23159 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %23158, float* %23159
%23160 = load float*, float** %13
%23161 = getelementptr inbounds float, float* %23160, i64 0
%23162 = load float, float* %23161
%23163 = load float*, float** %9
%23164 = getelementptr inbounds float, float* %23163, i64 0
%23165 = load float, float* %23164
%23166 = fsub float %23162, %23165
%23167 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %23166, float* %23167
%23168 = load float*, float** %13
%23169 = getelementptr inbounds float, float* %23168, i64 1
%23170 = load float, float* %23169
%23171 = load float*, float** %9
%23172 = getelementptr inbounds float, float* %23171, i64 1
%23173 = load float, float* %23172
%23174 = fsub float %23170, %23173
%23175 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %23174, float* %23175
%23176 = load float*, float** %13
%23177 = getelementptr inbounds float, float* %23176, i64 2
%23178 = load float, float* %23177
%23179 = load float*, float** %9
%23180 = getelementptr inbounds float, float* %23179, i64 2
%23181 = load float, float* %23180
%23182 = fsub float %23178, %23181
%23183 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %23182, float* %23183
%23184 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%23185 = load float, float* %23184
%23186 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%23187 = load float, float* %23186
%23188 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%23189 = load float, float* %23188
%23190 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%23191 = load float, float* %23190
%23192 = fmul float %23189, %23191
%23193 = call float @llvm.fmuladd.f32(float %23185, float %23187, float %23192)
%23194 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%23195 = load float, float* %23194
%23196 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%23197 = load float, float* %23196
%23198 = call float @llvm.fmuladd.f32(float %23195, float %23197, float %23193)
%23199 = fcmp ogt float %23198, 0.000000e+00
br i1 %23199, label %23200, label %23201
23200: ; preds = %23075
store i32 0, i32* %7
br label %37477
23201: ; preds = %23075
%23202 = load float*, float** %12
%23203 = getelementptr inbounds float, float* %23202, i64 0
%23204 = load float, float* %23203
%23205 = load float*, float** %8
%23206 = getelementptr inbounds float, float* %23205, i64 0
%23207 = load float, float* %23206
%23208 = fsub float %23204, %23207
%23209 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %23208, float* %23209
%23210 = load float*, float** %12
%23211 = getelementptr inbounds float, float* %23210, i64 1
%23212 = load float, float* %23211
%23213 = load float*, float** %8
%23214 = getelementptr inbounds float, float* %23213, i64 1
%23215 = load float, float* %23214
%23216 = fsub float %23212, %23215
%23217 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %23216, float* %23217
%23218 = load float*, float** %12
%23219 = getelementptr inbounds float, float* %23218, i64 2
%23220 = load float, float* %23219
%23221 = load float*, float** %8
%23222 = getelementptr inbounds float, float* %23221, i64 2
%23223 = load float, float* %23222
%23224 = fsub float %23220, %23223
%23225 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %23224, float* %23225
%23226 = load float*, float** %10
%23227 = getelementptr inbounds float, float* %23226, i64 0
%23228 = load float, float* %23227
%23229 = load float*, float** %8
%23230 = getelementptr inbounds float, float* %23229, i64 0
%23231 = load float, float* %23230
%23232 = fsub float %23228, %23231
%23233 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %23232, float* %23233
%23234 = load float*, float** %10
%23235 = getelementptr inbounds float, float* %23234, i64 1
%23236 = load float, float* %23235
%23237 = load float*, float** %8
%23238 = getelementptr inbounds float, float* %23237, i64 1
%23239 = load float, float* %23238
%23240 = fsub float %23236, %23239
%23241 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %23240, float* %23241
%23242 = load float*, float** %10
%23243 = getelementptr inbounds float, float* %23242, i64 2
%23244 = load float, float* %23243
%23245 = load float*, float** %8
%23246 = getelementptr inbounds float, float* %23245, i64 2
%23247 = load float, float* %23246
%23248 = fsub float %23244, %23247
%23249 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %23248, float* %23249
%23250 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%23251 = load float, float* %23250
%23252 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%23253 = load float, float* %23252
%23254 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%23255 = load float, float* %23254
%23256 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%23257 = load float, float* %23256
%23258 = fmul float %23255, %23257
%23259 = fneg float %23258
%23260 = call float @llvm.fmuladd.f32(float %23251, float %23253, float %23259)
%23261 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %23260, float* %23261
%23262 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%23263 = load float, float* %23262
%23264 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%23265 = load float, float* %23264
%23266 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%23267 = load float, float* %23266
%23268 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%23269 = load float, float* %23268
%23270 = fmul float %23267, %23269
%23271 = fneg float %23270
%23272 = call float @llvm.fmuladd.f32(float %23263, float %23265, float %23271)
%23273 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %23272, float* %23273
%23274 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%23275 = load float, float* %23274
%23276 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%23277 = load float, float* %23276
%23278 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%23279 = load float, float* %23278
%23280 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%23281 = load float, float* %23280
%23282 = fmul float %23279, %23281
%23283 = fneg float %23282
%23284 = call float @llvm.fmuladd.f32(float %23275, float %23277, float %23283)
%23285 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %23284, float* %23285
%23286 = load float*, float** %11
%23287 = getelementptr inbounds float, float* %23286, i64 0
%23288 = load float, float* %23287
%23289 = load float*, float** %8
%23290 = getelementptr inbounds float, float* %23289, i64 0
%23291 = load float, float* %23290
%23292 = fsub float %23288, %23291
%23293 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %23292, float* %23293
%23294 = load float*, float** %11
%23295 = getelementptr inbounds float, float* %23294, i64 1
%23296 = load float, float* %23295
%23297 = load float*, float** %8
%23298 = getelementptr inbounds float, float* %23297, i64 1
%23299 = load float, float* %23298
%23300 = fsub float %23296, %23299
%23301 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %23300, float* %23301
%23302 = load float*, float** %11
%23303 = getelementptr inbounds float, float* %23302, i64 2
%23304 = load float, float* %23303
%23305 = load float*, float** %8
%23306 = getelementptr inbounds float, float* %23305, i64 2
%23307 = load float, float* %23306
%23308 = fsub float %23304, %23307
%23309 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %23308, float* %23309
%23310 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%23311 = load float, float* %23310
%23312 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%23313 = load float, float* %23312
%23314 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%23315 = load float, float* %23314
%23316 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%23317 = load float, float* %23316
%23318 = fmul float %23315, %23317
%23319 = call float @llvm.fmuladd.f32(float %23311, float %23313, float %23318)
%23320 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%23321 = load float, float* %23320
%23322 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%23323 = load float, float* %23322
%23324 = call float @llvm.fmuladd.f32(float %23321, float %23323, float %23319)
%23325 = fcmp ogt float %23324, 0.000000e+00
br i1 %23325, label %23326, label %23327
23326: ; preds = %23201
store i32 0, i32* %7
br label %37477
23327: ; preds = %23201
store i32 1, i32* %7
br label %37477
23328: ; preds = %23072
%23329 = load float*, float** %11
%23330 = getelementptr inbounds float, float* %23329, i64 0
%23331 = load float, float* %23330
%23332 = load float*, float** %10
%23333 = getelementptr inbounds float, float* %23332, i64 0
%23334 = load float, float* %23333
%23335 = fsub float %23331, %23334
%23336 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %23335, float* %23336
%23337 = load float*, float** %11
%23338 = getelementptr inbounds float, float* %23337, i64 1
%23339 = load float, float* %23338
%23340 = load float*, float** %10
%23341 = getelementptr inbounds float, float* %23340, i64 1
%23342 = load float, float* %23341
%23343 = fsub float %23339, %23342
%23344 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %23343, float* %23344
%23345 = load float*, float** %11
%23346 = getelementptr inbounds float, float* %23345, i64 2
%23347 = load float, float* %23346
%23348 = load float*, float** %10
%23349 = getelementptr inbounds float, float* %23348, i64 2
%23350 = load float, float* %23349
%23351 = fsub float %23347, %23350
%23352 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %23351, float* %23352
%23353 = load float*, float** %8
%23354 = getelementptr inbounds float, float* %23353, i64 0
%23355 = load float, float* %23354
%23356 = load float*, float** %10
%23357 = getelementptr inbounds float, float* %23356, i64 0
%23358 = load float, float* %23357
%23359 = fsub float %23355, %23358
%23360 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %23359, float* %23360
%23361 = load float*, float** %8
%23362 = getelementptr inbounds float, float* %23361, i64 1
%23363 = load float, float* %23362
%23364 = load float*, float** %10
%23365 = getelementptr inbounds float, float* %23364, i64 1
%23366 = load float, float* %23365
%23367 = fsub float %23363, %23366
%23368 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %23367, float* %23368
%23369 = load float*, float** %8
%23370 = getelementptr inbounds float, float* %23369, i64 2
%23371 = load float, float* %23370
%23372 = load float*, float** %10
%23373 = getelementptr inbounds float, float* %23372, i64 2
%23374 = load float, float* %23373
%23375 = fsub float %23371, %23374
%23376 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %23375, float* %23376
%23377 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%23378 = load float, float* %23377
%23379 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%23380 = load float, float* %23379
%23381 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%23382 = load float, float* %23381
%23383 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%23384 = load float, float* %23383
%23385 = fmul float %23382, %23384
%23386 = fneg float %23385
%23387 = call float @llvm.fmuladd.f32(float %23378, float %23380, float %23386)
%23388 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %23387, float* %23388
%23389 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%23390 = load float, float* %23389
%23391 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%23392 = load float, float* %23391
%23393 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%23394 = load float, float* %23393
%23395 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%23396 = load float, float* %23395
%23397 = fmul float %23394, %23396
%23398 = fneg float %23397
%23399 = call float @llvm.fmuladd.f32(float %23390, float %23392, float %23398)
%23400 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %23399, float* %23400
%23401 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%23402 = load float, float* %23401
%23403 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%23404 = load float, float* %23403
%23405 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%23406 = load float, float* %23405
%23407 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%23408 = load float, float* %23407
%23409 = fmul float %23406, %23408
%23410 = fneg float %23409
%23411 = call float @llvm.fmuladd.f32(float %23402, float %23404, float %23410)
%23412 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %23411, float* %23412
%23413 = load float*, float** %12
%23414 = getelementptr inbounds float, float* %23413, i64 0
%23415 = load float, float* %23414
%23416 = load float*, float** %10
%23417 = getelementptr inbounds float, float* %23416, i64 0
%23418 = load float, float* %23417
%23419 = fsub float %23415, %23418
%23420 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %23419, float* %23420
%23421 = load float*, float** %12
%23422 = getelementptr inbounds float, float* %23421, i64 1
%23423 = load float, float* %23422
%23424 = load float*, float** %10
%23425 = getelementptr inbounds float, float* %23424, i64 1
%23426 = load float, float* %23425
%23427 = fsub float %23423, %23426
%23428 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %23427, float* %23428
%23429 = load float*, float** %12
%23430 = getelementptr inbounds float, float* %23429, i64 2
%23431 = load float, float* %23430
%23432 = load float*, float** %10
%23433 = getelementptr inbounds float, float* %23432, i64 2
%23434 = load float, float* %23433
%23435 = fsub float %23431, %23434
%23436 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %23435, float* %23436
%23437 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%23438 = load float, float* %23437
%23439 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%23440 = load float, float* %23439
%23441 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%23442 = load float, float* %23441
%23443 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%23444 = load float, float* %23443
%23445 = fmul float %23442, %23444
%23446 = call float @llvm.fmuladd.f32(float %23438, float %23440, float %23445)
%23447 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%23448 = load float, float* %23447
%23449 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%23450 = load float, float* %23449
%23451 = call float @llvm.fmuladd.f32(float %23448, float %23450, float %23446)
%23452 = fcmp ogt float %23451, 0.000000e+00
br i1 %23452, label %23453, label %23454
23453: ; preds = %23328
store i32 0, i32* %7
br label %37477
23454: ; preds = %23328
%23455 = load float*, float** %11
%23456 = getelementptr inbounds float, float* %23455, i64 0
%23457 = load float, float* %23456
%23458 = load float*, float** %8
%23459 = getelementptr inbounds float, float* %23458, i64 0
%23460 = load float, float* %23459
%23461 = fsub float %23457, %23460
%23462 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %23461, float* %23462
%23463 = load float*, float** %11
%23464 = getelementptr inbounds float, float* %23463, i64 1
%23465 = load float, float* %23464
%23466 = load float*, float** %8
%23467 = getelementptr inbounds float, float* %23466, i64 1
%23468 = load float, float* %23467
%23469 = fsub float %23465, %23468
%23470 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %23469, float* %23470
%23471 = load float*, float** %11
%23472 = getelementptr inbounds float, float* %23471, i64 2
%23473 = load float, float* %23472
%23474 = load float*, float** %8
%23475 = getelementptr inbounds float, float* %23474, i64 2
%23476 = load float, float* %23475
%23477 = fsub float %23473, %23476
%23478 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %23477, float* %23478
%23479 = load float*, float** %9
%23480 = getelementptr inbounds float, float* %23479, i64 0
%23481 = load float, float* %23480
%23482 = load float*, float** %8
%23483 = getelementptr inbounds float, float* %23482, i64 0
%23484 = load float, float* %23483
%23485 = fsub float %23481, %23484
%23486 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %23485, float* %23486
%23487 = load float*, float** %9
%23488 = getelementptr inbounds float, float* %23487, i64 1
%23489 = load float, float* %23488
%23490 = load float*, float** %8
%23491 = getelementptr inbounds float, float* %23490, i64 1
%23492 = load float, float* %23491
%23493 = fsub float %23489, %23492
%23494 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %23493, float* %23494
%23495 = load float*, float** %9
%23496 = getelementptr inbounds float, float* %23495, i64 2
%23497 = load float, float* %23496
%23498 = load float*, float** %8
%23499 = getelementptr inbounds float, float* %23498, i64 2
%23500 = load float, float* %23499
%23501 = fsub float %23497, %23500
%23502 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %23501, float* %23502
%23503 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%23504 = load float, float* %23503
%23505 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%23506 = load float, float* %23505
%23507 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%23508 = load float, float* %23507
%23509 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%23510 = load float, float* %23509
%23511 = fmul float %23508, %23510
%23512 = fneg float %23511
%23513 = call float @llvm.fmuladd.f32(float %23504, float %23506, float %23512)
%23514 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %23513, float* %23514
%23515 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%23516 = load float, float* %23515
%23517 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%23518 = load float, float* %23517
%23519 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%23520 = load float, float* %23519
%23521 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%23522 = load float, float* %23521
%23523 = fmul float %23520, %23522
%23524 = fneg float %23523
%23525 = call float @llvm.fmuladd.f32(float %23516, float %23518, float %23524)
%23526 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %23525, float* %23526
%23527 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%23528 = load float, float* %23527
%23529 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%23530 = load float, float* %23529
%23531 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%23532 = load float, float* %23531
%23533 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%23534 = load float, float* %23533
%23535 = fmul float %23532, %23534
%23536 = fneg float %23535
%23537 = call float @llvm.fmuladd.f32(float %23528, float %23530, float %23536)
%23538 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %23537, float* %23538
%23539 = load float*, float** %13
%23540 = getelementptr inbounds float, float* %23539, i64 0
%23541 = load float, float* %23540
%23542 = load float*, float** %8
%23543 = getelementptr inbounds float, float* %23542, i64 0
%23544 = load float, float* %23543
%23545 = fsub float %23541, %23544
%23546 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %23545, float* %23546
%23547 = load float*, float** %13
%23548 = getelementptr inbounds float, float* %23547, i64 1
%23549 = load float, float* %23548
%23550 = load float*, float** %8
%23551 = getelementptr inbounds float, float* %23550, i64 1
%23552 = load float, float* %23551
%23553 = fsub float %23549, %23552
%23554 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %23553, float* %23554
%23555 = load float*, float** %13
%23556 = getelementptr inbounds float, float* %23555, i64 2
%23557 = load float, float* %23556
%23558 = load float*, float** %8
%23559 = getelementptr inbounds float, float* %23558, i64 2
%23560 = load float, float* %23559
%23561 = fsub float %23557, %23560
%23562 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %23561, float* %23562
%23563 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%23564 = load float, float* %23563
%23565 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%23566 = load float, float* %23565
%23567 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%23568 = load float, float* %23567
%23569 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%23570 = load float, float* %23569
%23571 = fmul float %23568, %23570
%23572 = call float @llvm.fmuladd.f32(float %23564, float %23566, float %23571)
%23573 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%23574 = load float, float* %23573
%23575 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%23576 = load float, float* %23575
%23577 = call float @llvm.fmuladd.f32(float %23574, float %23576, float %23572)
%23578 = fcmp ogt float %23577, 0.000000e+00
br i1 %23578, label %23579, label %23580
23579: ; preds = %23454
store i32 0, i32* %7
br label %37477
23580: ; preds = %23454
store i32 1, i32* %7
br label %37477
23581: ; preds = %22813
%23582 = load float, float* %18
%23583 = fcmp olt float %23582, 0.000000e+00
br i1 %23583, label %23584, label %24093
23584: ; preds = %23581
%23585 = load float, float* %19
%23586 = fcmp oge float %23585, 0.000000e+00
br i1 %23586, label %23587, label %23840
23587: ; preds = %23584
%23588 = load float*, float** %12
%23589 = getelementptr inbounds float, float* %23588, i64 0
%23590 = load float, float* %23589
%23591 = load float*, float** %10
%23592 = getelementptr inbounds float, float* %23591, i64 0
%23593 = load float, float* %23592
%23594 = fsub float %23590, %23593
%23595 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %23594, float* %23595
%23596 = load float*, float** %12
%23597 = getelementptr inbounds float, float* %23596, i64 1
%23598 = load float, float* %23597
%23599 = load float*, float** %10
%23600 = getelementptr inbounds float, float* %23599, i64 1
%23601 = load float, float* %23600
%23602 = fsub float %23598, %23601
%23603 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %23602, float* %23603
%23604 = load float*, float** %12
%23605 = getelementptr inbounds float, float* %23604, i64 2
%23606 = load float, float* %23605
%23607 = load float*, float** %10
%23608 = getelementptr inbounds float, float* %23607, i64 2
%23609 = load float, float* %23608
%23610 = fsub float %23606, %23609
%23611 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %23610, float* %23611
%23612 = load float*, float** %8
%23613 = getelementptr inbounds float, float* %23612, i64 0
%23614 = load float, float* %23613
%23615 = load float*, float** %10
%23616 = getelementptr inbounds float, float* %23615, i64 0
%23617 = load float, float* %23616
%23618 = fsub float %23614, %23617
%23619 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %23618, float* %23619
%23620 = load float*, float** %8
%23621 = getelementptr inbounds float, float* %23620, i64 1
%23622 = load float, float* %23621
%23623 = load float*, float** %10
%23624 = getelementptr inbounds float, float* %23623, i64 1
%23625 = load float, float* %23624
%23626 = fsub float %23622, %23625
%23627 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %23626, float* %23627
%23628 = load float*, float** %8
%23629 = getelementptr inbounds float, float* %23628, i64 2
%23630 = load float, float* %23629
%23631 = load float*, float** %10
%23632 = getelementptr inbounds float, float* %23631, i64 2
%23633 = load float, float* %23632
%23634 = fsub float %23630, %23633
%23635 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %23634, float* %23635
%23636 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%23637 = load float, float* %23636
%23638 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%23639 = load float, float* %23638
%23640 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%23641 = load float, float* %23640
%23642 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%23643 = load float, float* %23642
%23644 = fmul float %23641, %23643
%23645 = fneg float %23644
%23646 = call float @llvm.fmuladd.f32(float %23637, float %23639, float %23645)
%23647 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %23646, float* %23647
%23648 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%23649 = load float, float* %23648
%23650 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%23651 = load float, float* %23650
%23652 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%23653 = load float, float* %23652
%23654 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%23655 = load float, float* %23654
%23656 = fmul float %23653, %23655
%23657 = fneg float %23656
%23658 = call float @llvm.fmuladd.f32(float %23649, float %23651, float %23657)
%23659 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %23658, float* %23659
%23660 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%23661 = load float, float* %23660
%23662 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%23663 = load float, float* %23662
%23664 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%23665 = load float, float* %23664
%23666 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%23667 = load float, float* %23666
%23668 = fmul float %23665, %23667
%23669 = fneg float %23668
%23670 = call float @llvm.fmuladd.f32(float %23661, float %23663, float %23669)
%23671 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %23670, float* %23671
%23672 = load float*, float** %13
%23673 = getelementptr inbounds float, float* %23672, i64 0
%23674 = load float, float* %23673
%23675 = load float*, float** %10
%23676 = getelementptr inbounds float, float* %23675, i64 0
%23677 = load float, float* %23676
%23678 = fsub float %23674, %23677
%23679 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %23678, float* %23679
%23680 = load float*, float** %13
%23681 = getelementptr inbounds float, float* %23680, i64 1
%23682 = load float, float* %23681
%23683 = load float*, float** %10
%23684 = getelementptr inbounds float, float* %23683, i64 1
%23685 = load float, float* %23684
%23686 = fsub float %23682, %23685
%23687 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %23686, float* %23687
%23688 = load float*, float** %13
%23689 = getelementptr inbounds float, float* %23688, i64 2
%23690 = load float, float* %23689
%23691 = load float*, float** %10
%23692 = getelementptr inbounds float, float* %23691, i64 2
%23693 = load float, float* %23692
%23694 = fsub float %23690, %23693
%23695 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %23694, float* %23695
%23696 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%23697 = load float, float* %23696
%23698 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%23699 = load float, float* %23698
%23700 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%23701 = load float, float* %23700
%23702 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%23703 = load float, float* %23702
%23704 = fmul float %23701, %23703
%23705 = call float @llvm.fmuladd.f32(float %23697, float %23699, float %23704)
%23706 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%23707 = load float, float* %23706
%23708 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%23709 = load float, float* %23708
%23710 = call float @llvm.fmuladd.f32(float %23707, float %23709, float %23705)
%23711 = fcmp ogt float %23710, 0.000000e+00
br i1 %23711, label %23712, label %23713
23712: ; preds = %23587
store i32 0, i32* %7
br label %37477
23713: ; preds = %23587
%23714 = load float*, float** %12
%23715 = getelementptr inbounds float, float* %23714, i64 0
%23716 = load float, float* %23715
%23717 = load float*, float** %8
%23718 = getelementptr inbounds float, float* %23717, i64 0
%23719 = load float, float* %23718
%23720 = fsub float %23716, %23719
%23721 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %23720, float* %23721
%23722 = load float*, float** %12
%23723 = getelementptr inbounds float, float* %23722, i64 1
%23724 = load float, float* %23723
%23725 = load float*, float** %8
%23726 = getelementptr inbounds float, float* %23725, i64 1
%23727 = load float, float* %23726
%23728 = fsub float %23724, %23727
%23729 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %23728, float* %23729
%23730 = load float*, float** %12
%23731 = getelementptr inbounds float, float* %23730, i64 2
%23732 = load float, float* %23731
%23733 = load float*, float** %8
%23734 = getelementptr inbounds float, float* %23733, i64 2
%23735 = load float, float* %23734
%23736 = fsub float %23732, %23735
%23737 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %23736, float* %23737
%23738 = load float*, float** %9
%23739 = getelementptr inbounds float, float* %23738, i64 0
%23740 = load float, float* %23739
%23741 = load float*, float** %8
%23742 = getelementptr inbounds float, float* %23741, i64 0
%23743 = load float, float* %23742
%23744 = fsub float %23740, %23743
%23745 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %23744, float* %23745
%23746 = load float*, float** %9
%23747 = getelementptr inbounds float, float* %23746, i64 1
%23748 = load float, float* %23747
%23749 = load float*, float** %8
%23750 = getelementptr inbounds float, float* %23749, i64 1
%23751 = load float, float* %23750
%23752 = fsub float %23748, %23751
%23753 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %23752, float* %23753
%23754 = load float*, float** %9
%23755 = getelementptr inbounds float, float* %23754, i64 2
%23756 = load float, float* %23755
%23757 = load float*, float** %8
%23758 = getelementptr inbounds float, float* %23757, i64 2
%23759 = load float, float* %23758
%23760 = fsub float %23756, %23759
%23761 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %23760, float* %23761
%23762 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%23763 = load float, float* %23762
%23764 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%23765 = load float, float* %23764
%23766 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%23767 = load float, float* %23766
%23768 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%23769 = load float, float* %23768
%23770 = fmul float %23767, %23769
%23771 = fneg float %23770
%23772 = call float @llvm.fmuladd.f32(float %23763, float %23765, float %23771)
%23773 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %23772, float* %23773
%23774 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%23775 = load float, float* %23774
%23776 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%23777 = load float, float* %23776
%23778 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%23779 = load float, float* %23778
%23780 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%23781 = load float, float* %23780
%23782 = fmul float %23779, %23781
%23783 = fneg float %23782
%23784 = call float @llvm.fmuladd.f32(float %23775, float %23777, float %23783)
%23785 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %23784, float* %23785
%23786 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%23787 = load float, float* %23786
%23788 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%23789 = load float, float* %23788
%23790 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%23791 = load float, float* %23790
%23792 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%23793 = load float, float* %23792
%23794 = fmul float %23791, %23793
%23795 = fneg float %23794
%23796 = call float @llvm.fmuladd.f32(float %23787, float %23789, float %23795)
%23797 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %23796, float* %23797
%23798 = load float*, float** %11
%23799 = getelementptr inbounds float, float* %23798, i64 0
%23800 = load float, float* %23799
%23801 = load float*, float** %8
%23802 = getelementptr inbounds float, float* %23801, i64 0
%23803 = load float, float* %23802
%23804 = fsub float %23800, %23803
%23805 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %23804, float* %23805
%23806 = load float*, float** %11
%23807 = getelementptr inbounds float, float* %23806, i64 1
%23808 = load float, float* %23807
%23809 = load float*, float** %8
%23810 = getelementptr inbounds float, float* %23809, i64 1
%23811 = load float, float* %23810
%23812 = fsub float %23808, %23811
%23813 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %23812, float* %23813
%23814 = load float*, float** %11
%23815 = getelementptr inbounds float, float* %23814, i64 2
%23816 = load float, float* %23815
%23817 = load float*, float** %8
%23818 = getelementptr inbounds float, float* %23817, i64 2
%23819 = load float, float* %23818
%23820 = fsub float %23816, %23819
%23821 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %23820, float* %23821
%23822 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%23823 = load float, float* %23822
%23824 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%23825 = load float, float* %23824
%23826 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%23827 = load float, float* %23826
%23828 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%23829 = load float, float* %23828
%23830 = fmul float %23827, %23829
%23831 = call float @llvm.fmuladd.f32(float %23823, float %23825, float %23830)
%23832 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%23833 = load float, float* %23832
%23834 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%23835 = load float, float* %23834
%23836 = call float @llvm.fmuladd.f32(float %23833, float %23835, float %23831)
%23837 = fcmp ogt float %23836, 0.000000e+00
br i1 %23837, label %23838, label %23839
23838: ; preds = %23713
store i32 0, i32* %7
br label %37477
23839: ; preds = %23713
store i32 1, i32* %7
br label %37477
23840: ; preds = %23584
%23841 = load float*, float** %11
%23842 = getelementptr inbounds float, float* %23841, i64 0
%23843 = load float, float* %23842
%23844 = load float*, float** %9
%23845 = getelementptr inbounds float, float* %23844, i64 0
%23846 = load float, float* %23845
%23847 = fsub float %23843, %23846
%23848 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %23847, float* %23848
%23849 = load float*, float** %11
%23850 = getelementptr inbounds float, float* %23849, i64 1
%23851 = load float, float* %23850
%23852 = load float*, float** %9
%23853 = getelementptr inbounds float, float* %23852, i64 1
%23854 = load float, float* %23853
%23855 = fsub float %23851, %23854
%23856 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %23855, float* %23856
%23857 = load float*, float** %11
%23858 = getelementptr inbounds float, float* %23857, i64 2
%23859 = load float, float* %23858
%23860 = load float*, float** %9
%23861 = getelementptr inbounds float, float* %23860, i64 2
%23862 = load float, float* %23861
%23863 = fsub float %23859, %23862
%23864 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %23863, float* %23864
%23865 = load float*, float** %8
%23866 = getelementptr inbounds float, float* %23865, i64 0
%23867 = load float, float* %23866
%23868 = load float*, float** %9
%23869 = getelementptr inbounds float, float* %23868, i64 0
%23870 = load float, float* %23869
%23871 = fsub float %23867, %23870
%23872 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %23871, float* %23872
%23873 = load float*, float** %8
%23874 = getelementptr inbounds float, float* %23873, i64 1
%23875 = load float, float* %23874
%23876 = load float*, float** %9
%23877 = getelementptr inbounds float, float* %23876, i64 1
%23878 = load float, float* %23877
%23879 = fsub float %23875, %23878
%23880 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %23879, float* %23880
%23881 = load float*, float** %8
%23882 = getelementptr inbounds float, float* %23881, i64 2
%23883 = load float, float* %23882
%23884 = load float*, float** %9
%23885 = getelementptr inbounds float, float* %23884, i64 2
%23886 = load float, float* %23885
%23887 = fsub float %23883, %23886
%23888 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %23887, float* %23888
%23889 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%23890 = load float, float* %23889
%23891 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%23892 = load float, float* %23891
%23893 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%23894 = load float, float* %23893
%23895 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%23896 = load float, float* %23895
%23897 = fmul float %23894, %23896
%23898 = fneg float %23897
%23899 = call float @llvm.fmuladd.f32(float %23890, float %23892, float %23898)
%23900 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %23899, float* %23900
%23901 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%23902 = load float, float* %23901
%23903 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%23904 = load float, float* %23903
%23905 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%23906 = load float, float* %23905
%23907 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%23908 = load float, float* %23907
%23909 = fmul float %23906, %23908
%23910 = fneg float %23909
%23911 = call float @llvm.fmuladd.f32(float %23902, float %23904, float %23910)
%23912 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %23911, float* %23912
%23913 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%23914 = load float, float* %23913
%23915 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%23916 = load float, float* %23915
%23917 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%23918 = load float, float* %23917
%23919 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%23920 = load float, float* %23919
%23921 = fmul float %23918, %23920
%23922 = fneg float %23921
%23923 = call float @llvm.fmuladd.f32(float %23914, float %23916, float %23922)
%23924 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %23923, float* %23924
%23925 = load float*, float** %12
%23926 = getelementptr inbounds float, float* %23925, i64 0
%23927 = load float, float* %23926
%23928 = load float*, float** %9
%23929 = getelementptr inbounds float, float* %23928, i64 0
%23930 = load float, float* %23929
%23931 = fsub float %23927, %23930
%23932 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %23931, float* %23932
%23933 = load float*, float** %12
%23934 = getelementptr inbounds float, float* %23933, i64 1
%23935 = load float, float* %23934
%23936 = load float*, float** %9
%23937 = getelementptr inbounds float, float* %23936, i64 1
%23938 = load float, float* %23937
%23939 = fsub float %23935, %23938
%23940 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %23939, float* %23940
%23941 = load float*, float** %12
%23942 = getelementptr inbounds float, float* %23941, i64 2
%23943 = load float, float* %23942
%23944 = load float*, float** %9
%23945 = getelementptr inbounds float, float* %23944, i64 2
%23946 = load float, float* %23945
%23947 = fsub float %23943, %23946
%23948 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %23947, float* %23948
%23949 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%23950 = load float, float* %23949
%23951 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%23952 = load float, float* %23951
%23953 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%23954 = load float, float* %23953
%23955 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%23956 = load float, float* %23955
%23957 = fmul float %23954, %23956
%23958 = call float @llvm.fmuladd.f32(float %23950, float %23952, float %23957)
%23959 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%23960 = load float, float* %23959
%23961 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%23962 = load float, float* %23961
%23963 = call float @llvm.fmuladd.f32(float %23960, float %23962, float %23958)
%23964 = fcmp ogt float %23963, 0.000000e+00
br i1 %23964, label %23965, label %23966
23965: ; preds = %23840
store i32 0, i32* %7
br label %37477
23966: ; preds = %23840
%23967 = load float*, float** %11
%23968 = getelementptr inbounds float, float* %23967, i64 0
%23969 = load float, float* %23968
%23970 = load float*, float** %8
%23971 = getelementptr inbounds float, float* %23970, i64 0
%23972 = load float, float* %23971
%23973 = fsub float %23969, %23972
%23974 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %23973, float* %23974
%23975 = load float*, float** %11
%23976 = getelementptr inbounds float, float* %23975, i64 1
%23977 = load float, float* %23976
%23978 = load float*, float** %8
%23979 = getelementptr inbounds float, float* %23978, i64 1
%23980 = load float, float* %23979
%23981 = fsub float %23977, %23980
%23982 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %23981, float* %23982
%23983 = load float*, float** %11
%23984 = getelementptr inbounds float, float* %23983, i64 2
%23985 = load float, float* %23984
%23986 = load float*, float** %8
%23987 = getelementptr inbounds float, float* %23986, i64 2
%23988 = load float, float* %23987
%23989 = fsub float %23985, %23988
%23990 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %23989, float* %23990
%23991 = load float*, float** %10
%23992 = getelementptr inbounds float, float* %23991, i64 0
%23993 = load float, float* %23992
%23994 = load float*, float** %8
%23995 = getelementptr inbounds float, float* %23994, i64 0
%23996 = load float, float* %23995
%23997 = fsub float %23993, %23996
%23998 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %23997, float* %23998
%23999 = load float*, float** %10
%24000 = getelementptr inbounds float, float* %23999, i64 1
%24001 = load float, float* %24000
%24002 = load float*, float** %8
%24003 = getelementptr inbounds float, float* %24002, i64 1
%24004 = load float, float* %24003
%24005 = fsub float %24001, %24004
%24006 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %24005, float* %24006
%24007 = load float*, float** %10
%24008 = getelementptr inbounds float, float* %24007, i64 2
%24009 = load float, float* %24008
%24010 = load float*, float** %8
%24011 = getelementptr inbounds float, float* %24010, i64 2
%24012 = load float, float* %24011
%24013 = fsub float %24009, %24012
%24014 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %24013, float* %24014
%24015 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%24016 = load float, float* %24015
%24017 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%24018 = load float, float* %24017
%24019 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%24020 = load float, float* %24019
%24021 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%24022 = load float, float* %24021
%24023 = fmul float %24020, %24022
%24024 = fneg float %24023
%24025 = call float @llvm.fmuladd.f32(float %24016, float %24018, float %24024)
%24026 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %24025, float* %24026
%24027 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%24028 = load float, float* %24027
%24029 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%24030 = load float, float* %24029
%24031 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%24032 = load float, float* %24031
%24033 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%24034 = load float, float* %24033
%24035 = fmul float %24032, %24034
%24036 = fneg float %24035
%24037 = call float @llvm.fmuladd.f32(float %24028, float %24030, float %24036)
%24038 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %24037, float* %24038
%24039 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%24040 = load float, float* %24039
%24041 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%24042 = load float, float* %24041
%24043 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%24044 = load float, float* %24043
%24045 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%24046 = load float, float* %24045
%24047 = fmul float %24044, %24046
%24048 = fneg float %24047
%24049 = call float @llvm.fmuladd.f32(float %24040, float %24042, float %24048)
%24050 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %24049, float* %24050
%24051 = load float*, float** %13
%24052 = getelementptr inbounds float, float* %24051, i64 0
%24053 = load float, float* %24052
%24054 = load float*, float** %8
%24055 = getelementptr inbounds float, float* %24054, i64 0
%24056 = load float, float* %24055
%24057 = fsub float %24053, %24056
%24058 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %24057, float* %24058
%24059 = load float*, float** %13
%24060 = getelementptr inbounds float, float* %24059, i64 1
%24061 = load float, float* %24060
%24062 = load float*, float** %8
%24063 = getelementptr inbounds float, float* %24062, i64 1
%24064 = load float, float* %24063
%24065 = fsub float %24061, %24064
%24066 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %24065, float* %24066
%24067 = load float*, float** %13
%24068 = getelementptr inbounds float, float* %24067, i64 2
%24069 = load float, float* %24068
%24070 = load float*, float** %8
%24071 = getelementptr inbounds float, float* %24070, i64 2
%24072 = load float, float* %24071
%24073 = fsub float %24069, %24072
%24074 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %24073, float* %24074
%24075 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%24076 = load float, float* %24075
%24077 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%24078 = load float, float* %24077
%24079 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%24080 = load float, float* %24079
%24081 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%24082 = load float, float* %24081
%24083 = fmul float %24080, %24082
%24084 = call float @llvm.fmuladd.f32(float %24076, float %24078, float %24083)
%24085 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%24086 = load float, float* %24085
%24087 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%24088 = load float, float* %24087
%24089 = call float @llvm.fmuladd.f32(float %24086, float %24088, float %24084)
%24090 = fcmp ogt float %24089, 0.000000e+00
br i1 %24090, label %24091, label %24092
24091: ; preds = %23966
store i32 0, i32* %7
br label %37477
24092: ; preds = %23966
store i32 1, i32* %7
br label %37477
24093: ; preds = %23581
%24094 = load float, float* %18
%24095 = fcmp ogt float %24094, 0.000000e+00
br i1 %24095, label %24096, label %24605
24096: ; preds = %24093
%24097 = load float, float* %19
%24098 = fcmp ogt float %24097, 0.000000e+00
br i1 %24098, label %24099, label %24352
24099: ; preds = %24096
%24100 = load float*, float** %11
%24101 = getelementptr inbounds float, float* %24100, i64 0
%24102 = load float, float* %24101
%24103 = load float*, float** %10
%24104 = getelementptr inbounds float, float* %24103, i64 0
%24105 = load float, float* %24104
%24106 = fsub float %24102, %24105
%24107 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %24106, float* %24107
%24108 = load float*, float** %11
%24109 = getelementptr inbounds float, float* %24108, i64 1
%24110 = load float, float* %24109
%24111 = load float*, float** %10
%24112 = getelementptr inbounds float, float* %24111, i64 1
%24113 = load float, float* %24112
%24114 = fsub float %24110, %24113
%24115 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %24114, float* %24115
%24116 = load float*, float** %11
%24117 = getelementptr inbounds float, float* %24116, i64 2
%24118 = load float, float* %24117
%24119 = load float*, float** %10
%24120 = getelementptr inbounds float, float* %24119, i64 2
%24121 = load float, float* %24120
%24122 = fsub float %24118, %24121
%24123 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %24122, float* %24123
%24124 = load float*, float** %8
%24125 = getelementptr inbounds float, float* %24124, i64 0
%24126 = load float, float* %24125
%24127 = load float*, float** %10
%24128 = getelementptr inbounds float, float* %24127, i64 0
%24129 = load float, float* %24128
%24130 = fsub float %24126, %24129
%24131 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %24130, float* %24131
%24132 = load float*, float** %8
%24133 = getelementptr inbounds float, float* %24132, i64 1
%24134 = load float, float* %24133
%24135 = load float*, float** %10
%24136 = getelementptr inbounds float, float* %24135, i64 1
%24137 = load float, float* %24136
%24138 = fsub float %24134, %24137
%24139 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %24138, float* %24139
%24140 = load float*, float** %8
%24141 = getelementptr inbounds float, float* %24140, i64 2
%24142 = load float, float* %24141
%24143 = load float*, float** %10
%24144 = getelementptr inbounds float, float* %24143, i64 2
%24145 = load float, float* %24144
%24146 = fsub float %24142, %24145
%24147 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %24146, float* %24147
%24148 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%24149 = load float, float* %24148
%24150 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%24151 = load float, float* %24150
%24152 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%24153 = load float, float* %24152
%24154 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%24155 = load float, float* %24154
%24156 = fmul float %24153, %24155
%24157 = fneg float %24156
%24158 = call float @llvm.fmuladd.f32(float %24149, float %24151, float %24157)
%24159 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %24158, float* %24159
%24160 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%24161 = load float, float* %24160
%24162 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%24163 = load float, float* %24162
%24164 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%24165 = load float, float* %24164
%24166 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%24167 = load float, float* %24166
%24168 = fmul float %24165, %24167
%24169 = fneg float %24168
%24170 = call float @llvm.fmuladd.f32(float %24161, float %24163, float %24169)
%24171 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %24170, float* %24171
%24172 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%24173 = load float, float* %24172
%24174 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%24175 = load float, float* %24174
%24176 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%24177 = load float, float* %24176
%24178 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%24179 = load float, float* %24178
%24180 = fmul float %24177, %24179
%24181 = fneg float %24180
%24182 = call float @llvm.fmuladd.f32(float %24173, float %24175, float %24181)
%24183 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %24182, float* %24183
%24184 = load float*, float** %12
%24185 = getelementptr inbounds float, float* %24184, i64 0
%24186 = load float, float* %24185
%24187 = load float*, float** %10
%24188 = getelementptr inbounds float, float* %24187, i64 0
%24189 = load float, float* %24188
%24190 = fsub float %24186, %24189
%24191 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %24190, float* %24191
%24192 = load float*, float** %12
%24193 = getelementptr inbounds float, float* %24192, i64 1
%24194 = load float, float* %24193
%24195 = load float*, float** %10
%24196 = getelementptr inbounds float, float* %24195, i64 1
%24197 = load float, float* %24196
%24198 = fsub float %24194, %24197
%24199 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %24198, float* %24199
%24200 = load float*, float** %12
%24201 = getelementptr inbounds float, float* %24200, i64 2
%24202 = load float, float* %24201
%24203 = load float*, float** %10
%24204 = getelementptr inbounds float, float* %24203, i64 2
%24205 = load float, float* %24204
%24206 = fsub float %24202, %24205
%24207 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %24206, float* %24207
%24208 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%24209 = load float, float* %24208
%24210 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%24211 = load float, float* %24210
%24212 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%24213 = load float, float* %24212
%24214 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%24215 = load float, float* %24214
%24216 = fmul float %24213, %24215
%24217 = call float @llvm.fmuladd.f32(float %24209, float %24211, float %24216)
%24218 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%24219 = load float, float* %24218
%24220 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%24221 = load float, float* %24220
%24222 = call float @llvm.fmuladd.f32(float %24219, float %24221, float %24217)
%24223 = fcmp ogt float %24222, 0.000000e+00
br i1 %24223, label %24224, label %24225
24224: ; preds = %24099
store i32 0, i32* %7
br label %37477
24225: ; preds = %24099
%24226 = load float*, float** %11
%24227 = getelementptr inbounds float, float* %24226, i64 0
%24228 = load float, float* %24227
%24229 = load float*, float** %8
%24230 = getelementptr inbounds float, float* %24229, i64 0
%24231 = load float, float* %24230
%24232 = fsub float %24228, %24231
%24233 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %24232, float* %24233
%24234 = load float*, float** %11
%24235 = getelementptr inbounds float, float* %24234, i64 1
%24236 = load float, float* %24235
%24237 = load float*, float** %8
%24238 = getelementptr inbounds float, float* %24237, i64 1
%24239 = load float, float* %24238
%24240 = fsub float %24236, %24239
%24241 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %24240, float* %24241
%24242 = load float*, float** %11
%24243 = getelementptr inbounds float, float* %24242, i64 2
%24244 = load float, float* %24243
%24245 = load float*, float** %8
%24246 = getelementptr inbounds float, float* %24245, i64 2
%24247 = load float, float* %24246
%24248 = fsub float %24244, %24247
%24249 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %24248, float* %24249
%24250 = load float*, float** %9
%24251 = getelementptr inbounds float, float* %24250, i64 0
%24252 = load float, float* %24251
%24253 = load float*, float** %8
%24254 = getelementptr inbounds float, float* %24253, i64 0
%24255 = load float, float* %24254
%24256 = fsub float %24252, %24255
%24257 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %24256, float* %24257
%24258 = load float*, float** %9
%24259 = getelementptr inbounds float, float* %24258, i64 1
%24260 = load float, float* %24259
%24261 = load float*, float** %8
%24262 = getelementptr inbounds float, float* %24261, i64 1
%24263 = load float, float* %24262
%24264 = fsub float %24260, %24263
%24265 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %24264, float* %24265
%24266 = load float*, float** %9
%24267 = getelementptr inbounds float, float* %24266, i64 2
%24268 = load float, float* %24267
%24269 = load float*, float** %8
%24270 = getelementptr inbounds float, float* %24269, i64 2
%24271 = load float, float* %24270
%24272 = fsub float %24268, %24271
%24273 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %24272, float* %24273
%24274 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%24275 = load float, float* %24274
%24276 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%24277 = load float, float* %24276
%24278 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%24279 = load float, float* %24278
%24280 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%24281 = load float, float* %24280
%24282 = fmul float %24279, %24281
%24283 = fneg float %24282
%24284 = call float @llvm.fmuladd.f32(float %24275, float %24277, float %24283)
%24285 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %24284, float* %24285
%24286 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%24287 = load float, float* %24286
%24288 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%24289 = load float, float* %24288
%24290 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%24291 = load float, float* %24290
%24292 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%24293 = load float, float* %24292
%24294 = fmul float %24291, %24293
%24295 = fneg float %24294
%24296 = call float @llvm.fmuladd.f32(float %24287, float %24289, float %24295)
%24297 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %24296, float* %24297
%24298 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%24299 = load float, float* %24298
%24300 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%24301 = load float, float* %24300
%24302 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%24303 = load float, float* %24302
%24304 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%24305 = load float, float* %24304
%24306 = fmul float %24303, %24305
%24307 = fneg float %24306
%24308 = call float @llvm.fmuladd.f32(float %24299, float %24301, float %24307)
%24309 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %24308, float* %24309
%24310 = load float*, float** %13
%24311 = getelementptr inbounds float, float* %24310, i64 0
%24312 = load float, float* %24311
%24313 = load float*, float** %8
%24314 = getelementptr inbounds float, float* %24313, i64 0
%24315 = load float, float* %24314
%24316 = fsub float %24312, %24315
%24317 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %24316, float* %24317
%24318 = load float*, float** %13
%24319 = getelementptr inbounds float, float* %24318, i64 1
%24320 = load float, float* %24319
%24321 = load float*, float** %8
%24322 = getelementptr inbounds float, float* %24321, i64 1
%24323 = load float, float* %24322
%24324 = fsub float %24320, %24323
%24325 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %24324, float* %24325
%24326 = load float*, float** %13
%24327 = getelementptr inbounds float, float* %24326, i64 2
%24328 = load float, float* %24327
%24329 = load float*, float** %8
%24330 = getelementptr inbounds float, float* %24329, i64 2
%24331 = load float, float* %24330
%24332 = fsub float %24328, %24331
%24333 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %24332, float* %24333
%24334 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%24335 = load float, float* %24334
%24336 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%24337 = load float, float* %24336
%24338 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%24339 = load float, float* %24338
%24340 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%24341 = load float, float* %24340
%24342 = fmul float %24339, %24341
%24343 = call float @llvm.fmuladd.f32(float %24335, float %24337, float %24342)
%24344 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%24345 = load float, float* %24344
%24346 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%24347 = load float, float* %24346
%24348 = call float @llvm.fmuladd.f32(float %24345, float %24347, float %24343)
%24349 = fcmp ogt float %24348, 0.000000e+00
br i1 %24349, label %24350, label %24351
24350: ; preds = %24225
store i32 0, i32* %7
br label %37477
24351: ; preds = %24225
store i32 1, i32* %7
br label %37477
24352: ; preds = %24096
%24353 = load float*, float** %12
%24354 = getelementptr inbounds float, float* %24353, i64 0
%24355 = load float, float* %24354
%24356 = load float*, float** %9
%24357 = getelementptr inbounds float, float* %24356, i64 0
%24358 = load float, float* %24357
%24359 = fsub float %24355, %24358
%24360 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %24359, float* %24360
%24361 = load float*, float** %12
%24362 = getelementptr inbounds float, float* %24361, i64 1
%24363 = load float, float* %24362
%24364 = load float*, float** %9
%24365 = getelementptr inbounds float, float* %24364, i64 1
%24366 = load float, float* %24365
%24367 = fsub float %24363, %24366
%24368 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %24367, float* %24368
%24369 = load float*, float** %12
%24370 = getelementptr inbounds float, float* %24369, i64 2
%24371 = load float, float* %24370
%24372 = load float*, float** %9
%24373 = getelementptr inbounds float, float* %24372, i64 2
%24374 = load float, float* %24373
%24375 = fsub float %24371, %24374
%24376 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %24375, float* %24376
%24377 = load float*, float** %8
%24378 = getelementptr inbounds float, float* %24377, i64 0
%24379 = load float, float* %24378
%24380 = load float*, float** %9
%24381 = getelementptr inbounds float, float* %24380, i64 0
%24382 = load float, float* %24381
%24383 = fsub float %24379, %24382
%24384 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %24383, float* %24384
%24385 = load float*, float** %8
%24386 = getelementptr inbounds float, float* %24385, i64 1
%24387 = load float, float* %24386
%24388 = load float*, float** %9
%24389 = getelementptr inbounds float, float* %24388, i64 1
%24390 = load float, float* %24389
%24391 = fsub float %24387, %24390
%24392 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %24391, float* %24392
%24393 = load float*, float** %8
%24394 = getelementptr inbounds float, float* %24393, i64 2
%24395 = load float, float* %24394
%24396 = load float*, float** %9
%24397 = getelementptr inbounds float, float* %24396, i64 2
%24398 = load float, float* %24397
%24399 = fsub float %24395, %24398
%24400 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %24399, float* %24400
%24401 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%24402 = load float, float* %24401
%24403 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%24404 = load float, float* %24403
%24405 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%24406 = load float, float* %24405
%24407 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%24408 = load float, float* %24407
%24409 = fmul float %24406, %24408
%24410 = fneg float %24409
%24411 = call float @llvm.fmuladd.f32(float %24402, float %24404, float %24410)
%24412 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %24411, float* %24412
%24413 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%24414 = load float, float* %24413
%24415 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%24416 = load float, float* %24415
%24417 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%24418 = load float, float* %24417
%24419 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%24420 = load float, float* %24419
%24421 = fmul float %24418, %24420
%24422 = fneg float %24421
%24423 = call float @llvm.fmuladd.f32(float %24414, float %24416, float %24422)
%24424 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %24423, float* %24424
%24425 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%24426 = load float, float* %24425
%24427 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%24428 = load float, float* %24427
%24429 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%24430 = load float, float* %24429
%24431 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%24432 = load float, float* %24431
%24433 = fmul float %24430, %24432
%24434 = fneg float %24433
%24435 = call float @llvm.fmuladd.f32(float %24426, float %24428, float %24434)
%24436 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %24435, float* %24436
%24437 = load float*, float** %13
%24438 = getelementptr inbounds float, float* %24437, i64 0
%24439 = load float, float* %24438
%24440 = load float*, float** %9
%24441 = getelementptr inbounds float, float* %24440, i64 0
%24442 = load float, float* %24441
%24443 = fsub float %24439, %24442
%24444 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %24443, float* %24444
%24445 = load float*, float** %13
%24446 = getelementptr inbounds float, float* %24445, i64 1
%24447 = load float, float* %24446
%24448 = load float*, float** %9
%24449 = getelementptr inbounds float, float* %24448, i64 1
%24450 = load float, float* %24449
%24451 = fsub float %24447, %24450
%24452 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %24451, float* %24452
%24453 = load float*, float** %13
%24454 = getelementptr inbounds float, float* %24453, i64 2
%24455 = load float, float* %24454
%24456 = load float*, float** %9
%24457 = getelementptr inbounds float, float* %24456, i64 2
%24458 = load float, float* %24457
%24459 = fsub float %24455, %24458
%24460 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %24459, float* %24460
%24461 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%24462 = load float, float* %24461
%24463 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%24464 = load float, float* %24463
%24465 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%24466 = load float, float* %24465
%24467 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%24468 = load float, float* %24467
%24469 = fmul float %24466, %24468
%24470 = call float @llvm.fmuladd.f32(float %24462, float %24464, float %24469)
%24471 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%24472 = load float, float* %24471
%24473 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%24474 = load float, float* %24473
%24475 = call float @llvm.fmuladd.f32(float %24472, float %24474, float %24470)
%24476 = fcmp ogt float %24475, 0.000000e+00
br i1 %24476, label %24477, label %24478
24477: ; preds = %24352
store i32 0, i32* %7
br label %37477
24478: ; preds = %24352
%24479 = load float*, float** %12
%24480 = getelementptr inbounds float, float* %24479, i64 0
%24481 = load float, float* %24480
%24482 = load float*, float** %8
%24483 = getelementptr inbounds float, float* %24482, i64 0
%24484 = load float, float* %24483
%24485 = fsub float %24481, %24484
%24486 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %24485, float* %24486
%24487 = load float*, float** %12
%24488 = getelementptr inbounds float, float* %24487, i64 1
%24489 = load float, float* %24488
%24490 = load float*, float** %8
%24491 = getelementptr inbounds float, float* %24490, i64 1
%24492 = load float, float* %24491
%24493 = fsub float %24489, %24492
%24494 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %24493, float* %24494
%24495 = load float*, float** %12
%24496 = getelementptr inbounds float, float* %24495, i64 2
%24497 = load float, float* %24496
%24498 = load float*, float** %8
%24499 = getelementptr inbounds float, float* %24498, i64 2
%24500 = load float, float* %24499
%24501 = fsub float %24497, %24500
%24502 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %24501, float* %24502
%24503 = load float*, float** %10
%24504 = getelementptr inbounds float, float* %24503, i64 0
%24505 = load float, float* %24504
%24506 = load float*, float** %8
%24507 = getelementptr inbounds float, float* %24506, i64 0
%24508 = load float, float* %24507
%24509 = fsub float %24505, %24508
%24510 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %24509, float* %24510
%24511 = load float*, float** %10
%24512 = getelementptr inbounds float, float* %24511, i64 1
%24513 = load float, float* %24512
%24514 = load float*, float** %8
%24515 = getelementptr inbounds float, float* %24514, i64 1
%24516 = load float, float* %24515
%24517 = fsub float %24513, %24516
%24518 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %24517, float* %24518
%24519 = load float*, float** %10
%24520 = getelementptr inbounds float, float* %24519, i64 2
%24521 = load float, float* %24520
%24522 = load float*, float** %8
%24523 = getelementptr inbounds float, float* %24522, i64 2
%24524 = load float, float* %24523
%24525 = fsub float %24521, %24524
%24526 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %24525, float* %24526
%24527 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%24528 = load float, float* %24527
%24529 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%24530 = load float, float* %24529
%24531 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%24532 = load float, float* %24531
%24533 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%24534 = load float, float* %24533
%24535 = fmul float %24532, %24534
%24536 = fneg float %24535
%24537 = call float @llvm.fmuladd.f32(float %24528, float %24530, float %24536)
%24538 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %24537, float* %24538
%24539 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%24540 = load float, float* %24539
%24541 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%24542 = load float, float* %24541
%24543 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%24544 = load float, float* %24543
%24545 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%24546 = load float, float* %24545
%24547 = fmul float %24544, %24546
%24548 = fneg float %24547
%24549 = call float @llvm.fmuladd.f32(float %24540, float %24542, float %24548)
%24550 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %24549, float* %24550
%24551 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%24552 = load float, float* %24551
%24553 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%24554 = load float, float* %24553
%24555 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%24556 = load float, float* %24555
%24557 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%24558 = load float, float* %24557
%24559 = fmul float %24556, %24558
%24560 = fneg float %24559
%24561 = call float @llvm.fmuladd.f32(float %24552, float %24554, float %24560)
%24562 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %24561, float* %24562
%24563 = load float*, float** %11
%24564 = getelementptr inbounds float, float* %24563, i64 0
%24565 = load float, float* %24564
%24566 = load float*, float** %8
%24567 = getelementptr inbounds float, float* %24566, i64 0
%24568 = load float, float* %24567
%24569 = fsub float %24565, %24568
%24570 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %24569, float* %24570
%24571 = load float*, float** %11
%24572 = getelementptr inbounds float, float* %24571, i64 1
%24573 = load float, float* %24572
%24574 = load float*, float** %8
%24575 = getelementptr inbounds float, float* %24574, i64 1
%24576 = load float, float* %24575
%24577 = fsub float %24573, %24576
%24578 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %24577, float* %24578
%24579 = load float*, float** %11
%24580 = getelementptr inbounds float, float* %24579, i64 2
%24581 = load float, float* %24580
%24582 = load float*, float** %8
%24583 = getelementptr inbounds float, float* %24582, i64 2
%24584 = load float, float* %24583
%24585 = fsub float %24581, %24584
%24586 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %24585, float* %24586
%24587 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%24588 = load float, float* %24587
%24589 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%24590 = load float, float* %24589
%24591 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%24592 = load float, float* %24591
%24593 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%24594 = load float, float* %24593
%24595 = fmul float %24592, %24594
%24596 = call float @llvm.fmuladd.f32(float %24588, float %24590, float %24595)
%24597 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%24598 = load float, float* %24597
%24599 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%24600 = load float, float* %24599
%24601 = call float @llvm.fmuladd.f32(float %24598, float %24600, float %24596)
%24602 = fcmp ogt float %24601, 0.000000e+00
br i1 %24602, label %24603, label %24604
24603: ; preds = %24478
store i32 0, i32* %7
br label %37477
24604: ; preds = %24478
store i32 1, i32* %7
br label %37477
24605: ; preds = %24093
%24606 = load float, float* %19
%24607 = fcmp ogt float %24606, 0.000000e+00
br i1 %24607, label %24608, label %24861
24608: ; preds = %24605
%24609 = load float*, float** %13
%24610 = getelementptr inbounds float, float* %24609, i64 0
%24611 = load float, float* %24610
%24612 = load float*, float** %9
%24613 = getelementptr inbounds float, float* %24612, i64 0
%24614 = load float, float* %24613
%24615 = fsub float %24611, %24614
%24616 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %24615, float* %24616
%24617 = load float*, float** %13
%24618 = getelementptr inbounds float, float* %24617, i64 1
%24619 = load float, float* %24618
%24620 = load float*, float** %9
%24621 = getelementptr inbounds float, float* %24620, i64 1
%24622 = load float, float* %24621
%24623 = fsub float %24619, %24622
%24624 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %24623, float* %24624
%24625 = load float*, float** %13
%24626 = getelementptr inbounds float, float* %24625, i64 2
%24627 = load float, float* %24626
%24628 = load float*, float** %9
%24629 = getelementptr inbounds float, float* %24628, i64 2
%24630 = load float, float* %24629
%24631 = fsub float %24627, %24630
%24632 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %24631, float* %24632
%24633 = load float*, float** %8
%24634 = getelementptr inbounds float, float* %24633, i64 0
%24635 = load float, float* %24634
%24636 = load float*, float** %9
%24637 = getelementptr inbounds float, float* %24636, i64 0
%24638 = load float, float* %24637
%24639 = fsub float %24635, %24638
%24640 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %24639, float* %24640
%24641 = load float*, float** %8
%24642 = getelementptr inbounds float, float* %24641, i64 1
%24643 = load float, float* %24642
%24644 = load float*, float** %9
%24645 = getelementptr inbounds float, float* %24644, i64 1
%24646 = load float, float* %24645
%24647 = fsub float %24643, %24646
%24648 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %24647, float* %24648
%24649 = load float*, float** %8
%24650 = getelementptr inbounds float, float* %24649, i64 2
%24651 = load float, float* %24650
%24652 = load float*, float** %9
%24653 = getelementptr inbounds float, float* %24652, i64 2
%24654 = load float, float* %24653
%24655 = fsub float %24651, %24654
%24656 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %24655, float* %24656
%24657 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%24658 = load float, float* %24657
%24659 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%24660 = load float, float* %24659
%24661 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%24662 = load float, float* %24661
%24663 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%24664 = load float, float* %24663
%24665 = fmul float %24662, %24664
%24666 = fneg float %24665
%24667 = call float @llvm.fmuladd.f32(float %24658, float %24660, float %24666)
%24668 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %24667, float* %24668
%24669 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%24670 = load float, float* %24669
%24671 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%24672 = load float, float* %24671
%24673 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%24674 = load float, float* %24673
%24675 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%24676 = load float, float* %24675
%24677 = fmul float %24674, %24676
%24678 = fneg float %24677
%24679 = call float @llvm.fmuladd.f32(float %24670, float %24672, float %24678)
%24680 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %24679, float* %24680
%24681 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%24682 = load float, float* %24681
%24683 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%24684 = load float, float* %24683
%24685 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%24686 = load float, float* %24685
%24687 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%24688 = load float, float* %24687
%24689 = fmul float %24686, %24688
%24690 = fneg float %24689
%24691 = call float @llvm.fmuladd.f32(float %24682, float %24684, float %24690)
%24692 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %24691, float* %24692
%24693 = load float*, float** %11
%24694 = getelementptr inbounds float, float* %24693, i64 0
%24695 = load float, float* %24694
%24696 = load float*, float** %9
%24697 = getelementptr inbounds float, float* %24696, i64 0
%24698 = load float, float* %24697
%24699 = fsub float %24695, %24698
%24700 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %24699, float* %24700
%24701 = load float*, float** %11
%24702 = getelementptr inbounds float, float* %24701, i64 1
%24703 = load float, float* %24702
%24704 = load float*, float** %9
%24705 = getelementptr inbounds float, float* %24704, i64 1
%24706 = load float, float* %24705
%24707 = fsub float %24703, %24706
%24708 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %24707, float* %24708
%24709 = load float*, float** %11
%24710 = getelementptr inbounds float, float* %24709, i64 2
%24711 = load float, float* %24710
%24712 = load float*, float** %9
%24713 = getelementptr inbounds float, float* %24712, i64 2
%24714 = load float, float* %24713
%24715 = fsub float %24711, %24714
%24716 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %24715, float* %24716
%24717 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%24718 = load float, float* %24717
%24719 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%24720 = load float, float* %24719
%24721 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%24722 = load float, float* %24721
%24723 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%24724 = load float, float* %24723
%24725 = fmul float %24722, %24724
%24726 = call float @llvm.fmuladd.f32(float %24718, float %24720, float %24725)
%24727 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%24728 = load float, float* %24727
%24729 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%24730 = load float, float* %24729
%24731 = call float @llvm.fmuladd.f32(float %24728, float %24730, float %24726)
%24732 = fcmp ogt float %24731, 0.000000e+00
br i1 %24732, label %24733, label %24734
24733: ; preds = %24608
store i32 0, i32* %7
br label %37477
24734: ; preds = %24608
%24735 = load float*, float** %13
%24736 = getelementptr inbounds float, float* %24735, i64 0
%24737 = load float, float* %24736
%24738 = load float*, float** %8
%24739 = getelementptr inbounds float, float* %24738, i64 0
%24740 = load float, float* %24739
%24741 = fsub float %24737, %24740
%24742 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %24741, float* %24742
%24743 = load float*, float** %13
%24744 = getelementptr inbounds float, float* %24743, i64 1
%24745 = load float, float* %24744
%24746 = load float*, float** %8
%24747 = getelementptr inbounds float, float* %24746, i64 1
%24748 = load float, float* %24747
%24749 = fsub float %24745, %24748
%24750 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %24749, float* %24750
%24751 = load float*, float** %13
%24752 = getelementptr inbounds float, float* %24751, i64 2
%24753 = load float, float* %24752
%24754 = load float*, float** %8
%24755 = getelementptr inbounds float, float* %24754, i64 2
%24756 = load float, float* %24755
%24757 = fsub float %24753, %24756
%24758 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %24757, float* %24758
%24759 = load float*, float** %10
%24760 = getelementptr inbounds float, float* %24759, i64 0
%24761 = load float, float* %24760
%24762 = load float*, float** %8
%24763 = getelementptr inbounds float, float* %24762, i64 0
%24764 = load float, float* %24763
%24765 = fsub float %24761, %24764
%24766 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %24765, float* %24766
%24767 = load float*, float** %10
%24768 = getelementptr inbounds float, float* %24767, i64 1
%24769 = load float, float* %24768
%24770 = load float*, float** %8
%24771 = getelementptr inbounds float, float* %24770, i64 1
%24772 = load float, float* %24771
%24773 = fsub float %24769, %24772
%24774 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %24773, float* %24774
%24775 = load float*, float** %10
%24776 = getelementptr inbounds float, float* %24775, i64 2
%24777 = load float, float* %24776
%24778 = load float*, float** %8
%24779 = getelementptr inbounds float, float* %24778, i64 2
%24780 = load float, float* %24779
%24781 = fsub float %24777, %24780
%24782 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %24781, float* %24782
%24783 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%24784 = load float, float* %24783
%24785 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%24786 = load float, float* %24785
%24787 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%24788 = load float, float* %24787
%24789 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%24790 = load float, float* %24789
%24791 = fmul float %24788, %24790
%24792 = fneg float %24791
%24793 = call float @llvm.fmuladd.f32(float %24784, float %24786, float %24792)
%24794 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %24793, float* %24794
%24795 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%24796 = load float, float* %24795
%24797 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%24798 = load float, float* %24797
%24799 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%24800 = load float, float* %24799
%24801 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%24802 = load float, float* %24801
%24803 = fmul float %24800, %24802
%24804 = fneg float %24803
%24805 = call float @llvm.fmuladd.f32(float %24796, float %24798, float %24804)
%24806 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %24805, float* %24806
%24807 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%24808 = load float, float* %24807
%24809 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%24810 = load float, float* %24809
%24811 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%24812 = load float, float* %24811
%24813 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%24814 = load float, float* %24813
%24815 = fmul float %24812, %24814
%24816 = fneg float %24815
%24817 = call float @llvm.fmuladd.f32(float %24808, float %24810, float %24816)
%24818 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %24817, float* %24818
%24819 = load float*, float** %12
%24820 = getelementptr inbounds float, float* %24819, i64 0
%24821 = load float, float* %24820
%24822 = load float*, float** %8
%24823 = getelementptr inbounds float, float* %24822, i64 0
%24824 = load float, float* %24823
%24825 = fsub float %24821, %24824
%24826 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %24825, float* %24826
%24827 = load float*, float** %12
%24828 = getelementptr inbounds float, float* %24827, i64 1
%24829 = load float, float* %24828
%24830 = load float*, float** %8
%24831 = getelementptr inbounds float, float* %24830, i64 1
%24832 = load float, float* %24831
%24833 = fsub float %24829, %24832
%24834 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %24833, float* %24834
%24835 = load float*, float** %12
%24836 = getelementptr inbounds float, float* %24835, i64 2
%24837 = load float, float* %24836
%24838 = load float*, float** %8
%24839 = getelementptr inbounds float, float* %24838, i64 2
%24840 = load float, float* %24839
%24841 = fsub float %24837, %24840
%24842 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %24841, float* %24842
%24843 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%24844 = load float, float* %24843
%24845 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%24846 = load float, float* %24845
%24847 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%24848 = load float, float* %24847
%24849 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%24850 = load float, float* %24849
%24851 = fmul float %24848, %24850
%24852 = call float @llvm.fmuladd.f32(float %24844, float %24846, float %24851)
%24853 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%24854 = load float, float* %24853
%24855 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%24856 = load float, float* %24855
%24857 = call float @llvm.fmuladd.f32(float %24854, float %24856, float %24852)
%24858 = fcmp ogt float %24857, 0.000000e+00
br i1 %24858, label %24859, label %24860
24859: ; preds = %24734
store i32 0, i32* %7
br label %37477
24860: ; preds = %24734
store i32 1, i32* %7
br label %37477
24861: ; preds = %24605
%24862 = load float, float* %19
%24863 = fcmp olt float %24862, 0.000000e+00
br i1 %24863, label %24864, label %25117
24864: ; preds = %24861
%24865 = load float*, float** %13
%24866 = getelementptr inbounds float, float* %24865, i64 0
%24867 = load float, float* %24866
%24868 = load float*, float** %10
%24869 = getelementptr inbounds float, float* %24868, i64 0
%24870 = load float, float* %24869
%24871 = fsub float %24867, %24870
%24872 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %24871, float* %24872
%24873 = load float*, float** %13
%24874 = getelementptr inbounds float, float* %24873, i64 1
%24875 = load float, float* %24874
%24876 = load float*, float** %10
%24877 = getelementptr inbounds float, float* %24876, i64 1
%24878 = load float, float* %24877
%24879 = fsub float %24875, %24878
%24880 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %24879, float* %24880
%24881 = load float*, float** %13
%24882 = getelementptr inbounds float, float* %24881, i64 2
%24883 = load float, float* %24882
%24884 = load float*, float** %10
%24885 = getelementptr inbounds float, float* %24884, i64 2
%24886 = load float, float* %24885
%24887 = fsub float %24883, %24886
%24888 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %24887, float* %24888
%24889 = load float*, float** %8
%24890 = getelementptr inbounds float, float* %24889, i64 0
%24891 = load float, float* %24890
%24892 = load float*, float** %10
%24893 = getelementptr inbounds float, float* %24892, i64 0
%24894 = load float, float* %24893
%24895 = fsub float %24891, %24894
%24896 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %24895, float* %24896
%24897 = load float*, float** %8
%24898 = getelementptr inbounds float, float* %24897, i64 1
%24899 = load float, float* %24898
%24900 = load float*, float** %10
%24901 = getelementptr inbounds float, float* %24900, i64 1
%24902 = load float, float* %24901
%24903 = fsub float %24899, %24902
%24904 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %24903, float* %24904
%24905 = load float*, float** %8
%24906 = getelementptr inbounds float, float* %24905, i64 2
%24907 = load float, float* %24906
%24908 = load float*, float** %10
%24909 = getelementptr inbounds float, float* %24908, i64 2
%24910 = load float, float* %24909
%24911 = fsub float %24907, %24910
%24912 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %24911, float* %24912
%24913 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%24914 = load float, float* %24913
%24915 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%24916 = load float, float* %24915
%24917 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%24918 = load float, float* %24917
%24919 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%24920 = load float, float* %24919
%24921 = fmul float %24918, %24920
%24922 = fneg float %24921
%24923 = call float @llvm.fmuladd.f32(float %24914, float %24916, float %24922)
%24924 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %24923, float* %24924
%24925 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%24926 = load float, float* %24925
%24927 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%24928 = load float, float* %24927
%24929 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%24930 = load float, float* %24929
%24931 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%24932 = load float, float* %24931
%24933 = fmul float %24930, %24932
%24934 = fneg float %24933
%24935 = call float @llvm.fmuladd.f32(float %24926, float %24928, float %24934)
%24936 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %24935, float* %24936
%24937 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%24938 = load float, float* %24937
%24939 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%24940 = load float, float* %24939
%24941 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%24942 = load float, float* %24941
%24943 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%24944 = load float, float* %24943
%24945 = fmul float %24942, %24944
%24946 = fneg float %24945
%24947 = call float @llvm.fmuladd.f32(float %24938, float %24940, float %24946)
%24948 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %24947, float* %24948
%24949 = load float*, float** %11
%24950 = getelementptr inbounds float, float* %24949, i64 0
%24951 = load float, float* %24950
%24952 = load float*, float** %10
%24953 = getelementptr inbounds float, float* %24952, i64 0
%24954 = load float, float* %24953
%24955 = fsub float %24951, %24954
%24956 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %24955, float* %24956
%24957 = load float*, float** %11
%24958 = getelementptr inbounds float, float* %24957, i64 1
%24959 = load float, float* %24958
%24960 = load float*, float** %10
%24961 = getelementptr inbounds float, float* %24960, i64 1
%24962 = load float, float* %24961
%24963 = fsub float %24959, %24962
%24964 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %24963, float* %24964
%24965 = load float*, float** %11
%24966 = getelementptr inbounds float, float* %24965, i64 2
%24967 = load float, float* %24966
%24968 = load float*, float** %10
%24969 = getelementptr inbounds float, float* %24968, i64 2
%24970 = load float, float* %24969
%24971 = fsub float %24967, %24970
%24972 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %24971, float* %24972
%24973 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%24974 = load float, float* %24973
%24975 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%24976 = load float, float* %24975
%24977 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%24978 = load float, float* %24977
%24979 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%24980 = load float, float* %24979
%24981 = fmul float %24978, %24980
%24982 = call float @llvm.fmuladd.f32(float %24974, float %24976, float %24981)
%24983 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%24984 = load float, float* %24983
%24985 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%24986 = load float, float* %24985
%24987 = call float @llvm.fmuladd.f32(float %24984, float %24986, float %24982)
%24988 = fcmp ogt float %24987, 0.000000e+00
br i1 %24988, label %24989, label %24990
24989: ; preds = %24864
store i32 0, i32* %7
br label %37477
24990: ; preds = %24864
%24991 = load float*, float** %13
%24992 = getelementptr inbounds float, float* %24991, i64 0
%24993 = load float, float* %24992
%24994 = load float*, float** %8
%24995 = getelementptr inbounds float, float* %24994, i64 0
%24996 = load float, float* %24995
%24997 = fsub float %24993, %24996
%24998 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %24997, float* %24998
%24999 = load float*, float** %13
%25000 = getelementptr inbounds float, float* %24999, i64 1
%25001 = load float, float* %25000
%25002 = load float*, float** %8
%25003 = getelementptr inbounds float, float* %25002, i64 1
%25004 = load float, float* %25003
%25005 = fsub float %25001, %25004
%25006 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %25005, float* %25006
%25007 = load float*, float** %13
%25008 = getelementptr inbounds float, float* %25007, i64 2
%25009 = load float, float* %25008
%25010 = load float*, float** %8
%25011 = getelementptr inbounds float, float* %25010, i64 2
%25012 = load float, float* %25011
%25013 = fsub float %25009, %25012
%25014 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %25013, float* %25014
%25015 = load float*, float** %9
%25016 = getelementptr inbounds float, float* %25015, i64 0
%25017 = load float, float* %25016
%25018 = load float*, float** %8
%25019 = getelementptr inbounds float, float* %25018, i64 0
%25020 = load float, float* %25019
%25021 = fsub float %25017, %25020
%25022 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %25021, float* %25022
%25023 = load float*, float** %9
%25024 = getelementptr inbounds float, float* %25023, i64 1
%25025 = load float, float* %25024
%25026 = load float*, float** %8
%25027 = getelementptr inbounds float, float* %25026, i64 1
%25028 = load float, float* %25027
%25029 = fsub float %25025, %25028
%25030 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %25029, float* %25030
%25031 = load float*, float** %9
%25032 = getelementptr inbounds float, float* %25031, i64 2
%25033 = load float, float* %25032
%25034 = load float*, float** %8
%25035 = getelementptr inbounds float, float* %25034, i64 2
%25036 = load float, float* %25035
%25037 = fsub float %25033, %25036
%25038 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %25037, float* %25038
%25039 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%25040 = load float, float* %25039
%25041 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%25042 = load float, float* %25041
%25043 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%25044 = load float, float* %25043
%25045 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%25046 = load float, float* %25045
%25047 = fmul float %25044, %25046
%25048 = fneg float %25047
%25049 = call float @llvm.fmuladd.f32(float %25040, float %25042, float %25048)
%25050 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %25049, float* %25050
%25051 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%25052 = load float, float* %25051
%25053 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%25054 = load float, float* %25053
%25055 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%25056 = load float, float* %25055
%25057 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%25058 = load float, float* %25057
%25059 = fmul float %25056, %25058
%25060 = fneg float %25059
%25061 = call float @llvm.fmuladd.f32(float %25052, float %25054, float %25060)
%25062 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %25061, float* %25062
%25063 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%25064 = load float, float* %25063
%25065 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%25066 = load float, float* %25065
%25067 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%25068 = load float, float* %25067
%25069 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%25070 = load float, float* %25069
%25071 = fmul float %25068, %25070
%25072 = fneg float %25071
%25073 = call float @llvm.fmuladd.f32(float %25064, float %25066, float %25072)
%25074 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %25073, float* %25074
%25075 = load float*, float** %12
%25076 = getelementptr inbounds float, float* %25075, i64 0
%25077 = load float, float* %25076
%25078 = load float*, float** %8
%25079 = getelementptr inbounds float, float* %25078, i64 0
%25080 = load float, float* %25079
%25081 = fsub float %25077, %25080
%25082 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %25081, float* %25082
%25083 = load float*, float** %12
%25084 = getelementptr inbounds float, float* %25083, i64 1
%25085 = load float, float* %25084
%25086 = load float*, float** %8
%25087 = getelementptr inbounds float, float* %25086, i64 1
%25088 = load float, float* %25087
%25089 = fsub float %25085, %25088
%25090 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %25089, float* %25090
%25091 = load float*, float** %12
%25092 = getelementptr inbounds float, float* %25091, i64 2
%25093 = load float, float* %25092
%25094 = load float*, float** %8
%25095 = getelementptr inbounds float, float* %25094, i64 2
%25096 = load float, float* %25095
%25097 = fsub float %25093, %25096
%25098 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %25097, float* %25098
%25099 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%25100 = load float, float* %25099
%25101 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%25102 = load float, float* %25101
%25103 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%25104 = load float, float* %25103
%25105 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%25106 = load float, float* %25105
%25107 = fmul float %25104, %25106
%25108 = call float @llvm.fmuladd.f32(float %25100, float %25102, float %25107)
%25109 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%25110 = load float, float* %25109
%25111 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%25112 = load float, float* %25111
%25113 = call float @llvm.fmuladd.f32(float %25110, float %25112, float %25108)
%25114 = fcmp ogt float %25113, 0.000000e+00
br i1 %25114, label %25115, label %25116
25115: ; preds = %24990
store i32 0, i32* %7
br label %37477
25116: ; preds = %24990
store i32 1, i32* %7
br label %37477
25117: ; preds = %24861
%25118 = load float*, float** %8
%25119 = load float*, float** %9
%25120 = load float*, float** %10
%25121 = load float*, float** %11
%25122 = load float*, float** %12
%25123 = load float*, float** %13
%25124 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%25125 = getelementptr inbounds [3 x float], [3 x float]* %23, i64 0, i64 0
%25126 = call i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...) bitcast (i32 (...)* @coplanar_tri_tri3d to i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...)*)(float* %25118, float* %25119, float* %25120, float* %25121, float* %25122, float* %25123, float* %25124, float* %25125)
store i32 %25126, i32* %7
br label %37477
25127: ; preds = %18957
%25128 = load float, float* %15
%25129 = fcmp ogt float %25128, 0.000000e+00
br i1 %25129, label %25130, label %31297
25130: ; preds = %25127
%25131 = load float, float* %16
%25132 = fcmp ogt float %25131, 0.000000e+00
br i1 %25132, label %25133, label %28215
25133: ; preds = %25130
%25134 = load float, float* %17
%25135 = fcmp ogt float %25134, 0.000000e+00
br i1 %25135, label %25136, label %25901
25136: ; preds = %25133
%25137 = load float, float* %19
%25138 = fcmp ogt float %25137, 0.000000e+00
br i1 %25138, label %25139, label %25392
25139: ; preds = %25136
%25140 = load float*, float** %12
%25141 = getelementptr inbounds float, float* %25140, i64 0
%25142 = load float, float* %25141
%25143 = load float*, float** %10
%25144 = getelementptr inbounds float, float* %25143, i64 0
%25145 = load float, float* %25144
%25146 = fsub float %25142, %25145
%25147 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %25146, float* %25147
%25148 = load float*, float** %12
%25149 = getelementptr inbounds float, float* %25148, i64 1
%25150 = load float, float* %25149
%25151 = load float*, float** %10
%25152 = getelementptr inbounds float, float* %25151, i64 1
%25153 = load float, float* %25152
%25154 = fsub float %25150, %25153
%25155 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %25154, float* %25155
%25156 = load float*, float** %12
%25157 = getelementptr inbounds float, float* %25156, i64 2
%25158 = load float, float* %25157
%25159 = load float*, float** %10
%25160 = getelementptr inbounds float, float* %25159, i64 2
%25161 = load float, float* %25160
%25162 = fsub float %25158, %25161
%25163 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %25162, float* %25163
%25164 = load float*, float** %8
%25165 = getelementptr inbounds float, float* %25164, i64 0
%25166 = load float, float* %25165
%25167 = load float*, float** %10
%25168 = getelementptr inbounds float, float* %25167, i64 0
%25169 = load float, float* %25168
%25170 = fsub float %25166, %25169
%25171 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %25170, float* %25171
%25172 = load float*, float** %8
%25173 = getelementptr inbounds float, float* %25172, i64 1
%25174 = load float, float* %25173
%25175 = load float*, float** %10
%25176 = getelementptr inbounds float, float* %25175, i64 1
%25177 = load float, float* %25176
%25178 = fsub float %25174, %25177
%25179 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %25178, float* %25179
%25180 = load float*, float** %8
%25181 = getelementptr inbounds float, float* %25180, i64 2
%25182 = load float, float* %25181
%25183 = load float*, float** %10
%25184 = getelementptr inbounds float, float* %25183, i64 2
%25185 = load float, float* %25184
%25186 = fsub float %25182, %25185
%25187 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %25186, float* %25187
%25188 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%25189 = load float, float* %25188
%25190 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%25191 = load float, float* %25190
%25192 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%25193 = load float, float* %25192
%25194 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%25195 = load float, float* %25194
%25196 = fmul float %25193, %25195
%25197 = fneg float %25196
%25198 = call float @llvm.fmuladd.f32(float %25189, float %25191, float %25197)
%25199 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %25198, float* %25199
%25200 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%25201 = load float, float* %25200
%25202 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%25203 = load float, float* %25202
%25204 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%25205 = load float, float* %25204
%25206 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%25207 = load float, float* %25206
%25208 = fmul float %25205, %25207
%25209 = fneg float %25208
%25210 = call float @llvm.fmuladd.f32(float %25201, float %25203, float %25209)
%25211 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %25210, float* %25211
%25212 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%25213 = load float, float* %25212
%25214 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%25215 = load float, float* %25214
%25216 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%25217 = load float, float* %25216
%25218 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%25219 = load float, float* %25218
%25220 = fmul float %25217, %25219
%25221 = fneg float %25220
%25222 = call float @llvm.fmuladd.f32(float %25213, float %25215, float %25221)
%25223 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %25222, float* %25223
%25224 = load float*, float** %11
%25225 = getelementptr inbounds float, float* %25224, i64 0
%25226 = load float, float* %25225
%25227 = load float*, float** %10
%25228 = getelementptr inbounds float, float* %25227, i64 0
%25229 = load float, float* %25228
%25230 = fsub float %25226, %25229
%25231 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %25230, float* %25231
%25232 = load float*, float** %11
%25233 = getelementptr inbounds float, float* %25232, i64 1
%25234 = load float, float* %25233
%25235 = load float*, float** %10
%25236 = getelementptr inbounds float, float* %25235, i64 1
%25237 = load float, float* %25236
%25238 = fsub float %25234, %25237
%25239 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %25238, float* %25239
%25240 = load float*, float** %11
%25241 = getelementptr inbounds float, float* %25240, i64 2
%25242 = load float, float* %25241
%25243 = load float*, float** %10
%25244 = getelementptr inbounds float, float* %25243, i64 2
%25245 = load float, float* %25244
%25246 = fsub float %25242, %25245
%25247 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %25246, float* %25247
%25248 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%25249 = load float, float* %25248
%25250 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%25251 = load float, float* %25250
%25252 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%25253 = load float, float* %25252
%25254 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%25255 = load float, float* %25254
%25256 = fmul float %25253, %25255
%25257 = call float @llvm.fmuladd.f32(float %25249, float %25251, float %25256)
%25258 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%25259 = load float, float* %25258
%25260 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%25261 = load float, float* %25260
%25262 = call float @llvm.fmuladd.f32(float %25259, float %25261, float %25257)
%25263 = fcmp ogt float %25262, 0.000000e+00
br i1 %25263, label %25264, label %25265
25264: ; preds = %25139
store i32 0, i32* %7
br label %37477
25265: ; preds = %25139
%25266 = load float*, float** %12
%25267 = getelementptr inbounds float, float* %25266, i64 0
%25268 = load float, float* %25267
%25269 = load float*, float** %8
%25270 = getelementptr inbounds float, float* %25269, i64 0
%25271 = load float, float* %25270
%25272 = fsub float %25268, %25271
%25273 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %25272, float* %25273
%25274 = load float*, float** %12
%25275 = getelementptr inbounds float, float* %25274, i64 1
%25276 = load float, float* %25275
%25277 = load float*, float** %8
%25278 = getelementptr inbounds float, float* %25277, i64 1
%25279 = load float, float* %25278
%25280 = fsub float %25276, %25279
%25281 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %25280, float* %25281
%25282 = load float*, float** %12
%25283 = getelementptr inbounds float, float* %25282, i64 2
%25284 = load float, float* %25283
%25285 = load float*, float** %8
%25286 = getelementptr inbounds float, float* %25285, i64 2
%25287 = load float, float* %25286
%25288 = fsub float %25284, %25287
%25289 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %25288, float* %25289
%25290 = load float*, float** %9
%25291 = getelementptr inbounds float, float* %25290, i64 0
%25292 = load float, float* %25291
%25293 = load float*, float** %8
%25294 = getelementptr inbounds float, float* %25293, i64 0
%25295 = load float, float* %25294
%25296 = fsub float %25292, %25295
%25297 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %25296, float* %25297
%25298 = load float*, float** %9
%25299 = getelementptr inbounds float, float* %25298, i64 1
%25300 = load float, float* %25299
%25301 = load float*, float** %8
%25302 = getelementptr inbounds float, float* %25301, i64 1
%25303 = load float, float* %25302
%25304 = fsub float %25300, %25303
%25305 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %25304, float* %25305
%25306 = load float*, float** %9
%25307 = getelementptr inbounds float, float* %25306, i64 2
%25308 = load float, float* %25307
%25309 = load float*, float** %8
%25310 = getelementptr inbounds float, float* %25309, i64 2
%25311 = load float, float* %25310
%25312 = fsub float %25308, %25311
%25313 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %25312, float* %25313
%25314 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%25315 = load float, float* %25314
%25316 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%25317 = load float, float* %25316
%25318 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%25319 = load float, float* %25318
%25320 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%25321 = load float, float* %25320
%25322 = fmul float %25319, %25321
%25323 = fneg float %25322
%25324 = call float @llvm.fmuladd.f32(float %25315, float %25317, float %25323)
%25325 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %25324, float* %25325
%25326 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%25327 = load float, float* %25326
%25328 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%25329 = load float, float* %25328
%25330 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%25331 = load float, float* %25330
%25332 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%25333 = load float, float* %25332
%25334 = fmul float %25331, %25333
%25335 = fneg float %25334
%25336 = call float @llvm.fmuladd.f32(float %25327, float %25329, float %25335)
%25337 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %25336, float* %25337
%25338 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%25339 = load float, float* %25338
%25340 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%25341 = load float, float* %25340
%25342 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%25343 = load float, float* %25342
%25344 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%25345 = load float, float* %25344
%25346 = fmul float %25343, %25345
%25347 = fneg float %25346
%25348 = call float @llvm.fmuladd.f32(float %25339, float %25341, float %25347)
%25349 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %25348, float* %25349
%25350 = load float*, float** %13
%25351 = getelementptr inbounds float, float* %25350, i64 0
%25352 = load float, float* %25351
%25353 = load float*, float** %8
%25354 = getelementptr inbounds float, float* %25353, i64 0
%25355 = load float, float* %25354
%25356 = fsub float %25352, %25355
%25357 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %25356, float* %25357
%25358 = load float*, float** %13
%25359 = getelementptr inbounds float, float* %25358, i64 1
%25360 = load float, float* %25359
%25361 = load float*, float** %8
%25362 = getelementptr inbounds float, float* %25361, i64 1
%25363 = load float, float* %25362
%25364 = fsub float %25360, %25363
%25365 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %25364, float* %25365
%25366 = load float*, float** %13
%25367 = getelementptr inbounds float, float* %25366, i64 2
%25368 = load float, float* %25367
%25369 = load float*, float** %8
%25370 = getelementptr inbounds float, float* %25369, i64 2
%25371 = load float, float* %25370
%25372 = fsub float %25368, %25371
%25373 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %25372, float* %25373
%25374 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%25375 = load float, float* %25374
%25376 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%25377 = load float, float* %25376
%25378 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%25379 = load float, float* %25378
%25380 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%25381 = load float, float* %25380
%25382 = fmul float %25379, %25381
%25383 = call float @llvm.fmuladd.f32(float %25375, float %25377, float %25382)
%25384 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%25385 = load float, float* %25384
%25386 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%25387 = load float, float* %25386
%25388 = call float @llvm.fmuladd.f32(float %25385, float %25387, float %25383)
%25389 = fcmp ogt float %25388, 0.000000e+00
br i1 %25389, label %25390, label %25391
25390: ; preds = %25265
store i32 0, i32* %7
br label %37477
25391: ; preds = %25265
store i32 1, i32* %7
br label %37477
25392: ; preds = %25136
%25393 = load float, float* %18
%25394 = fcmp ogt float %25393, 0.000000e+00
br i1 %25394, label %25395, label %25648
25395: ; preds = %25392
%25396 = load float*, float** %13
%25397 = getelementptr inbounds float, float* %25396, i64 0
%25398 = load float, float* %25397
%25399 = load float*, float** %10
%25400 = getelementptr inbounds float, float* %25399, i64 0
%25401 = load float, float* %25400
%25402 = fsub float %25398, %25401
%25403 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %25402, float* %25403
%25404 = load float*, float** %13
%25405 = getelementptr inbounds float, float* %25404, i64 1
%25406 = load float, float* %25405
%25407 = load float*, float** %10
%25408 = getelementptr inbounds float, float* %25407, i64 1
%25409 = load float, float* %25408
%25410 = fsub float %25406, %25409
%25411 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %25410, float* %25411
%25412 = load float*, float** %13
%25413 = getelementptr inbounds float, float* %25412, i64 2
%25414 = load float, float* %25413
%25415 = load float*, float** %10
%25416 = getelementptr inbounds float, float* %25415, i64 2
%25417 = load float, float* %25416
%25418 = fsub float %25414, %25417
%25419 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %25418, float* %25419
%25420 = load float*, float** %8
%25421 = getelementptr inbounds float, float* %25420, i64 0
%25422 = load float, float* %25421
%25423 = load float*, float** %10
%25424 = getelementptr inbounds float, float* %25423, i64 0
%25425 = load float, float* %25424
%25426 = fsub float %25422, %25425
%25427 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %25426, float* %25427
%25428 = load float*, float** %8
%25429 = getelementptr inbounds float, float* %25428, i64 1
%25430 = load float, float* %25429
%25431 = load float*, float** %10
%25432 = getelementptr inbounds float, float* %25431, i64 1
%25433 = load float, float* %25432
%25434 = fsub float %25430, %25433
%25435 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %25434, float* %25435
%25436 = load float*, float** %8
%25437 = getelementptr inbounds float, float* %25436, i64 2
%25438 = load float, float* %25437
%25439 = load float*, float** %10
%25440 = getelementptr inbounds float, float* %25439, i64 2
%25441 = load float, float* %25440
%25442 = fsub float %25438, %25441
%25443 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %25442, float* %25443
%25444 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%25445 = load float, float* %25444
%25446 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%25447 = load float, float* %25446
%25448 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%25449 = load float, float* %25448
%25450 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%25451 = load float, float* %25450
%25452 = fmul float %25449, %25451
%25453 = fneg float %25452
%25454 = call float @llvm.fmuladd.f32(float %25445, float %25447, float %25453)
%25455 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %25454, float* %25455
%25456 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%25457 = load float, float* %25456
%25458 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%25459 = load float, float* %25458
%25460 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%25461 = load float, float* %25460
%25462 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%25463 = load float, float* %25462
%25464 = fmul float %25461, %25463
%25465 = fneg float %25464
%25466 = call float @llvm.fmuladd.f32(float %25457, float %25459, float %25465)
%25467 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %25466, float* %25467
%25468 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%25469 = load float, float* %25468
%25470 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%25471 = load float, float* %25470
%25472 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%25473 = load float, float* %25472
%25474 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%25475 = load float, float* %25474
%25476 = fmul float %25473, %25475
%25477 = fneg float %25476
%25478 = call float @llvm.fmuladd.f32(float %25469, float %25471, float %25477)
%25479 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %25478, float* %25479
%25480 = load float*, float** %12
%25481 = getelementptr inbounds float, float* %25480, i64 0
%25482 = load float, float* %25481
%25483 = load float*, float** %10
%25484 = getelementptr inbounds float, float* %25483, i64 0
%25485 = load float, float* %25484
%25486 = fsub float %25482, %25485
%25487 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %25486, float* %25487
%25488 = load float*, float** %12
%25489 = getelementptr inbounds float, float* %25488, i64 1
%25490 = load float, float* %25489
%25491 = load float*, float** %10
%25492 = getelementptr inbounds float, float* %25491, i64 1
%25493 = load float, float* %25492
%25494 = fsub float %25490, %25493
%25495 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %25494, float* %25495
%25496 = load float*, float** %12
%25497 = getelementptr inbounds float, float* %25496, i64 2
%25498 = load float, float* %25497
%25499 = load float*, float** %10
%25500 = getelementptr inbounds float, float* %25499, i64 2
%25501 = load float, float* %25500
%25502 = fsub float %25498, %25501
%25503 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %25502, float* %25503
%25504 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%25505 = load float, float* %25504
%25506 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%25507 = load float, float* %25506
%25508 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%25509 = load float, float* %25508
%25510 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%25511 = load float, float* %25510
%25512 = fmul float %25509, %25511
%25513 = call float @llvm.fmuladd.f32(float %25505, float %25507, float %25512)
%25514 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%25515 = load float, float* %25514
%25516 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%25517 = load float, float* %25516
%25518 = call float @llvm.fmuladd.f32(float %25515, float %25517, float %25513)
%25519 = fcmp ogt float %25518, 0.000000e+00
br i1 %25519, label %25520, label %25521
25520: ; preds = %25395
store i32 0, i32* %7
br label %37477
25521: ; preds = %25395
%25522 = load float*, float** %13
%25523 = getelementptr inbounds float, float* %25522, i64 0
%25524 = load float, float* %25523
%25525 = load float*, float** %8
%25526 = getelementptr inbounds float, float* %25525, i64 0
%25527 = load float, float* %25526
%25528 = fsub float %25524, %25527
%25529 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %25528, float* %25529
%25530 = load float*, float** %13
%25531 = getelementptr inbounds float, float* %25530, i64 1
%25532 = load float, float* %25531
%25533 = load float*, float** %8
%25534 = getelementptr inbounds float, float* %25533, i64 1
%25535 = load float, float* %25534
%25536 = fsub float %25532, %25535
%25537 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %25536, float* %25537
%25538 = load float*, float** %13
%25539 = getelementptr inbounds float, float* %25538, i64 2
%25540 = load float, float* %25539
%25541 = load float*, float** %8
%25542 = getelementptr inbounds float, float* %25541, i64 2
%25543 = load float, float* %25542
%25544 = fsub float %25540, %25543
%25545 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %25544, float* %25545
%25546 = load float*, float** %9
%25547 = getelementptr inbounds float, float* %25546, i64 0
%25548 = load float, float* %25547
%25549 = load float*, float** %8
%25550 = getelementptr inbounds float, float* %25549, i64 0
%25551 = load float, float* %25550
%25552 = fsub float %25548, %25551
%25553 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %25552, float* %25553
%25554 = load float*, float** %9
%25555 = getelementptr inbounds float, float* %25554, i64 1
%25556 = load float, float* %25555
%25557 = load float*, float** %8
%25558 = getelementptr inbounds float, float* %25557, i64 1
%25559 = load float, float* %25558
%25560 = fsub float %25556, %25559
%25561 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %25560, float* %25561
%25562 = load float*, float** %9
%25563 = getelementptr inbounds float, float* %25562, i64 2
%25564 = load float, float* %25563
%25565 = load float*, float** %8
%25566 = getelementptr inbounds float, float* %25565, i64 2
%25567 = load float, float* %25566
%25568 = fsub float %25564, %25567
%25569 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %25568, float* %25569
%25570 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%25571 = load float, float* %25570
%25572 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%25573 = load float, float* %25572
%25574 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%25575 = load float, float* %25574
%25576 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%25577 = load float, float* %25576
%25578 = fmul float %25575, %25577
%25579 = fneg float %25578
%25580 = call float @llvm.fmuladd.f32(float %25571, float %25573, float %25579)
%25581 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %25580, float* %25581
%25582 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%25583 = load float, float* %25582
%25584 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%25585 = load float, float* %25584
%25586 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%25587 = load float, float* %25586
%25588 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%25589 = load float, float* %25588
%25590 = fmul float %25587, %25589
%25591 = fneg float %25590
%25592 = call float @llvm.fmuladd.f32(float %25583, float %25585, float %25591)
%25593 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %25592, float* %25593
%25594 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%25595 = load float, float* %25594
%25596 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%25597 = load float, float* %25596
%25598 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%25599 = load float, float* %25598
%25600 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%25601 = load float, float* %25600
%25602 = fmul float %25599, %25601
%25603 = fneg float %25602
%25604 = call float @llvm.fmuladd.f32(float %25595, float %25597, float %25603)
%25605 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %25604, float* %25605
%25606 = load float*, float** %11
%25607 = getelementptr inbounds float, float* %25606, i64 0
%25608 = load float, float* %25607
%25609 = load float*, float** %8
%25610 = getelementptr inbounds float, float* %25609, i64 0
%25611 = load float, float* %25610
%25612 = fsub float %25608, %25611
%25613 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %25612, float* %25613
%25614 = load float*, float** %11
%25615 = getelementptr inbounds float, float* %25614, i64 1
%25616 = load float, float* %25615
%25617 = load float*, float** %8
%25618 = getelementptr inbounds float, float* %25617, i64 1
%25619 = load float, float* %25618
%25620 = fsub float %25616, %25619
%25621 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %25620, float* %25621
%25622 = load float*, float** %11
%25623 = getelementptr inbounds float, float* %25622, i64 2
%25624 = load float, float* %25623
%25625 = load float*, float** %8
%25626 = getelementptr inbounds float, float* %25625, i64 2
%25627 = load float, float* %25626
%25628 = fsub float %25624, %25627
%25629 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %25628, float* %25629
%25630 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%25631 = load float, float* %25630
%25632 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%25633 = load float, float* %25632
%25634 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%25635 = load float, float* %25634
%25636 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%25637 = load float, float* %25636
%25638 = fmul float %25635, %25637
%25639 = call float @llvm.fmuladd.f32(float %25631, float %25633, float %25638)
%25640 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%25641 = load float, float* %25640
%25642 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%25643 = load float, float* %25642
%25644 = call float @llvm.fmuladd.f32(float %25641, float %25643, float %25639)
%25645 = fcmp ogt float %25644, 0.000000e+00
br i1 %25645, label %25646, label %25647
25646: ; preds = %25521
store i32 0, i32* %7
br label %37477
25647: ; preds = %25521
store i32 1, i32* %7
br label %37477
25648: ; preds = %25392
%25649 = load float*, float** %11
%25650 = getelementptr inbounds float, float* %25649, i64 0
%25651 = load float, float* %25650
%25652 = load float*, float** %9
%25653 = getelementptr inbounds float, float* %25652, i64 0
%25654 = load float, float* %25653
%25655 = fsub float %25651, %25654
%25656 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %25655, float* %25656
%25657 = load float*, float** %11
%25658 = getelementptr inbounds float, float* %25657, i64 1
%25659 = load float, float* %25658
%25660 = load float*, float** %9
%25661 = getelementptr inbounds float, float* %25660, i64 1
%25662 = load float, float* %25661
%25663 = fsub float %25659, %25662
%25664 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %25663, float* %25664
%25665 = load float*, float** %11
%25666 = getelementptr inbounds float, float* %25665, i64 2
%25667 = load float, float* %25666
%25668 = load float*, float** %9
%25669 = getelementptr inbounds float, float* %25668, i64 2
%25670 = load float, float* %25669
%25671 = fsub float %25667, %25670
%25672 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %25671, float* %25672
%25673 = load float*, float** %8
%25674 = getelementptr inbounds float, float* %25673, i64 0
%25675 = load float, float* %25674
%25676 = load float*, float** %9
%25677 = getelementptr inbounds float, float* %25676, i64 0
%25678 = load float, float* %25677
%25679 = fsub float %25675, %25678
%25680 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %25679, float* %25680
%25681 = load float*, float** %8
%25682 = getelementptr inbounds float, float* %25681, i64 1
%25683 = load float, float* %25682
%25684 = load float*, float** %9
%25685 = getelementptr inbounds float, float* %25684, i64 1
%25686 = load float, float* %25685
%25687 = fsub float %25683, %25686
%25688 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %25687, float* %25688
%25689 = load float*, float** %8
%25690 = getelementptr inbounds float, float* %25689, i64 2
%25691 = load float, float* %25690
%25692 = load float*, float** %9
%25693 = getelementptr inbounds float, float* %25692, i64 2
%25694 = load float, float* %25693
%25695 = fsub float %25691, %25694
%25696 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %25695, float* %25696
%25697 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%25698 = load float, float* %25697
%25699 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%25700 = load float, float* %25699
%25701 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%25702 = load float, float* %25701
%25703 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%25704 = load float, float* %25703
%25705 = fmul float %25702, %25704
%25706 = fneg float %25705
%25707 = call float @llvm.fmuladd.f32(float %25698, float %25700, float %25706)
%25708 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %25707, float* %25708
%25709 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%25710 = load float, float* %25709
%25711 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%25712 = load float, float* %25711
%25713 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%25714 = load float, float* %25713
%25715 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%25716 = load float, float* %25715
%25717 = fmul float %25714, %25716
%25718 = fneg float %25717
%25719 = call float @llvm.fmuladd.f32(float %25710, float %25712, float %25718)
%25720 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %25719, float* %25720
%25721 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%25722 = load float, float* %25721
%25723 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%25724 = load float, float* %25723
%25725 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%25726 = load float, float* %25725
%25727 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%25728 = load float, float* %25727
%25729 = fmul float %25726, %25728
%25730 = fneg float %25729
%25731 = call float @llvm.fmuladd.f32(float %25722, float %25724, float %25730)
%25732 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %25731, float* %25732
%25733 = load float*, float** %13
%25734 = getelementptr inbounds float, float* %25733, i64 0
%25735 = load float, float* %25734
%25736 = load float*, float** %9
%25737 = getelementptr inbounds float, float* %25736, i64 0
%25738 = load float, float* %25737
%25739 = fsub float %25735, %25738
%25740 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %25739, float* %25740
%25741 = load float*, float** %13
%25742 = getelementptr inbounds float, float* %25741, i64 1
%25743 = load float, float* %25742
%25744 = load float*, float** %9
%25745 = getelementptr inbounds float, float* %25744, i64 1
%25746 = load float, float* %25745
%25747 = fsub float %25743, %25746
%25748 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %25747, float* %25748
%25749 = load float*, float** %13
%25750 = getelementptr inbounds float, float* %25749, i64 2
%25751 = load float, float* %25750
%25752 = load float*, float** %9
%25753 = getelementptr inbounds float, float* %25752, i64 2
%25754 = load float, float* %25753
%25755 = fsub float %25751, %25754
%25756 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %25755, float* %25756
%25757 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%25758 = load float, float* %25757
%25759 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%25760 = load float, float* %25759
%25761 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%25762 = load float, float* %25761
%25763 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%25764 = load float, float* %25763
%25765 = fmul float %25762, %25764
%25766 = call float @llvm.fmuladd.f32(float %25758, float %25760, float %25765)
%25767 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%25768 = load float, float* %25767
%25769 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%25770 = load float, float* %25769
%25771 = call float @llvm.fmuladd.f32(float %25768, float %25770, float %25766)
%25772 = fcmp ogt float %25771, 0.000000e+00
br i1 %25772, label %25773, label %25774
25773: ; preds = %25648
store i32 0, i32* %7
br label %37477
25774: ; preds = %25648
%25775 = load float*, float** %11
%25776 = getelementptr inbounds float, float* %25775, i64 0
%25777 = load float, float* %25776
%25778 = load float*, float** %8
%25779 = getelementptr inbounds float, float* %25778, i64 0
%25780 = load float, float* %25779
%25781 = fsub float %25777, %25780
%25782 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %25781, float* %25782
%25783 = load float*, float** %11
%25784 = getelementptr inbounds float, float* %25783, i64 1
%25785 = load float, float* %25784
%25786 = load float*, float** %8
%25787 = getelementptr inbounds float, float* %25786, i64 1
%25788 = load float, float* %25787
%25789 = fsub float %25785, %25788
%25790 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %25789, float* %25790
%25791 = load float*, float** %11
%25792 = getelementptr inbounds float, float* %25791, i64 2
%25793 = load float, float* %25792
%25794 = load float*, float** %8
%25795 = getelementptr inbounds float, float* %25794, i64 2
%25796 = load float, float* %25795
%25797 = fsub float %25793, %25796
%25798 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %25797, float* %25798
%25799 = load float*, float** %10
%25800 = getelementptr inbounds float, float* %25799, i64 0
%25801 = load float, float* %25800
%25802 = load float*, float** %8
%25803 = getelementptr inbounds float, float* %25802, i64 0
%25804 = load float, float* %25803
%25805 = fsub float %25801, %25804
%25806 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %25805, float* %25806
%25807 = load float*, float** %10
%25808 = getelementptr inbounds float, float* %25807, i64 1
%25809 = load float, float* %25808
%25810 = load float*, float** %8
%25811 = getelementptr inbounds float, float* %25810, i64 1
%25812 = load float, float* %25811
%25813 = fsub float %25809, %25812
%25814 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %25813, float* %25814
%25815 = load float*, float** %10
%25816 = getelementptr inbounds float, float* %25815, i64 2
%25817 = load float, float* %25816
%25818 = load float*, float** %8
%25819 = getelementptr inbounds float, float* %25818, i64 2
%25820 = load float, float* %25819
%25821 = fsub float %25817, %25820
%25822 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %25821, float* %25822
%25823 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%25824 = load float, float* %25823
%25825 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%25826 = load float, float* %25825
%25827 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%25828 = load float, float* %25827
%25829 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%25830 = load float, float* %25829
%25831 = fmul float %25828, %25830
%25832 = fneg float %25831
%25833 = call float @llvm.fmuladd.f32(float %25824, float %25826, float %25832)
%25834 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %25833, float* %25834
%25835 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%25836 = load float, float* %25835
%25837 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%25838 = load float, float* %25837
%25839 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%25840 = load float, float* %25839
%25841 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%25842 = load float, float* %25841
%25843 = fmul float %25840, %25842
%25844 = fneg float %25843
%25845 = call float @llvm.fmuladd.f32(float %25836, float %25838, float %25844)
%25846 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %25845, float* %25846
%25847 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%25848 = load float, float* %25847
%25849 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%25850 = load float, float* %25849
%25851 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%25852 = load float, float* %25851
%25853 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%25854 = load float, float* %25853
%25855 = fmul float %25852, %25854
%25856 = fneg float %25855
%25857 = call float @llvm.fmuladd.f32(float %25848, float %25850, float %25856)
%25858 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %25857, float* %25858
%25859 = load float*, float** %12
%25860 = getelementptr inbounds float, float* %25859, i64 0
%25861 = load float, float* %25860
%25862 = load float*, float** %8
%25863 = getelementptr inbounds float, float* %25862, i64 0
%25864 = load float, float* %25863
%25865 = fsub float %25861, %25864
%25866 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %25865, float* %25866
%25867 = load float*, float** %12
%25868 = getelementptr inbounds float, float* %25867, i64 1
%25869 = load float, float* %25868
%25870 = load float*, float** %8
%25871 = getelementptr inbounds float, float* %25870, i64 1
%25872 = load float, float* %25871
%25873 = fsub float %25869, %25872
%25874 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %25873, float* %25874
%25875 = load float*, float** %12
%25876 = getelementptr inbounds float, float* %25875, i64 2
%25877 = load float, float* %25876
%25878 = load float*, float** %8
%25879 = getelementptr inbounds float, float* %25878, i64 2
%25880 = load float, float* %25879
%25881 = fsub float %25877, %25880
%25882 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %25881, float* %25882
%25883 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%25884 = load float, float* %25883
%25885 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%25886 = load float, float* %25885
%25887 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%25888 = load float, float* %25887
%25889 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%25890 = load float, float* %25889
%25891 = fmul float %25888, %25890
%25892 = call float @llvm.fmuladd.f32(float %25884, float %25886, float %25891)
%25893 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%25894 = load float, float* %25893
%25895 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%25896 = load float, float* %25895
%25897 = call float @llvm.fmuladd.f32(float %25894, float %25896, float %25892)
%25898 = fcmp ogt float %25897, 0.000000e+00
br i1 %25898, label %25899, label %25900
25899: ; preds = %25774
store i32 0, i32* %7
br label %37477
25900: ; preds = %25774
store i32 1, i32* %7
br label %37477
25901: ; preds = %25133
%25902 = load float, float* %17
%25903 = fcmp olt float %25902, 0.000000e+00
br i1 %25903, label %25904, label %26669
25904: ; preds = %25901
%25905 = load float, float* %19
%25906 = fcmp olt float %25905, 0.000000e+00
br i1 %25906, label %25907, label %26160
25907: ; preds = %25904
%25908 = load float*, float** %12
%25909 = getelementptr inbounds float, float* %25908, i64 0
%25910 = load float, float* %25909
%25911 = load float*, float** %9
%25912 = getelementptr inbounds float, float* %25911, i64 0
%25913 = load float, float* %25912
%25914 = fsub float %25910, %25913
%25915 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %25914, float* %25915
%25916 = load float*, float** %12
%25917 = getelementptr inbounds float, float* %25916, i64 1
%25918 = load float, float* %25917
%25919 = load float*, float** %9
%25920 = getelementptr inbounds float, float* %25919, i64 1
%25921 = load float, float* %25920
%25922 = fsub float %25918, %25921
%25923 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %25922, float* %25923
%25924 = load float*, float** %12
%25925 = getelementptr inbounds float, float* %25924, i64 2
%25926 = load float, float* %25925
%25927 = load float*, float** %9
%25928 = getelementptr inbounds float, float* %25927, i64 2
%25929 = load float, float* %25928
%25930 = fsub float %25926, %25929
%25931 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %25930, float* %25931
%25932 = load float*, float** %8
%25933 = getelementptr inbounds float, float* %25932, i64 0
%25934 = load float, float* %25933
%25935 = load float*, float** %9
%25936 = getelementptr inbounds float, float* %25935, i64 0
%25937 = load float, float* %25936
%25938 = fsub float %25934, %25937
%25939 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %25938, float* %25939
%25940 = load float*, float** %8
%25941 = getelementptr inbounds float, float* %25940, i64 1
%25942 = load float, float* %25941
%25943 = load float*, float** %9
%25944 = getelementptr inbounds float, float* %25943, i64 1
%25945 = load float, float* %25944
%25946 = fsub float %25942, %25945
%25947 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %25946, float* %25947
%25948 = load float*, float** %8
%25949 = getelementptr inbounds float, float* %25948, i64 2
%25950 = load float, float* %25949
%25951 = load float*, float** %9
%25952 = getelementptr inbounds float, float* %25951, i64 2
%25953 = load float, float* %25952
%25954 = fsub float %25950, %25953
%25955 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %25954, float* %25955
%25956 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%25957 = load float, float* %25956
%25958 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%25959 = load float, float* %25958
%25960 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%25961 = load float, float* %25960
%25962 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%25963 = load float, float* %25962
%25964 = fmul float %25961, %25963
%25965 = fneg float %25964
%25966 = call float @llvm.fmuladd.f32(float %25957, float %25959, float %25965)
%25967 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %25966, float* %25967
%25968 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%25969 = load float, float* %25968
%25970 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%25971 = load float, float* %25970
%25972 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%25973 = load float, float* %25972
%25974 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%25975 = load float, float* %25974
%25976 = fmul float %25973, %25975
%25977 = fneg float %25976
%25978 = call float @llvm.fmuladd.f32(float %25969, float %25971, float %25977)
%25979 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %25978, float* %25979
%25980 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%25981 = load float, float* %25980
%25982 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%25983 = load float, float* %25982
%25984 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%25985 = load float, float* %25984
%25986 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%25987 = load float, float* %25986
%25988 = fmul float %25985, %25987
%25989 = fneg float %25988
%25990 = call float @llvm.fmuladd.f32(float %25981, float %25983, float %25989)
%25991 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %25990, float* %25991
%25992 = load float*, float** %11
%25993 = getelementptr inbounds float, float* %25992, i64 0
%25994 = load float, float* %25993
%25995 = load float*, float** %9
%25996 = getelementptr inbounds float, float* %25995, i64 0
%25997 = load float, float* %25996
%25998 = fsub float %25994, %25997
%25999 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %25998, float* %25999
%26000 = load float*, float** %11
%26001 = getelementptr inbounds float, float* %26000, i64 1
%26002 = load float, float* %26001
%26003 = load float*, float** %9
%26004 = getelementptr inbounds float, float* %26003, i64 1
%26005 = load float, float* %26004
%26006 = fsub float %26002, %26005
%26007 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %26006, float* %26007
%26008 = load float*, float** %11
%26009 = getelementptr inbounds float, float* %26008, i64 2
%26010 = load float, float* %26009
%26011 = load float*, float** %9
%26012 = getelementptr inbounds float, float* %26011, i64 2
%26013 = load float, float* %26012
%26014 = fsub float %26010, %26013
%26015 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %26014, float* %26015
%26016 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%26017 = load float, float* %26016
%26018 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%26019 = load float, float* %26018
%26020 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%26021 = load float, float* %26020
%26022 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%26023 = load float, float* %26022
%26024 = fmul float %26021, %26023
%26025 = call float @llvm.fmuladd.f32(float %26017, float %26019, float %26024)
%26026 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%26027 = load float, float* %26026
%26028 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%26029 = load float, float* %26028
%26030 = call float @llvm.fmuladd.f32(float %26027, float %26029, float %26025)
%26031 = fcmp ogt float %26030, 0.000000e+00
br i1 %26031, label %26032, label %26033
26032: ; preds = %25907
store i32 0, i32* %7
br label %37477
26033: ; preds = %25907
%26034 = load float*, float** %12
%26035 = getelementptr inbounds float, float* %26034, i64 0
%26036 = load float, float* %26035
%26037 = load float*, float** %8
%26038 = getelementptr inbounds float, float* %26037, i64 0
%26039 = load float, float* %26038
%26040 = fsub float %26036, %26039
%26041 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %26040, float* %26041
%26042 = load float*, float** %12
%26043 = getelementptr inbounds float, float* %26042, i64 1
%26044 = load float, float* %26043
%26045 = load float*, float** %8
%26046 = getelementptr inbounds float, float* %26045, i64 1
%26047 = load float, float* %26046
%26048 = fsub float %26044, %26047
%26049 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %26048, float* %26049
%26050 = load float*, float** %12
%26051 = getelementptr inbounds float, float* %26050, i64 2
%26052 = load float, float* %26051
%26053 = load float*, float** %8
%26054 = getelementptr inbounds float, float* %26053, i64 2
%26055 = load float, float* %26054
%26056 = fsub float %26052, %26055
%26057 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %26056, float* %26057
%26058 = load float*, float** %10
%26059 = getelementptr inbounds float, float* %26058, i64 0
%26060 = load float, float* %26059
%26061 = load float*, float** %8
%26062 = getelementptr inbounds float, float* %26061, i64 0
%26063 = load float, float* %26062
%26064 = fsub float %26060, %26063
%26065 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %26064, float* %26065
%26066 = load float*, float** %10
%26067 = getelementptr inbounds float, float* %26066, i64 1
%26068 = load float, float* %26067
%26069 = load float*, float** %8
%26070 = getelementptr inbounds float, float* %26069, i64 1
%26071 = load float, float* %26070
%26072 = fsub float %26068, %26071
%26073 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %26072, float* %26073
%26074 = load float*, float** %10
%26075 = getelementptr inbounds float, float* %26074, i64 2
%26076 = load float, float* %26075
%26077 = load float*, float** %8
%26078 = getelementptr inbounds float, float* %26077, i64 2
%26079 = load float, float* %26078
%26080 = fsub float %26076, %26079
%26081 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %26080, float* %26081
%26082 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%26083 = load float, float* %26082
%26084 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%26085 = load float, float* %26084
%26086 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%26087 = load float, float* %26086
%26088 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%26089 = load float, float* %26088
%26090 = fmul float %26087, %26089
%26091 = fneg float %26090
%26092 = call float @llvm.fmuladd.f32(float %26083, float %26085, float %26091)
%26093 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %26092, float* %26093
%26094 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%26095 = load float, float* %26094
%26096 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%26097 = load float, float* %26096
%26098 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%26099 = load float, float* %26098
%26100 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%26101 = load float, float* %26100
%26102 = fmul float %26099, %26101
%26103 = fneg float %26102
%26104 = call float @llvm.fmuladd.f32(float %26095, float %26097, float %26103)
%26105 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %26104, float* %26105
%26106 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%26107 = load float, float* %26106
%26108 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%26109 = load float, float* %26108
%26110 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%26111 = load float, float* %26110
%26112 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%26113 = load float, float* %26112
%26114 = fmul float %26111, %26113
%26115 = fneg float %26114
%26116 = call float @llvm.fmuladd.f32(float %26107, float %26109, float %26115)
%26117 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %26116, float* %26117
%26118 = load float*, float** %13
%26119 = getelementptr inbounds float, float* %26118, i64 0
%26120 = load float, float* %26119
%26121 = load float*, float** %8
%26122 = getelementptr inbounds float, float* %26121, i64 0
%26123 = load float, float* %26122
%26124 = fsub float %26120, %26123
%26125 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %26124, float* %26125
%26126 = load float*, float** %13
%26127 = getelementptr inbounds float, float* %26126, i64 1
%26128 = load float, float* %26127
%26129 = load float*, float** %8
%26130 = getelementptr inbounds float, float* %26129, i64 1
%26131 = load float, float* %26130
%26132 = fsub float %26128, %26131
%26133 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %26132, float* %26133
%26134 = load float*, float** %13
%26135 = getelementptr inbounds float, float* %26134, i64 2
%26136 = load float, float* %26135
%26137 = load float*, float** %8
%26138 = getelementptr inbounds float, float* %26137, i64 2
%26139 = load float, float* %26138
%26140 = fsub float %26136, %26139
%26141 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %26140, float* %26141
%26142 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%26143 = load float, float* %26142
%26144 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%26145 = load float, float* %26144
%26146 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%26147 = load float, float* %26146
%26148 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%26149 = load float, float* %26148
%26150 = fmul float %26147, %26149
%26151 = call float @llvm.fmuladd.f32(float %26143, float %26145, float %26150)
%26152 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%26153 = load float, float* %26152
%26154 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%26155 = load float, float* %26154
%26156 = call float @llvm.fmuladd.f32(float %26153, float %26155, float %26151)
%26157 = fcmp ogt float %26156, 0.000000e+00
br i1 %26157, label %26158, label %26159
26158: ; preds = %26033
store i32 0, i32* %7
br label %37477
26159: ; preds = %26033
store i32 1, i32* %7
br label %37477
26160: ; preds = %25904
%26161 = load float, float* %18
%26162 = fcmp olt float %26161, 0.000000e+00
br i1 %26162, label %26163, label %26416
26163: ; preds = %26160
%26164 = load float*, float** %13
%26165 = getelementptr inbounds float, float* %26164, i64 0
%26166 = load float, float* %26165
%26167 = load float*, float** %9
%26168 = getelementptr inbounds float, float* %26167, i64 0
%26169 = load float, float* %26168
%26170 = fsub float %26166, %26169
%26171 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %26170, float* %26171
%26172 = load float*, float** %13
%26173 = getelementptr inbounds float, float* %26172, i64 1
%26174 = load float, float* %26173
%26175 = load float*, float** %9
%26176 = getelementptr inbounds float, float* %26175, i64 1
%26177 = load float, float* %26176
%26178 = fsub float %26174, %26177
%26179 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %26178, float* %26179
%26180 = load float*, float** %13
%26181 = getelementptr inbounds float, float* %26180, i64 2
%26182 = load float, float* %26181
%26183 = load float*, float** %9
%26184 = getelementptr inbounds float, float* %26183, i64 2
%26185 = load float, float* %26184
%26186 = fsub float %26182, %26185
%26187 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %26186, float* %26187
%26188 = load float*, float** %8
%26189 = getelementptr inbounds float, float* %26188, i64 0
%26190 = load float, float* %26189
%26191 = load float*, float** %9
%26192 = getelementptr inbounds float, float* %26191, i64 0
%26193 = load float, float* %26192
%26194 = fsub float %26190, %26193
%26195 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %26194, float* %26195
%26196 = load float*, float** %8
%26197 = getelementptr inbounds float, float* %26196, i64 1
%26198 = load float, float* %26197
%26199 = load float*, float** %9
%26200 = getelementptr inbounds float, float* %26199, i64 1
%26201 = load float, float* %26200
%26202 = fsub float %26198, %26201
%26203 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %26202, float* %26203
%26204 = load float*, float** %8
%26205 = getelementptr inbounds float, float* %26204, i64 2
%26206 = load float, float* %26205
%26207 = load float*, float** %9
%26208 = getelementptr inbounds float, float* %26207, i64 2
%26209 = load float, float* %26208
%26210 = fsub float %26206, %26209
%26211 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %26210, float* %26211
%26212 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%26213 = load float, float* %26212
%26214 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%26215 = load float, float* %26214
%26216 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%26217 = load float, float* %26216
%26218 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%26219 = load float, float* %26218
%26220 = fmul float %26217, %26219
%26221 = fneg float %26220
%26222 = call float @llvm.fmuladd.f32(float %26213, float %26215, float %26221)
%26223 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %26222, float* %26223
%26224 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%26225 = load float, float* %26224
%26226 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%26227 = load float, float* %26226
%26228 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%26229 = load float, float* %26228
%26230 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%26231 = load float, float* %26230
%26232 = fmul float %26229, %26231
%26233 = fneg float %26232
%26234 = call float @llvm.fmuladd.f32(float %26225, float %26227, float %26233)
%26235 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %26234, float* %26235
%26236 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%26237 = load float, float* %26236
%26238 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%26239 = load float, float* %26238
%26240 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%26241 = load float, float* %26240
%26242 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%26243 = load float, float* %26242
%26244 = fmul float %26241, %26243
%26245 = fneg float %26244
%26246 = call float @llvm.fmuladd.f32(float %26237, float %26239, float %26245)
%26247 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %26246, float* %26247
%26248 = load float*, float** %12
%26249 = getelementptr inbounds float, float* %26248, i64 0
%26250 = load float, float* %26249
%26251 = load float*, float** %9
%26252 = getelementptr inbounds float, float* %26251, i64 0
%26253 = load float, float* %26252
%26254 = fsub float %26250, %26253
%26255 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %26254, float* %26255
%26256 = load float*, float** %12
%26257 = getelementptr inbounds float, float* %26256, i64 1
%26258 = load float, float* %26257
%26259 = load float*, float** %9
%26260 = getelementptr inbounds float, float* %26259, i64 1
%26261 = load float, float* %26260
%26262 = fsub float %26258, %26261
%26263 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %26262, float* %26263
%26264 = load float*, float** %12
%26265 = getelementptr inbounds float, float* %26264, i64 2
%26266 = load float, float* %26265
%26267 = load float*, float** %9
%26268 = getelementptr inbounds float, float* %26267, i64 2
%26269 = load float, float* %26268
%26270 = fsub float %26266, %26269
%26271 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %26270, float* %26271
%26272 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%26273 = load float, float* %26272
%26274 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%26275 = load float, float* %26274
%26276 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%26277 = load float, float* %26276
%26278 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%26279 = load float, float* %26278
%26280 = fmul float %26277, %26279
%26281 = call float @llvm.fmuladd.f32(float %26273, float %26275, float %26280)
%26282 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%26283 = load float, float* %26282
%26284 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%26285 = load float, float* %26284
%26286 = call float @llvm.fmuladd.f32(float %26283, float %26285, float %26281)
%26287 = fcmp ogt float %26286, 0.000000e+00
br i1 %26287, label %26288, label %26289
26288: ; preds = %26163
store i32 0, i32* %7
br label %37477
26289: ; preds = %26163
%26290 = load float*, float** %13
%26291 = getelementptr inbounds float, float* %26290, i64 0
%26292 = load float, float* %26291
%26293 = load float*, float** %8
%26294 = getelementptr inbounds float, float* %26293, i64 0
%26295 = load float, float* %26294
%26296 = fsub float %26292, %26295
%26297 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %26296, float* %26297
%26298 = load float*, float** %13
%26299 = getelementptr inbounds float, float* %26298, i64 1
%26300 = load float, float* %26299
%26301 = load float*, float** %8
%26302 = getelementptr inbounds float, float* %26301, i64 1
%26303 = load float, float* %26302
%26304 = fsub float %26300, %26303
%26305 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %26304, float* %26305
%26306 = load float*, float** %13
%26307 = getelementptr inbounds float, float* %26306, i64 2
%26308 = load float, float* %26307
%26309 = load float*, float** %8
%26310 = getelementptr inbounds float, float* %26309, i64 2
%26311 = load float, float* %26310
%26312 = fsub float %26308, %26311
%26313 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %26312, float* %26313
%26314 = load float*, float** %10
%26315 = getelementptr inbounds float, float* %26314, i64 0
%26316 = load float, float* %26315
%26317 = load float*, float** %8
%26318 = getelementptr inbounds float, float* %26317, i64 0
%26319 = load float, float* %26318
%26320 = fsub float %26316, %26319
%26321 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %26320, float* %26321
%26322 = load float*, float** %10
%26323 = getelementptr inbounds float, float* %26322, i64 1
%26324 = load float, float* %26323
%26325 = load float*, float** %8
%26326 = getelementptr inbounds float, float* %26325, i64 1
%26327 = load float, float* %26326
%26328 = fsub float %26324, %26327
%26329 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %26328, float* %26329
%26330 = load float*, float** %10
%26331 = getelementptr inbounds float, float* %26330, i64 2
%26332 = load float, float* %26331
%26333 = load float*, float** %8
%26334 = getelementptr inbounds float, float* %26333, i64 2
%26335 = load float, float* %26334
%26336 = fsub float %26332, %26335
%26337 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %26336, float* %26337
%26338 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%26339 = load float, float* %26338
%26340 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%26341 = load float, float* %26340
%26342 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%26343 = load float, float* %26342
%26344 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%26345 = load float, float* %26344
%26346 = fmul float %26343, %26345
%26347 = fneg float %26346
%26348 = call float @llvm.fmuladd.f32(float %26339, float %26341, float %26347)
%26349 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %26348, float* %26349
%26350 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%26351 = load float, float* %26350
%26352 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%26353 = load float, float* %26352
%26354 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%26355 = load float, float* %26354
%26356 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%26357 = load float, float* %26356
%26358 = fmul float %26355, %26357
%26359 = fneg float %26358
%26360 = call float @llvm.fmuladd.f32(float %26351, float %26353, float %26359)
%26361 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %26360, float* %26361
%26362 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%26363 = load float, float* %26362
%26364 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%26365 = load float, float* %26364
%26366 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%26367 = load float, float* %26366
%26368 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%26369 = load float, float* %26368
%26370 = fmul float %26367, %26369
%26371 = fneg float %26370
%26372 = call float @llvm.fmuladd.f32(float %26363, float %26365, float %26371)
%26373 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %26372, float* %26373
%26374 = load float*, float** %11
%26375 = getelementptr inbounds float, float* %26374, i64 0
%26376 = load float, float* %26375
%26377 = load float*, float** %8
%26378 = getelementptr inbounds float, float* %26377, i64 0
%26379 = load float, float* %26378
%26380 = fsub float %26376, %26379
%26381 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %26380, float* %26381
%26382 = load float*, float** %11
%26383 = getelementptr inbounds float, float* %26382, i64 1
%26384 = load float, float* %26383
%26385 = load float*, float** %8
%26386 = getelementptr inbounds float, float* %26385, i64 1
%26387 = load float, float* %26386
%26388 = fsub float %26384, %26387
%26389 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %26388, float* %26389
%26390 = load float*, float** %11
%26391 = getelementptr inbounds float, float* %26390, i64 2
%26392 = load float, float* %26391
%26393 = load float*, float** %8
%26394 = getelementptr inbounds float, float* %26393, i64 2
%26395 = load float, float* %26394
%26396 = fsub float %26392, %26395
%26397 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %26396, float* %26397
%26398 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%26399 = load float, float* %26398
%26400 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%26401 = load float, float* %26400
%26402 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%26403 = load float, float* %26402
%26404 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%26405 = load float, float* %26404
%26406 = fmul float %26403, %26405
%26407 = call float @llvm.fmuladd.f32(float %26399, float %26401, float %26406)
%26408 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%26409 = load float, float* %26408
%26410 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%26411 = load float, float* %26410
%26412 = call float @llvm.fmuladd.f32(float %26409, float %26411, float %26407)
%26413 = fcmp ogt float %26412, 0.000000e+00
br i1 %26413, label %26414, label %26415
26414: ; preds = %26289
store i32 0, i32* %7
br label %37477
26415: ; preds = %26289
store i32 1, i32* %7
br label %37477
26416: ; preds = %26160
%26417 = load float*, float** %11
%26418 = getelementptr inbounds float, float* %26417, i64 0
%26419 = load float, float* %26418
%26420 = load float*, float** %10
%26421 = getelementptr inbounds float, float* %26420, i64 0
%26422 = load float, float* %26421
%26423 = fsub float %26419, %26422
%26424 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %26423, float* %26424
%26425 = load float*, float** %11
%26426 = getelementptr inbounds float, float* %26425, i64 1
%26427 = load float, float* %26426
%26428 = load float*, float** %10
%26429 = getelementptr inbounds float, float* %26428, i64 1
%26430 = load float, float* %26429
%26431 = fsub float %26427, %26430
%26432 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %26431, float* %26432
%26433 = load float*, float** %11
%26434 = getelementptr inbounds float, float* %26433, i64 2
%26435 = load float, float* %26434
%26436 = load float*, float** %10
%26437 = getelementptr inbounds float, float* %26436, i64 2
%26438 = load float, float* %26437
%26439 = fsub float %26435, %26438
%26440 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %26439, float* %26440
%26441 = load float*, float** %8
%26442 = getelementptr inbounds float, float* %26441, i64 0
%26443 = load float, float* %26442
%26444 = load float*, float** %10
%26445 = getelementptr inbounds float, float* %26444, i64 0
%26446 = load float, float* %26445
%26447 = fsub float %26443, %26446
%26448 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %26447, float* %26448
%26449 = load float*, float** %8
%26450 = getelementptr inbounds float, float* %26449, i64 1
%26451 = load float, float* %26450
%26452 = load float*, float** %10
%26453 = getelementptr inbounds float, float* %26452, i64 1
%26454 = load float, float* %26453
%26455 = fsub float %26451, %26454
%26456 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %26455, float* %26456
%26457 = load float*, float** %8
%26458 = getelementptr inbounds float, float* %26457, i64 2
%26459 = load float, float* %26458
%26460 = load float*, float** %10
%26461 = getelementptr inbounds float, float* %26460, i64 2
%26462 = load float, float* %26461
%26463 = fsub float %26459, %26462
%26464 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %26463, float* %26464
%26465 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%26466 = load float, float* %26465
%26467 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%26468 = load float, float* %26467
%26469 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%26470 = load float, float* %26469
%26471 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%26472 = load float, float* %26471
%26473 = fmul float %26470, %26472
%26474 = fneg float %26473
%26475 = call float @llvm.fmuladd.f32(float %26466, float %26468, float %26474)
%26476 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %26475, float* %26476
%26477 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%26478 = load float, float* %26477
%26479 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%26480 = load float, float* %26479
%26481 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%26482 = load float, float* %26481
%26483 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%26484 = load float, float* %26483
%26485 = fmul float %26482, %26484
%26486 = fneg float %26485
%26487 = call float @llvm.fmuladd.f32(float %26478, float %26480, float %26486)
%26488 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %26487, float* %26488
%26489 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%26490 = load float, float* %26489
%26491 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%26492 = load float, float* %26491
%26493 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%26494 = load float, float* %26493
%26495 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%26496 = load float, float* %26495
%26497 = fmul float %26494, %26496
%26498 = fneg float %26497
%26499 = call float @llvm.fmuladd.f32(float %26490, float %26492, float %26498)
%26500 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %26499, float* %26500
%26501 = load float*, float** %13
%26502 = getelementptr inbounds float, float* %26501, i64 0
%26503 = load float, float* %26502
%26504 = load float*, float** %10
%26505 = getelementptr inbounds float, float* %26504, i64 0
%26506 = load float, float* %26505
%26507 = fsub float %26503, %26506
%26508 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %26507, float* %26508
%26509 = load float*, float** %13
%26510 = getelementptr inbounds float, float* %26509, i64 1
%26511 = load float, float* %26510
%26512 = load float*, float** %10
%26513 = getelementptr inbounds float, float* %26512, i64 1
%26514 = load float, float* %26513
%26515 = fsub float %26511, %26514
%26516 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %26515, float* %26516
%26517 = load float*, float** %13
%26518 = getelementptr inbounds float, float* %26517, i64 2
%26519 = load float, float* %26518
%26520 = load float*, float** %10
%26521 = getelementptr inbounds float, float* %26520, i64 2
%26522 = load float, float* %26521
%26523 = fsub float %26519, %26522
%26524 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %26523, float* %26524
%26525 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%26526 = load float, float* %26525
%26527 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%26528 = load float, float* %26527
%26529 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%26530 = load float, float* %26529
%26531 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%26532 = load float, float* %26531
%26533 = fmul float %26530, %26532
%26534 = call float @llvm.fmuladd.f32(float %26526, float %26528, float %26533)
%26535 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%26536 = load float, float* %26535
%26537 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%26538 = load float, float* %26537
%26539 = call float @llvm.fmuladd.f32(float %26536, float %26538, float %26534)
%26540 = fcmp ogt float %26539, 0.000000e+00
br i1 %26540, label %26541, label %26542
26541: ; preds = %26416
store i32 0, i32* %7
br label %37477
26542: ; preds = %26416
%26543 = load float*, float** %11
%26544 = getelementptr inbounds float, float* %26543, i64 0
%26545 = load float, float* %26544
%26546 = load float*, float** %8
%26547 = getelementptr inbounds float, float* %26546, i64 0
%26548 = load float, float* %26547
%26549 = fsub float %26545, %26548
%26550 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %26549, float* %26550
%26551 = load float*, float** %11
%26552 = getelementptr inbounds float, float* %26551, i64 1
%26553 = load float, float* %26552
%26554 = load float*, float** %8
%26555 = getelementptr inbounds float, float* %26554, i64 1
%26556 = load float, float* %26555
%26557 = fsub float %26553, %26556
%26558 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %26557, float* %26558
%26559 = load float*, float** %11
%26560 = getelementptr inbounds float, float* %26559, i64 2
%26561 = load float, float* %26560
%26562 = load float*, float** %8
%26563 = getelementptr inbounds float, float* %26562, i64 2
%26564 = load float, float* %26563
%26565 = fsub float %26561, %26564
%26566 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %26565, float* %26566
%26567 = load float*, float** %9
%26568 = getelementptr inbounds float, float* %26567, i64 0
%26569 = load float, float* %26568
%26570 = load float*, float** %8
%26571 = getelementptr inbounds float, float* %26570, i64 0
%26572 = load float, float* %26571
%26573 = fsub float %26569, %26572
%26574 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %26573, float* %26574
%26575 = load float*, float** %9
%26576 = getelementptr inbounds float, float* %26575, i64 1
%26577 = load float, float* %26576
%26578 = load float*, float** %8
%26579 = getelementptr inbounds float, float* %26578, i64 1
%26580 = load float, float* %26579
%26581 = fsub float %26577, %26580
%26582 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %26581, float* %26582
%26583 = load float*, float** %9
%26584 = getelementptr inbounds float, float* %26583, i64 2
%26585 = load float, float* %26584
%26586 = load float*, float** %8
%26587 = getelementptr inbounds float, float* %26586, i64 2
%26588 = load float, float* %26587
%26589 = fsub float %26585, %26588
%26590 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %26589, float* %26590
%26591 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%26592 = load float, float* %26591
%26593 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%26594 = load float, float* %26593
%26595 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%26596 = load float, float* %26595
%26597 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%26598 = load float, float* %26597
%26599 = fmul float %26596, %26598
%26600 = fneg float %26599
%26601 = call float @llvm.fmuladd.f32(float %26592, float %26594, float %26600)
%26602 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %26601, float* %26602
%26603 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%26604 = load float, float* %26603
%26605 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%26606 = load float, float* %26605
%26607 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%26608 = load float, float* %26607
%26609 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%26610 = load float, float* %26609
%26611 = fmul float %26608, %26610
%26612 = fneg float %26611
%26613 = call float @llvm.fmuladd.f32(float %26604, float %26606, float %26612)
%26614 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %26613, float* %26614
%26615 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%26616 = load float, float* %26615
%26617 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%26618 = load float, float* %26617
%26619 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%26620 = load float, float* %26619
%26621 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%26622 = load float, float* %26621
%26623 = fmul float %26620, %26622
%26624 = fneg float %26623
%26625 = call float @llvm.fmuladd.f32(float %26616, float %26618, float %26624)
%26626 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %26625, float* %26626
%26627 = load float*, float** %12
%26628 = getelementptr inbounds float, float* %26627, i64 0
%26629 = load float, float* %26628
%26630 = load float*, float** %8
%26631 = getelementptr inbounds float, float* %26630, i64 0
%26632 = load float, float* %26631
%26633 = fsub float %26629, %26632
%26634 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %26633, float* %26634
%26635 = load float*, float** %12
%26636 = getelementptr inbounds float, float* %26635, i64 1
%26637 = load float, float* %26636
%26638 = load float*, float** %8
%26639 = getelementptr inbounds float, float* %26638, i64 1
%26640 = load float, float* %26639
%26641 = fsub float %26637, %26640
%26642 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %26641, float* %26642
%26643 = load float*, float** %12
%26644 = getelementptr inbounds float, float* %26643, i64 2
%26645 = load float, float* %26644
%26646 = load float*, float** %8
%26647 = getelementptr inbounds float, float* %26646, i64 2
%26648 = load float, float* %26647
%26649 = fsub float %26645, %26648
%26650 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %26649, float* %26650
%26651 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%26652 = load float, float* %26651
%26653 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%26654 = load float, float* %26653
%26655 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%26656 = load float, float* %26655
%26657 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%26658 = load float, float* %26657
%26659 = fmul float %26656, %26658
%26660 = call float @llvm.fmuladd.f32(float %26652, float %26654, float %26659)
%26661 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%26662 = load float, float* %26661
%26663 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%26664 = load float, float* %26663
%26665 = call float @llvm.fmuladd.f32(float %26662, float %26664, float %26660)
%26666 = fcmp ogt float %26665, 0.000000e+00
br i1 %26666, label %26667, label %26668
26667: ; preds = %26542
store i32 0, i32* %7
br label %37477
26668: ; preds = %26542
store i32 1, i32* %7
br label %37477
26669: ; preds = %25901
%26670 = load float, float* %19
%26671 = fcmp olt float %26670, 0.000000e+00
br i1 %26671, label %26672, label %27181
26672: ; preds = %26669
%26673 = load float, float* %18
%26674 = fcmp oge float %26673, 0.000000e+00
br i1 %26674, label %26675, label %26928
26675: ; preds = %26672
%26676 = load float*, float** %13
%26677 = getelementptr inbounds float, float* %26676, i64 0
%26678 = load float, float* %26677
%26679 = load float*, float** %10
%26680 = getelementptr inbounds float, float* %26679, i64 0
%26681 = load float, float* %26680
%26682 = fsub float %26678, %26681
%26683 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %26682, float* %26683
%26684 = load float*, float** %13
%26685 = getelementptr inbounds float, float* %26684, i64 1
%26686 = load float, float* %26685
%26687 = load float*, float** %10
%26688 = getelementptr inbounds float, float* %26687, i64 1
%26689 = load float, float* %26688
%26690 = fsub float %26686, %26689
%26691 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %26690, float* %26691
%26692 = load float*, float** %13
%26693 = getelementptr inbounds float, float* %26692, i64 2
%26694 = load float, float* %26693
%26695 = load float*, float** %10
%26696 = getelementptr inbounds float, float* %26695, i64 2
%26697 = load float, float* %26696
%26698 = fsub float %26694, %26697
%26699 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %26698, float* %26699
%26700 = load float*, float** %8
%26701 = getelementptr inbounds float, float* %26700, i64 0
%26702 = load float, float* %26701
%26703 = load float*, float** %10
%26704 = getelementptr inbounds float, float* %26703, i64 0
%26705 = load float, float* %26704
%26706 = fsub float %26702, %26705
%26707 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %26706, float* %26707
%26708 = load float*, float** %8
%26709 = getelementptr inbounds float, float* %26708, i64 1
%26710 = load float, float* %26709
%26711 = load float*, float** %10
%26712 = getelementptr inbounds float, float* %26711, i64 1
%26713 = load float, float* %26712
%26714 = fsub float %26710, %26713
%26715 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %26714, float* %26715
%26716 = load float*, float** %8
%26717 = getelementptr inbounds float, float* %26716, i64 2
%26718 = load float, float* %26717
%26719 = load float*, float** %10
%26720 = getelementptr inbounds float, float* %26719, i64 2
%26721 = load float, float* %26720
%26722 = fsub float %26718, %26721
%26723 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %26722, float* %26723
%26724 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%26725 = load float, float* %26724
%26726 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%26727 = load float, float* %26726
%26728 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%26729 = load float, float* %26728
%26730 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%26731 = load float, float* %26730
%26732 = fmul float %26729, %26731
%26733 = fneg float %26732
%26734 = call float @llvm.fmuladd.f32(float %26725, float %26727, float %26733)
%26735 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %26734, float* %26735
%26736 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%26737 = load float, float* %26736
%26738 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%26739 = load float, float* %26738
%26740 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%26741 = load float, float* %26740
%26742 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%26743 = load float, float* %26742
%26744 = fmul float %26741, %26743
%26745 = fneg float %26744
%26746 = call float @llvm.fmuladd.f32(float %26737, float %26739, float %26745)
%26747 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %26746, float* %26747
%26748 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%26749 = load float, float* %26748
%26750 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%26751 = load float, float* %26750
%26752 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%26753 = load float, float* %26752
%26754 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%26755 = load float, float* %26754
%26756 = fmul float %26753, %26755
%26757 = fneg float %26756
%26758 = call float @llvm.fmuladd.f32(float %26749, float %26751, float %26757)
%26759 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %26758, float* %26759
%26760 = load float*, float** %12
%26761 = getelementptr inbounds float, float* %26760, i64 0
%26762 = load float, float* %26761
%26763 = load float*, float** %10
%26764 = getelementptr inbounds float, float* %26763, i64 0
%26765 = load float, float* %26764
%26766 = fsub float %26762, %26765
%26767 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %26766, float* %26767
%26768 = load float*, float** %12
%26769 = getelementptr inbounds float, float* %26768, i64 1
%26770 = load float, float* %26769
%26771 = load float*, float** %10
%26772 = getelementptr inbounds float, float* %26771, i64 1
%26773 = load float, float* %26772
%26774 = fsub float %26770, %26773
%26775 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %26774, float* %26775
%26776 = load float*, float** %12
%26777 = getelementptr inbounds float, float* %26776, i64 2
%26778 = load float, float* %26777
%26779 = load float*, float** %10
%26780 = getelementptr inbounds float, float* %26779, i64 2
%26781 = load float, float* %26780
%26782 = fsub float %26778, %26781
%26783 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %26782, float* %26783
%26784 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%26785 = load float, float* %26784
%26786 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%26787 = load float, float* %26786
%26788 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%26789 = load float, float* %26788
%26790 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%26791 = load float, float* %26790
%26792 = fmul float %26789, %26791
%26793 = call float @llvm.fmuladd.f32(float %26785, float %26787, float %26792)
%26794 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%26795 = load float, float* %26794
%26796 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%26797 = load float, float* %26796
%26798 = call float @llvm.fmuladd.f32(float %26795, float %26797, float %26793)
%26799 = fcmp ogt float %26798, 0.000000e+00
br i1 %26799, label %26800, label %26801
26800: ; preds = %26675
store i32 0, i32* %7
br label %37477
26801: ; preds = %26675
%26802 = load float*, float** %13
%26803 = getelementptr inbounds float, float* %26802, i64 0
%26804 = load float, float* %26803
%26805 = load float*, float** %8
%26806 = getelementptr inbounds float, float* %26805, i64 0
%26807 = load float, float* %26806
%26808 = fsub float %26804, %26807
%26809 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %26808, float* %26809
%26810 = load float*, float** %13
%26811 = getelementptr inbounds float, float* %26810, i64 1
%26812 = load float, float* %26811
%26813 = load float*, float** %8
%26814 = getelementptr inbounds float, float* %26813, i64 1
%26815 = load float, float* %26814
%26816 = fsub float %26812, %26815
%26817 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %26816, float* %26817
%26818 = load float*, float** %13
%26819 = getelementptr inbounds float, float* %26818, i64 2
%26820 = load float, float* %26819
%26821 = load float*, float** %8
%26822 = getelementptr inbounds float, float* %26821, i64 2
%26823 = load float, float* %26822
%26824 = fsub float %26820, %26823
%26825 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %26824, float* %26825
%26826 = load float*, float** %9
%26827 = getelementptr inbounds float, float* %26826, i64 0
%26828 = load float, float* %26827
%26829 = load float*, float** %8
%26830 = getelementptr inbounds float, float* %26829, i64 0
%26831 = load float, float* %26830
%26832 = fsub float %26828, %26831
%26833 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %26832, float* %26833
%26834 = load float*, float** %9
%26835 = getelementptr inbounds float, float* %26834, i64 1
%26836 = load float, float* %26835
%26837 = load float*, float** %8
%26838 = getelementptr inbounds float, float* %26837, i64 1
%26839 = load float, float* %26838
%26840 = fsub float %26836, %26839
%26841 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %26840, float* %26841
%26842 = load float*, float** %9
%26843 = getelementptr inbounds float, float* %26842, i64 2
%26844 = load float, float* %26843
%26845 = load float*, float** %8
%26846 = getelementptr inbounds float, float* %26845, i64 2
%26847 = load float, float* %26846
%26848 = fsub float %26844, %26847
%26849 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %26848, float* %26849
%26850 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%26851 = load float, float* %26850
%26852 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%26853 = load float, float* %26852
%26854 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%26855 = load float, float* %26854
%26856 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%26857 = load float, float* %26856
%26858 = fmul float %26855, %26857
%26859 = fneg float %26858
%26860 = call float @llvm.fmuladd.f32(float %26851, float %26853, float %26859)
%26861 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %26860, float* %26861
%26862 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%26863 = load float, float* %26862
%26864 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%26865 = load float, float* %26864
%26866 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%26867 = load float, float* %26866
%26868 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%26869 = load float, float* %26868
%26870 = fmul float %26867, %26869
%26871 = fneg float %26870
%26872 = call float @llvm.fmuladd.f32(float %26863, float %26865, float %26871)
%26873 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %26872, float* %26873
%26874 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%26875 = load float, float* %26874
%26876 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%26877 = load float, float* %26876
%26878 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%26879 = load float, float* %26878
%26880 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%26881 = load float, float* %26880
%26882 = fmul float %26879, %26881
%26883 = fneg float %26882
%26884 = call float @llvm.fmuladd.f32(float %26875, float %26877, float %26883)
%26885 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %26884, float* %26885
%26886 = load float*, float** %11
%26887 = getelementptr inbounds float, float* %26886, i64 0
%26888 = load float, float* %26887
%26889 = load float*, float** %8
%26890 = getelementptr inbounds float, float* %26889, i64 0
%26891 = load float, float* %26890
%26892 = fsub float %26888, %26891
%26893 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %26892, float* %26893
%26894 = load float*, float** %11
%26895 = getelementptr inbounds float, float* %26894, i64 1
%26896 = load float, float* %26895
%26897 = load float*, float** %8
%26898 = getelementptr inbounds float, float* %26897, i64 1
%26899 = load float, float* %26898
%26900 = fsub float %26896, %26899
%26901 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %26900, float* %26901
%26902 = load float*, float** %11
%26903 = getelementptr inbounds float, float* %26902, i64 2
%26904 = load float, float* %26903
%26905 = load float*, float** %8
%26906 = getelementptr inbounds float, float* %26905, i64 2
%26907 = load float, float* %26906
%26908 = fsub float %26904, %26907
%26909 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %26908, float* %26909
%26910 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%26911 = load float, float* %26910
%26912 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%26913 = load float, float* %26912
%26914 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%26915 = load float, float* %26914
%26916 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%26917 = load float, float* %26916
%26918 = fmul float %26915, %26917
%26919 = call float @llvm.fmuladd.f32(float %26911, float %26913, float %26918)
%26920 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%26921 = load float, float* %26920
%26922 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%26923 = load float, float* %26922
%26924 = call float @llvm.fmuladd.f32(float %26921, float %26923, float %26919)
%26925 = fcmp ogt float %26924, 0.000000e+00
br i1 %26925, label %26926, label %26927
26926: ; preds = %26801
store i32 0, i32* %7
br label %37477
26927: ; preds = %26801
store i32 1, i32* %7
br label %37477
26928: ; preds = %26672
%26929 = load float*, float** %11
%26930 = getelementptr inbounds float, float* %26929, i64 0
%26931 = load float, float* %26930
%26932 = load float*, float** %9
%26933 = getelementptr inbounds float, float* %26932, i64 0
%26934 = load float, float* %26933
%26935 = fsub float %26931, %26934
%26936 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %26935, float* %26936
%26937 = load float*, float** %11
%26938 = getelementptr inbounds float, float* %26937, i64 1
%26939 = load float, float* %26938
%26940 = load float*, float** %9
%26941 = getelementptr inbounds float, float* %26940, i64 1
%26942 = load float, float* %26941
%26943 = fsub float %26939, %26942
%26944 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %26943, float* %26944
%26945 = load float*, float** %11
%26946 = getelementptr inbounds float, float* %26945, i64 2
%26947 = load float, float* %26946
%26948 = load float*, float** %9
%26949 = getelementptr inbounds float, float* %26948, i64 2
%26950 = load float, float* %26949
%26951 = fsub float %26947, %26950
%26952 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %26951, float* %26952
%26953 = load float*, float** %8
%26954 = getelementptr inbounds float, float* %26953, i64 0
%26955 = load float, float* %26954
%26956 = load float*, float** %9
%26957 = getelementptr inbounds float, float* %26956, i64 0
%26958 = load float, float* %26957
%26959 = fsub float %26955, %26958
%26960 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %26959, float* %26960
%26961 = load float*, float** %8
%26962 = getelementptr inbounds float, float* %26961, i64 1
%26963 = load float, float* %26962
%26964 = load float*, float** %9
%26965 = getelementptr inbounds float, float* %26964, i64 1
%26966 = load float, float* %26965
%26967 = fsub float %26963, %26966
%26968 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %26967, float* %26968
%26969 = load float*, float** %8
%26970 = getelementptr inbounds float, float* %26969, i64 2
%26971 = load float, float* %26970
%26972 = load float*, float** %9
%26973 = getelementptr inbounds float, float* %26972, i64 2
%26974 = load float, float* %26973
%26975 = fsub float %26971, %26974
%26976 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %26975, float* %26976
%26977 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%26978 = load float, float* %26977
%26979 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%26980 = load float, float* %26979
%26981 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%26982 = load float, float* %26981
%26983 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%26984 = load float, float* %26983
%26985 = fmul float %26982, %26984
%26986 = fneg float %26985
%26987 = call float @llvm.fmuladd.f32(float %26978, float %26980, float %26986)
%26988 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %26987, float* %26988
%26989 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%26990 = load float, float* %26989
%26991 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%26992 = load float, float* %26991
%26993 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%26994 = load float, float* %26993
%26995 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%26996 = load float, float* %26995
%26997 = fmul float %26994, %26996
%26998 = fneg float %26997
%26999 = call float @llvm.fmuladd.f32(float %26990, float %26992, float %26998)
%27000 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %26999, float* %27000
%27001 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%27002 = load float, float* %27001
%27003 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%27004 = load float, float* %27003
%27005 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%27006 = load float, float* %27005
%27007 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%27008 = load float, float* %27007
%27009 = fmul float %27006, %27008
%27010 = fneg float %27009
%27011 = call float @llvm.fmuladd.f32(float %27002, float %27004, float %27010)
%27012 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %27011, float* %27012
%27013 = load float*, float** %13
%27014 = getelementptr inbounds float, float* %27013, i64 0
%27015 = load float, float* %27014
%27016 = load float*, float** %9
%27017 = getelementptr inbounds float, float* %27016, i64 0
%27018 = load float, float* %27017
%27019 = fsub float %27015, %27018
%27020 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %27019, float* %27020
%27021 = load float*, float** %13
%27022 = getelementptr inbounds float, float* %27021, i64 1
%27023 = load float, float* %27022
%27024 = load float*, float** %9
%27025 = getelementptr inbounds float, float* %27024, i64 1
%27026 = load float, float* %27025
%27027 = fsub float %27023, %27026
%27028 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %27027, float* %27028
%27029 = load float*, float** %13
%27030 = getelementptr inbounds float, float* %27029, i64 2
%27031 = load float, float* %27030
%27032 = load float*, float** %9
%27033 = getelementptr inbounds float, float* %27032, i64 2
%27034 = load float, float* %27033
%27035 = fsub float %27031, %27034
%27036 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %27035, float* %27036
%27037 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%27038 = load float, float* %27037
%27039 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%27040 = load float, float* %27039
%27041 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%27042 = load float, float* %27041
%27043 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%27044 = load float, float* %27043
%27045 = fmul float %27042, %27044
%27046 = call float @llvm.fmuladd.f32(float %27038, float %27040, float %27045)
%27047 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%27048 = load float, float* %27047
%27049 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%27050 = load float, float* %27049
%27051 = call float @llvm.fmuladd.f32(float %27048, float %27050, float %27046)
%27052 = fcmp ogt float %27051, 0.000000e+00
br i1 %27052, label %27053, label %27054
27053: ; preds = %26928
store i32 0, i32* %7
br label %37477
27054: ; preds = %26928
%27055 = load float*, float** %11
%27056 = getelementptr inbounds float, float* %27055, i64 0
%27057 = load float, float* %27056
%27058 = load float*, float** %8
%27059 = getelementptr inbounds float, float* %27058, i64 0
%27060 = load float, float* %27059
%27061 = fsub float %27057, %27060
%27062 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %27061, float* %27062
%27063 = load float*, float** %11
%27064 = getelementptr inbounds float, float* %27063, i64 1
%27065 = load float, float* %27064
%27066 = load float*, float** %8
%27067 = getelementptr inbounds float, float* %27066, i64 1
%27068 = load float, float* %27067
%27069 = fsub float %27065, %27068
%27070 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %27069, float* %27070
%27071 = load float*, float** %11
%27072 = getelementptr inbounds float, float* %27071, i64 2
%27073 = load float, float* %27072
%27074 = load float*, float** %8
%27075 = getelementptr inbounds float, float* %27074, i64 2
%27076 = load float, float* %27075
%27077 = fsub float %27073, %27076
%27078 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %27077, float* %27078
%27079 = load float*, float** %10
%27080 = getelementptr inbounds float, float* %27079, i64 0
%27081 = load float, float* %27080
%27082 = load float*, float** %8
%27083 = getelementptr inbounds float, float* %27082, i64 0
%27084 = load float, float* %27083
%27085 = fsub float %27081, %27084
%27086 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %27085, float* %27086
%27087 = load float*, float** %10
%27088 = getelementptr inbounds float, float* %27087, i64 1
%27089 = load float, float* %27088
%27090 = load float*, float** %8
%27091 = getelementptr inbounds float, float* %27090, i64 1
%27092 = load float, float* %27091
%27093 = fsub float %27089, %27092
%27094 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %27093, float* %27094
%27095 = load float*, float** %10
%27096 = getelementptr inbounds float, float* %27095, i64 2
%27097 = load float, float* %27096
%27098 = load float*, float** %8
%27099 = getelementptr inbounds float, float* %27098, i64 2
%27100 = load float, float* %27099
%27101 = fsub float %27097, %27100
%27102 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %27101, float* %27102
%27103 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%27104 = load float, float* %27103
%27105 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%27106 = load float, float* %27105
%27107 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%27108 = load float, float* %27107
%27109 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%27110 = load float, float* %27109
%27111 = fmul float %27108, %27110
%27112 = fneg float %27111
%27113 = call float @llvm.fmuladd.f32(float %27104, float %27106, float %27112)
%27114 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %27113, float* %27114
%27115 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%27116 = load float, float* %27115
%27117 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%27118 = load float, float* %27117
%27119 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%27120 = load float, float* %27119
%27121 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%27122 = load float, float* %27121
%27123 = fmul float %27120, %27122
%27124 = fneg float %27123
%27125 = call float @llvm.fmuladd.f32(float %27116, float %27118, float %27124)
%27126 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %27125, float* %27126
%27127 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%27128 = load float, float* %27127
%27129 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%27130 = load float, float* %27129
%27131 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%27132 = load float, float* %27131
%27133 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%27134 = load float, float* %27133
%27135 = fmul float %27132, %27134
%27136 = fneg float %27135
%27137 = call float @llvm.fmuladd.f32(float %27128, float %27130, float %27136)
%27138 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %27137, float* %27138
%27139 = load float*, float** %12
%27140 = getelementptr inbounds float, float* %27139, i64 0
%27141 = load float, float* %27140
%27142 = load float*, float** %8
%27143 = getelementptr inbounds float, float* %27142, i64 0
%27144 = load float, float* %27143
%27145 = fsub float %27141, %27144
%27146 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %27145, float* %27146
%27147 = load float*, float** %12
%27148 = getelementptr inbounds float, float* %27147, i64 1
%27149 = load float, float* %27148
%27150 = load float*, float** %8
%27151 = getelementptr inbounds float, float* %27150, i64 1
%27152 = load float, float* %27151
%27153 = fsub float %27149, %27152
%27154 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %27153, float* %27154
%27155 = load float*, float** %12
%27156 = getelementptr inbounds float, float* %27155, i64 2
%27157 = load float, float* %27156
%27158 = load float*, float** %8
%27159 = getelementptr inbounds float, float* %27158, i64 2
%27160 = load float, float* %27159
%27161 = fsub float %27157, %27160
%27162 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %27161, float* %27162
%27163 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%27164 = load float, float* %27163
%27165 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%27166 = load float, float* %27165
%27167 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%27168 = load float, float* %27167
%27169 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%27170 = load float, float* %27169
%27171 = fmul float %27168, %27170
%27172 = call float @llvm.fmuladd.f32(float %27164, float %27166, float %27171)
%27173 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%27174 = load float, float* %27173
%27175 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%27176 = load float, float* %27175
%27177 = call float @llvm.fmuladd.f32(float %27174, float %27176, float %27172)
%27178 = fcmp ogt float %27177, 0.000000e+00
br i1 %27178, label %27179, label %27180
27179: ; preds = %27054
store i32 0, i32* %7
br label %37477
27180: ; preds = %27054
store i32 1, i32* %7
br label %37477
27181: ; preds = %26669
%27182 = load float, float* %19
%27183 = fcmp ogt float %27182, 0.000000e+00
br i1 %27183, label %27184, label %27693
27184: ; preds = %27181
%27185 = load float, float* %18
%27186 = fcmp ogt float %27185, 0.000000e+00
br i1 %27186, label %27187, label %27440
27187: ; preds = %27184
%27188 = load float*, float** %11
%27189 = getelementptr inbounds float, float* %27188, i64 0
%27190 = load float, float* %27189
%27191 = load float*, float** %10
%27192 = getelementptr inbounds float, float* %27191, i64 0
%27193 = load float, float* %27192
%27194 = fsub float %27190, %27193
%27195 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %27194, float* %27195
%27196 = load float*, float** %11
%27197 = getelementptr inbounds float, float* %27196, i64 1
%27198 = load float, float* %27197
%27199 = load float*, float** %10
%27200 = getelementptr inbounds float, float* %27199, i64 1
%27201 = load float, float* %27200
%27202 = fsub float %27198, %27201
%27203 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %27202, float* %27203
%27204 = load float*, float** %11
%27205 = getelementptr inbounds float, float* %27204, i64 2
%27206 = load float, float* %27205
%27207 = load float*, float** %10
%27208 = getelementptr inbounds float, float* %27207, i64 2
%27209 = load float, float* %27208
%27210 = fsub float %27206, %27209
%27211 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %27210, float* %27211
%27212 = load float*, float** %8
%27213 = getelementptr inbounds float, float* %27212, i64 0
%27214 = load float, float* %27213
%27215 = load float*, float** %10
%27216 = getelementptr inbounds float, float* %27215, i64 0
%27217 = load float, float* %27216
%27218 = fsub float %27214, %27217
%27219 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %27218, float* %27219
%27220 = load float*, float** %8
%27221 = getelementptr inbounds float, float* %27220, i64 1
%27222 = load float, float* %27221
%27223 = load float*, float** %10
%27224 = getelementptr inbounds float, float* %27223, i64 1
%27225 = load float, float* %27224
%27226 = fsub float %27222, %27225
%27227 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %27226, float* %27227
%27228 = load float*, float** %8
%27229 = getelementptr inbounds float, float* %27228, i64 2
%27230 = load float, float* %27229
%27231 = load float*, float** %10
%27232 = getelementptr inbounds float, float* %27231, i64 2
%27233 = load float, float* %27232
%27234 = fsub float %27230, %27233
%27235 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %27234, float* %27235
%27236 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%27237 = load float, float* %27236
%27238 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%27239 = load float, float* %27238
%27240 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%27241 = load float, float* %27240
%27242 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%27243 = load float, float* %27242
%27244 = fmul float %27241, %27243
%27245 = fneg float %27244
%27246 = call float @llvm.fmuladd.f32(float %27237, float %27239, float %27245)
%27247 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %27246, float* %27247
%27248 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%27249 = load float, float* %27248
%27250 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%27251 = load float, float* %27250
%27252 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%27253 = load float, float* %27252
%27254 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%27255 = load float, float* %27254
%27256 = fmul float %27253, %27255
%27257 = fneg float %27256
%27258 = call float @llvm.fmuladd.f32(float %27249, float %27251, float %27257)
%27259 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %27258, float* %27259
%27260 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%27261 = load float, float* %27260
%27262 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%27263 = load float, float* %27262
%27264 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%27265 = load float, float* %27264
%27266 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%27267 = load float, float* %27266
%27268 = fmul float %27265, %27267
%27269 = fneg float %27268
%27270 = call float @llvm.fmuladd.f32(float %27261, float %27263, float %27269)
%27271 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %27270, float* %27271
%27272 = load float*, float** %13
%27273 = getelementptr inbounds float, float* %27272, i64 0
%27274 = load float, float* %27273
%27275 = load float*, float** %10
%27276 = getelementptr inbounds float, float* %27275, i64 0
%27277 = load float, float* %27276
%27278 = fsub float %27274, %27277
%27279 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %27278, float* %27279
%27280 = load float*, float** %13
%27281 = getelementptr inbounds float, float* %27280, i64 1
%27282 = load float, float* %27281
%27283 = load float*, float** %10
%27284 = getelementptr inbounds float, float* %27283, i64 1
%27285 = load float, float* %27284
%27286 = fsub float %27282, %27285
%27287 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %27286, float* %27287
%27288 = load float*, float** %13
%27289 = getelementptr inbounds float, float* %27288, i64 2
%27290 = load float, float* %27289
%27291 = load float*, float** %10
%27292 = getelementptr inbounds float, float* %27291, i64 2
%27293 = load float, float* %27292
%27294 = fsub float %27290, %27293
%27295 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %27294, float* %27295
%27296 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%27297 = load float, float* %27296
%27298 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%27299 = load float, float* %27298
%27300 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%27301 = load float, float* %27300
%27302 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%27303 = load float, float* %27302
%27304 = fmul float %27301, %27303
%27305 = call float @llvm.fmuladd.f32(float %27297, float %27299, float %27304)
%27306 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%27307 = load float, float* %27306
%27308 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%27309 = load float, float* %27308
%27310 = call float @llvm.fmuladd.f32(float %27307, float %27309, float %27305)
%27311 = fcmp ogt float %27310, 0.000000e+00
br i1 %27311, label %27312, label %27313
27312: ; preds = %27187
store i32 0, i32* %7
br label %37477
27313: ; preds = %27187
%27314 = load float*, float** %11
%27315 = getelementptr inbounds float, float* %27314, i64 0
%27316 = load float, float* %27315
%27317 = load float*, float** %8
%27318 = getelementptr inbounds float, float* %27317, i64 0
%27319 = load float, float* %27318
%27320 = fsub float %27316, %27319
%27321 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %27320, float* %27321
%27322 = load float*, float** %11
%27323 = getelementptr inbounds float, float* %27322, i64 1
%27324 = load float, float* %27323
%27325 = load float*, float** %8
%27326 = getelementptr inbounds float, float* %27325, i64 1
%27327 = load float, float* %27326
%27328 = fsub float %27324, %27327
%27329 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %27328, float* %27329
%27330 = load float*, float** %11
%27331 = getelementptr inbounds float, float* %27330, i64 2
%27332 = load float, float* %27331
%27333 = load float*, float** %8
%27334 = getelementptr inbounds float, float* %27333, i64 2
%27335 = load float, float* %27334
%27336 = fsub float %27332, %27335
%27337 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %27336, float* %27337
%27338 = load float*, float** %9
%27339 = getelementptr inbounds float, float* %27338, i64 0
%27340 = load float, float* %27339
%27341 = load float*, float** %8
%27342 = getelementptr inbounds float, float* %27341, i64 0
%27343 = load float, float* %27342
%27344 = fsub float %27340, %27343
%27345 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %27344, float* %27345
%27346 = load float*, float** %9
%27347 = getelementptr inbounds float, float* %27346, i64 1
%27348 = load float, float* %27347
%27349 = load float*, float** %8
%27350 = getelementptr inbounds float, float* %27349, i64 1
%27351 = load float, float* %27350
%27352 = fsub float %27348, %27351
%27353 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %27352, float* %27353
%27354 = load float*, float** %9
%27355 = getelementptr inbounds float, float* %27354, i64 2
%27356 = load float, float* %27355
%27357 = load float*, float** %8
%27358 = getelementptr inbounds float, float* %27357, i64 2
%27359 = load float, float* %27358
%27360 = fsub float %27356, %27359
%27361 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %27360, float* %27361
%27362 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%27363 = load float, float* %27362
%27364 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%27365 = load float, float* %27364
%27366 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%27367 = load float, float* %27366
%27368 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%27369 = load float, float* %27368
%27370 = fmul float %27367, %27369
%27371 = fneg float %27370
%27372 = call float @llvm.fmuladd.f32(float %27363, float %27365, float %27371)
%27373 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %27372, float* %27373
%27374 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%27375 = load float, float* %27374
%27376 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%27377 = load float, float* %27376
%27378 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%27379 = load float, float* %27378
%27380 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%27381 = load float, float* %27380
%27382 = fmul float %27379, %27381
%27383 = fneg float %27382
%27384 = call float @llvm.fmuladd.f32(float %27375, float %27377, float %27383)
%27385 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %27384, float* %27385
%27386 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%27387 = load float, float* %27386
%27388 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%27389 = load float, float* %27388
%27390 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%27391 = load float, float* %27390
%27392 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%27393 = load float, float* %27392
%27394 = fmul float %27391, %27393
%27395 = fneg float %27394
%27396 = call float @llvm.fmuladd.f32(float %27387, float %27389, float %27395)
%27397 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %27396, float* %27397
%27398 = load float*, float** %12
%27399 = getelementptr inbounds float, float* %27398, i64 0
%27400 = load float, float* %27399
%27401 = load float*, float** %8
%27402 = getelementptr inbounds float, float* %27401, i64 0
%27403 = load float, float* %27402
%27404 = fsub float %27400, %27403
%27405 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %27404, float* %27405
%27406 = load float*, float** %12
%27407 = getelementptr inbounds float, float* %27406, i64 1
%27408 = load float, float* %27407
%27409 = load float*, float** %8
%27410 = getelementptr inbounds float, float* %27409, i64 1
%27411 = load float, float* %27410
%27412 = fsub float %27408, %27411
%27413 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %27412, float* %27413
%27414 = load float*, float** %12
%27415 = getelementptr inbounds float, float* %27414, i64 2
%27416 = load float, float* %27415
%27417 = load float*, float** %8
%27418 = getelementptr inbounds float, float* %27417, i64 2
%27419 = load float, float* %27418
%27420 = fsub float %27416, %27419
%27421 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %27420, float* %27421
%27422 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%27423 = load float, float* %27422
%27424 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%27425 = load float, float* %27424
%27426 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%27427 = load float, float* %27426
%27428 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%27429 = load float, float* %27428
%27430 = fmul float %27427, %27429
%27431 = call float @llvm.fmuladd.f32(float %27423, float %27425, float %27430)
%27432 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%27433 = load float, float* %27432
%27434 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%27435 = load float, float* %27434
%27436 = call float @llvm.fmuladd.f32(float %27433, float %27435, float %27431)
%27437 = fcmp ogt float %27436, 0.000000e+00
br i1 %27437, label %27438, label %27439
27438: ; preds = %27313
store i32 0, i32* %7
br label %37477
27439: ; preds = %27313
store i32 1, i32* %7
br label %37477
27440: ; preds = %27184
%27441 = load float*, float** %13
%27442 = getelementptr inbounds float, float* %27441, i64 0
%27443 = load float, float* %27442
%27444 = load float*, float** %9
%27445 = getelementptr inbounds float, float* %27444, i64 0
%27446 = load float, float* %27445
%27447 = fsub float %27443, %27446
%27448 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %27447, float* %27448
%27449 = load float*, float** %13
%27450 = getelementptr inbounds float, float* %27449, i64 1
%27451 = load float, float* %27450
%27452 = load float*, float** %9
%27453 = getelementptr inbounds float, float* %27452, i64 1
%27454 = load float, float* %27453
%27455 = fsub float %27451, %27454
%27456 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %27455, float* %27456
%27457 = load float*, float** %13
%27458 = getelementptr inbounds float, float* %27457, i64 2
%27459 = load float, float* %27458
%27460 = load float*, float** %9
%27461 = getelementptr inbounds float, float* %27460, i64 2
%27462 = load float, float* %27461
%27463 = fsub float %27459, %27462
%27464 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %27463, float* %27464
%27465 = load float*, float** %8
%27466 = getelementptr inbounds float, float* %27465, i64 0
%27467 = load float, float* %27466
%27468 = load float*, float** %9
%27469 = getelementptr inbounds float, float* %27468, i64 0
%27470 = load float, float* %27469
%27471 = fsub float %27467, %27470
%27472 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %27471, float* %27472
%27473 = load float*, float** %8
%27474 = getelementptr inbounds float, float* %27473, i64 1
%27475 = load float, float* %27474
%27476 = load float*, float** %9
%27477 = getelementptr inbounds float, float* %27476, i64 1
%27478 = load float, float* %27477
%27479 = fsub float %27475, %27478
%27480 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %27479, float* %27480
%27481 = load float*, float** %8
%27482 = getelementptr inbounds float, float* %27481, i64 2
%27483 = load float, float* %27482
%27484 = load float*, float** %9
%27485 = getelementptr inbounds float, float* %27484, i64 2
%27486 = load float, float* %27485
%27487 = fsub float %27483, %27486
%27488 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %27487, float* %27488
%27489 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%27490 = load float, float* %27489
%27491 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%27492 = load float, float* %27491
%27493 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%27494 = load float, float* %27493
%27495 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%27496 = load float, float* %27495
%27497 = fmul float %27494, %27496
%27498 = fneg float %27497
%27499 = call float @llvm.fmuladd.f32(float %27490, float %27492, float %27498)
%27500 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %27499, float* %27500
%27501 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%27502 = load float, float* %27501
%27503 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%27504 = load float, float* %27503
%27505 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%27506 = load float, float* %27505
%27507 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%27508 = load float, float* %27507
%27509 = fmul float %27506, %27508
%27510 = fneg float %27509
%27511 = call float @llvm.fmuladd.f32(float %27502, float %27504, float %27510)
%27512 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %27511, float* %27512
%27513 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%27514 = load float, float* %27513
%27515 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%27516 = load float, float* %27515
%27517 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%27518 = load float, float* %27517
%27519 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%27520 = load float, float* %27519
%27521 = fmul float %27518, %27520
%27522 = fneg float %27521
%27523 = call float @llvm.fmuladd.f32(float %27514, float %27516, float %27522)
%27524 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %27523, float* %27524
%27525 = load float*, float** %12
%27526 = getelementptr inbounds float, float* %27525, i64 0
%27527 = load float, float* %27526
%27528 = load float*, float** %9
%27529 = getelementptr inbounds float, float* %27528, i64 0
%27530 = load float, float* %27529
%27531 = fsub float %27527, %27530
%27532 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %27531, float* %27532
%27533 = load float*, float** %12
%27534 = getelementptr inbounds float, float* %27533, i64 1
%27535 = load float, float* %27534
%27536 = load float*, float** %9
%27537 = getelementptr inbounds float, float* %27536, i64 1
%27538 = load float, float* %27537
%27539 = fsub float %27535, %27538
%27540 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %27539, float* %27540
%27541 = load float*, float** %12
%27542 = getelementptr inbounds float, float* %27541, i64 2
%27543 = load float, float* %27542
%27544 = load float*, float** %9
%27545 = getelementptr inbounds float, float* %27544, i64 2
%27546 = load float, float* %27545
%27547 = fsub float %27543, %27546
%27548 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %27547, float* %27548
%27549 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%27550 = load float, float* %27549
%27551 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%27552 = load float, float* %27551
%27553 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%27554 = load float, float* %27553
%27555 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%27556 = load float, float* %27555
%27557 = fmul float %27554, %27556
%27558 = call float @llvm.fmuladd.f32(float %27550, float %27552, float %27557)
%27559 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%27560 = load float, float* %27559
%27561 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%27562 = load float, float* %27561
%27563 = call float @llvm.fmuladd.f32(float %27560, float %27562, float %27558)
%27564 = fcmp ogt float %27563, 0.000000e+00
br i1 %27564, label %27565, label %27566
27565: ; preds = %27440
store i32 0, i32* %7
br label %37477
27566: ; preds = %27440
%27567 = load float*, float** %13
%27568 = getelementptr inbounds float, float* %27567, i64 0
%27569 = load float, float* %27568
%27570 = load float*, float** %8
%27571 = getelementptr inbounds float, float* %27570, i64 0
%27572 = load float, float* %27571
%27573 = fsub float %27569, %27572
%27574 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %27573, float* %27574
%27575 = load float*, float** %13
%27576 = getelementptr inbounds float, float* %27575, i64 1
%27577 = load float, float* %27576
%27578 = load float*, float** %8
%27579 = getelementptr inbounds float, float* %27578, i64 1
%27580 = load float, float* %27579
%27581 = fsub float %27577, %27580
%27582 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %27581, float* %27582
%27583 = load float*, float** %13
%27584 = getelementptr inbounds float, float* %27583, i64 2
%27585 = load float, float* %27584
%27586 = load float*, float** %8
%27587 = getelementptr inbounds float, float* %27586, i64 2
%27588 = load float, float* %27587
%27589 = fsub float %27585, %27588
%27590 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %27589, float* %27590
%27591 = load float*, float** %10
%27592 = getelementptr inbounds float, float* %27591, i64 0
%27593 = load float, float* %27592
%27594 = load float*, float** %8
%27595 = getelementptr inbounds float, float* %27594, i64 0
%27596 = load float, float* %27595
%27597 = fsub float %27593, %27596
%27598 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %27597, float* %27598
%27599 = load float*, float** %10
%27600 = getelementptr inbounds float, float* %27599, i64 1
%27601 = load float, float* %27600
%27602 = load float*, float** %8
%27603 = getelementptr inbounds float, float* %27602, i64 1
%27604 = load float, float* %27603
%27605 = fsub float %27601, %27604
%27606 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %27605, float* %27606
%27607 = load float*, float** %10
%27608 = getelementptr inbounds float, float* %27607, i64 2
%27609 = load float, float* %27608
%27610 = load float*, float** %8
%27611 = getelementptr inbounds float, float* %27610, i64 2
%27612 = load float, float* %27611
%27613 = fsub float %27609, %27612
%27614 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %27613, float* %27614
%27615 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%27616 = load float, float* %27615
%27617 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%27618 = load float, float* %27617
%27619 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%27620 = load float, float* %27619
%27621 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%27622 = load float, float* %27621
%27623 = fmul float %27620, %27622
%27624 = fneg float %27623
%27625 = call float @llvm.fmuladd.f32(float %27616, float %27618, float %27624)
%27626 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %27625, float* %27626
%27627 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%27628 = load float, float* %27627
%27629 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%27630 = load float, float* %27629
%27631 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%27632 = load float, float* %27631
%27633 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%27634 = load float, float* %27633
%27635 = fmul float %27632, %27634
%27636 = fneg float %27635
%27637 = call float @llvm.fmuladd.f32(float %27628, float %27630, float %27636)
%27638 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %27637, float* %27638
%27639 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%27640 = load float, float* %27639
%27641 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%27642 = load float, float* %27641
%27643 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%27644 = load float, float* %27643
%27645 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%27646 = load float, float* %27645
%27647 = fmul float %27644, %27646
%27648 = fneg float %27647
%27649 = call float @llvm.fmuladd.f32(float %27640, float %27642, float %27648)
%27650 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %27649, float* %27650
%27651 = load float*, float** %11
%27652 = getelementptr inbounds float, float* %27651, i64 0
%27653 = load float, float* %27652
%27654 = load float*, float** %8
%27655 = getelementptr inbounds float, float* %27654, i64 0
%27656 = load float, float* %27655
%27657 = fsub float %27653, %27656
%27658 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %27657, float* %27658
%27659 = load float*, float** %11
%27660 = getelementptr inbounds float, float* %27659, i64 1
%27661 = load float, float* %27660
%27662 = load float*, float** %8
%27663 = getelementptr inbounds float, float* %27662, i64 1
%27664 = load float, float* %27663
%27665 = fsub float %27661, %27664
%27666 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %27665, float* %27666
%27667 = load float*, float** %11
%27668 = getelementptr inbounds float, float* %27667, i64 2
%27669 = load float, float* %27668
%27670 = load float*, float** %8
%27671 = getelementptr inbounds float, float* %27670, i64 2
%27672 = load float, float* %27671
%27673 = fsub float %27669, %27672
%27674 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %27673, float* %27674
%27675 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%27676 = load float, float* %27675
%27677 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%27678 = load float, float* %27677
%27679 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%27680 = load float, float* %27679
%27681 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%27682 = load float, float* %27681
%27683 = fmul float %27680, %27682
%27684 = call float @llvm.fmuladd.f32(float %27676, float %27678, float %27683)
%27685 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%27686 = load float, float* %27685
%27687 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%27688 = load float, float* %27687
%27689 = call float @llvm.fmuladd.f32(float %27686, float %27688, float %27684)
%27690 = fcmp ogt float %27689, 0.000000e+00
br i1 %27690, label %27691, label %27692
27691: ; preds = %27566
store i32 0, i32* %7
br label %37477
27692: ; preds = %27566
store i32 1, i32* %7
br label %37477
27693: ; preds = %27181
%27694 = load float, float* %18
%27695 = fcmp ogt float %27694, 0.000000e+00
br i1 %27695, label %27696, label %27949
27696: ; preds = %27693
%27697 = load float*, float** %12
%27698 = getelementptr inbounds float, float* %27697, i64 0
%27699 = load float, float* %27698
%27700 = load float*, float** %9
%27701 = getelementptr inbounds float, float* %27700, i64 0
%27702 = load float, float* %27701
%27703 = fsub float %27699, %27702
%27704 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %27703, float* %27704
%27705 = load float*, float** %12
%27706 = getelementptr inbounds float, float* %27705, i64 1
%27707 = load float, float* %27706
%27708 = load float*, float** %9
%27709 = getelementptr inbounds float, float* %27708, i64 1
%27710 = load float, float* %27709
%27711 = fsub float %27707, %27710
%27712 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %27711, float* %27712
%27713 = load float*, float** %12
%27714 = getelementptr inbounds float, float* %27713, i64 2
%27715 = load float, float* %27714
%27716 = load float*, float** %9
%27717 = getelementptr inbounds float, float* %27716, i64 2
%27718 = load float, float* %27717
%27719 = fsub float %27715, %27718
%27720 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %27719, float* %27720
%27721 = load float*, float** %8
%27722 = getelementptr inbounds float, float* %27721, i64 0
%27723 = load float, float* %27722
%27724 = load float*, float** %9
%27725 = getelementptr inbounds float, float* %27724, i64 0
%27726 = load float, float* %27725
%27727 = fsub float %27723, %27726
%27728 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %27727, float* %27728
%27729 = load float*, float** %8
%27730 = getelementptr inbounds float, float* %27729, i64 1
%27731 = load float, float* %27730
%27732 = load float*, float** %9
%27733 = getelementptr inbounds float, float* %27732, i64 1
%27734 = load float, float* %27733
%27735 = fsub float %27731, %27734
%27736 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %27735, float* %27736
%27737 = load float*, float** %8
%27738 = getelementptr inbounds float, float* %27737, i64 2
%27739 = load float, float* %27738
%27740 = load float*, float** %9
%27741 = getelementptr inbounds float, float* %27740, i64 2
%27742 = load float, float* %27741
%27743 = fsub float %27739, %27742
%27744 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %27743, float* %27744
%27745 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%27746 = load float, float* %27745
%27747 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%27748 = load float, float* %27747
%27749 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%27750 = load float, float* %27749
%27751 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%27752 = load float, float* %27751
%27753 = fmul float %27750, %27752
%27754 = fneg float %27753
%27755 = call float @llvm.fmuladd.f32(float %27746, float %27748, float %27754)
%27756 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %27755, float* %27756
%27757 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%27758 = load float, float* %27757
%27759 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%27760 = load float, float* %27759
%27761 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%27762 = load float, float* %27761
%27763 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%27764 = load float, float* %27763
%27765 = fmul float %27762, %27764
%27766 = fneg float %27765
%27767 = call float @llvm.fmuladd.f32(float %27758, float %27760, float %27766)
%27768 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %27767, float* %27768
%27769 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%27770 = load float, float* %27769
%27771 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%27772 = load float, float* %27771
%27773 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%27774 = load float, float* %27773
%27775 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%27776 = load float, float* %27775
%27777 = fmul float %27774, %27776
%27778 = fneg float %27777
%27779 = call float @llvm.fmuladd.f32(float %27770, float %27772, float %27778)
%27780 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %27779, float* %27780
%27781 = load float*, float** %11
%27782 = getelementptr inbounds float, float* %27781, i64 0
%27783 = load float, float* %27782
%27784 = load float*, float** %9
%27785 = getelementptr inbounds float, float* %27784, i64 0
%27786 = load float, float* %27785
%27787 = fsub float %27783, %27786
%27788 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %27787, float* %27788
%27789 = load float*, float** %11
%27790 = getelementptr inbounds float, float* %27789, i64 1
%27791 = load float, float* %27790
%27792 = load float*, float** %9
%27793 = getelementptr inbounds float, float* %27792, i64 1
%27794 = load float, float* %27793
%27795 = fsub float %27791, %27794
%27796 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %27795, float* %27796
%27797 = load float*, float** %11
%27798 = getelementptr inbounds float, float* %27797, i64 2
%27799 = load float, float* %27798
%27800 = load float*, float** %9
%27801 = getelementptr inbounds float, float* %27800, i64 2
%27802 = load float, float* %27801
%27803 = fsub float %27799, %27802
%27804 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %27803, float* %27804
%27805 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%27806 = load float, float* %27805
%27807 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%27808 = load float, float* %27807
%27809 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%27810 = load float, float* %27809
%27811 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%27812 = load float, float* %27811
%27813 = fmul float %27810, %27812
%27814 = call float @llvm.fmuladd.f32(float %27806, float %27808, float %27813)
%27815 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%27816 = load float, float* %27815
%27817 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%27818 = load float, float* %27817
%27819 = call float @llvm.fmuladd.f32(float %27816, float %27818, float %27814)
%27820 = fcmp ogt float %27819, 0.000000e+00
br i1 %27820, label %27821, label %27822
27821: ; preds = %27696
store i32 0, i32* %7
br label %37477
27822: ; preds = %27696
%27823 = load float*, float** %12
%27824 = getelementptr inbounds float, float* %27823, i64 0
%27825 = load float, float* %27824
%27826 = load float*, float** %8
%27827 = getelementptr inbounds float, float* %27826, i64 0
%27828 = load float, float* %27827
%27829 = fsub float %27825, %27828
%27830 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %27829, float* %27830
%27831 = load float*, float** %12
%27832 = getelementptr inbounds float, float* %27831, i64 1
%27833 = load float, float* %27832
%27834 = load float*, float** %8
%27835 = getelementptr inbounds float, float* %27834, i64 1
%27836 = load float, float* %27835
%27837 = fsub float %27833, %27836
%27838 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %27837, float* %27838
%27839 = load float*, float** %12
%27840 = getelementptr inbounds float, float* %27839, i64 2
%27841 = load float, float* %27840
%27842 = load float*, float** %8
%27843 = getelementptr inbounds float, float* %27842, i64 2
%27844 = load float, float* %27843
%27845 = fsub float %27841, %27844
%27846 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %27845, float* %27846
%27847 = load float*, float** %10
%27848 = getelementptr inbounds float, float* %27847, i64 0
%27849 = load float, float* %27848
%27850 = load float*, float** %8
%27851 = getelementptr inbounds float, float* %27850, i64 0
%27852 = load float, float* %27851
%27853 = fsub float %27849, %27852
%27854 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %27853, float* %27854
%27855 = load float*, float** %10
%27856 = getelementptr inbounds float, float* %27855, i64 1
%27857 = load float, float* %27856
%27858 = load float*, float** %8
%27859 = getelementptr inbounds float, float* %27858, i64 1
%27860 = load float, float* %27859
%27861 = fsub float %27857, %27860
%27862 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %27861, float* %27862
%27863 = load float*, float** %10
%27864 = getelementptr inbounds float, float* %27863, i64 2
%27865 = load float, float* %27864
%27866 = load float*, float** %8
%27867 = getelementptr inbounds float, float* %27866, i64 2
%27868 = load float, float* %27867
%27869 = fsub float %27865, %27868
%27870 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %27869, float* %27870
%27871 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%27872 = load float, float* %27871
%27873 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%27874 = load float, float* %27873
%27875 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%27876 = load float, float* %27875
%27877 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%27878 = load float, float* %27877
%27879 = fmul float %27876, %27878
%27880 = fneg float %27879
%27881 = call float @llvm.fmuladd.f32(float %27872, float %27874, float %27880)
%27882 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %27881, float* %27882
%27883 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%27884 = load float, float* %27883
%27885 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%27886 = load float, float* %27885
%27887 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%27888 = load float, float* %27887
%27889 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%27890 = load float, float* %27889
%27891 = fmul float %27888, %27890
%27892 = fneg float %27891
%27893 = call float @llvm.fmuladd.f32(float %27884, float %27886, float %27892)
%27894 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %27893, float* %27894
%27895 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%27896 = load float, float* %27895
%27897 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%27898 = load float, float* %27897
%27899 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%27900 = load float, float* %27899
%27901 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%27902 = load float, float* %27901
%27903 = fmul float %27900, %27902
%27904 = fneg float %27903
%27905 = call float @llvm.fmuladd.f32(float %27896, float %27898, float %27904)
%27906 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %27905, float* %27906
%27907 = load float*, float** %13
%27908 = getelementptr inbounds float, float* %27907, i64 0
%27909 = load float, float* %27908
%27910 = load float*, float** %8
%27911 = getelementptr inbounds float, float* %27910, i64 0
%27912 = load float, float* %27911
%27913 = fsub float %27909, %27912
%27914 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %27913, float* %27914
%27915 = load float*, float** %13
%27916 = getelementptr inbounds float, float* %27915, i64 1
%27917 = load float, float* %27916
%27918 = load float*, float** %8
%27919 = getelementptr inbounds float, float* %27918, i64 1
%27920 = load float, float* %27919
%27921 = fsub float %27917, %27920
%27922 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %27921, float* %27922
%27923 = load float*, float** %13
%27924 = getelementptr inbounds float, float* %27923, i64 2
%27925 = load float, float* %27924
%27926 = load float*, float** %8
%27927 = getelementptr inbounds float, float* %27926, i64 2
%27928 = load float, float* %27927
%27929 = fsub float %27925, %27928
%27930 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %27929, float* %27930
%27931 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%27932 = load float, float* %27931
%27933 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%27934 = load float, float* %27933
%27935 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%27936 = load float, float* %27935
%27937 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%27938 = load float, float* %27937
%27939 = fmul float %27936, %27938
%27940 = call float @llvm.fmuladd.f32(float %27932, float %27934, float %27939)
%27941 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%27942 = load float, float* %27941
%27943 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%27944 = load float, float* %27943
%27945 = call float @llvm.fmuladd.f32(float %27942, float %27944, float %27940)
%27946 = fcmp ogt float %27945, 0.000000e+00
br i1 %27946, label %27947, label %27948
27947: ; preds = %27822
store i32 0, i32* %7
br label %37477
27948: ; preds = %27822
store i32 1, i32* %7
br label %37477
27949: ; preds = %27693
%27950 = load float, float* %18
%27951 = fcmp olt float %27950, 0.000000e+00
br i1 %27951, label %27952, label %28205
27952: ; preds = %27949
%27953 = load float*, float** %12
%27954 = getelementptr inbounds float, float* %27953, i64 0
%27955 = load float, float* %27954
%27956 = load float*, float** %10
%27957 = getelementptr inbounds float, float* %27956, i64 0
%27958 = load float, float* %27957
%27959 = fsub float %27955, %27958
%27960 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %27959, float* %27960
%27961 = load float*, float** %12
%27962 = getelementptr inbounds float, float* %27961, i64 1
%27963 = load float, float* %27962
%27964 = load float*, float** %10
%27965 = getelementptr inbounds float, float* %27964, i64 1
%27966 = load float, float* %27965
%27967 = fsub float %27963, %27966
%27968 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %27967, float* %27968
%27969 = load float*, float** %12
%27970 = getelementptr inbounds float, float* %27969, i64 2
%27971 = load float, float* %27970
%27972 = load float*, float** %10
%27973 = getelementptr inbounds float, float* %27972, i64 2
%27974 = load float, float* %27973
%27975 = fsub float %27971, %27974
%27976 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %27975, float* %27976
%27977 = load float*, float** %8
%27978 = getelementptr inbounds float, float* %27977, i64 0
%27979 = load float, float* %27978
%27980 = load float*, float** %10
%27981 = getelementptr inbounds float, float* %27980, i64 0
%27982 = load float, float* %27981
%27983 = fsub float %27979, %27982
%27984 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %27983, float* %27984
%27985 = load float*, float** %8
%27986 = getelementptr inbounds float, float* %27985, i64 1
%27987 = load float, float* %27986
%27988 = load float*, float** %10
%27989 = getelementptr inbounds float, float* %27988, i64 1
%27990 = load float, float* %27989
%27991 = fsub float %27987, %27990
%27992 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %27991, float* %27992
%27993 = load float*, float** %8
%27994 = getelementptr inbounds float, float* %27993, i64 2
%27995 = load float, float* %27994
%27996 = load float*, float** %10
%27997 = getelementptr inbounds float, float* %27996, i64 2
%27998 = load float, float* %27997
%27999 = fsub float %27995, %27998
%28000 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %27999, float* %28000
%28001 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%28002 = load float, float* %28001
%28003 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%28004 = load float, float* %28003
%28005 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%28006 = load float, float* %28005
%28007 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%28008 = load float, float* %28007
%28009 = fmul float %28006, %28008
%28010 = fneg float %28009
%28011 = call float @llvm.fmuladd.f32(float %28002, float %28004, float %28010)
%28012 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %28011, float* %28012
%28013 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%28014 = load float, float* %28013
%28015 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%28016 = load float, float* %28015
%28017 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%28018 = load float, float* %28017
%28019 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%28020 = load float, float* %28019
%28021 = fmul float %28018, %28020
%28022 = fneg float %28021
%28023 = call float @llvm.fmuladd.f32(float %28014, float %28016, float %28022)
%28024 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %28023, float* %28024
%28025 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%28026 = load float, float* %28025
%28027 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%28028 = load float, float* %28027
%28029 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%28030 = load float, float* %28029
%28031 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%28032 = load float, float* %28031
%28033 = fmul float %28030, %28032
%28034 = fneg float %28033
%28035 = call float @llvm.fmuladd.f32(float %28026, float %28028, float %28034)
%28036 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %28035, float* %28036
%28037 = load float*, float** %11
%28038 = getelementptr inbounds float, float* %28037, i64 0
%28039 = load float, float* %28038
%28040 = load float*, float** %10
%28041 = getelementptr inbounds float, float* %28040, i64 0
%28042 = load float, float* %28041
%28043 = fsub float %28039, %28042
%28044 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %28043, float* %28044
%28045 = load float*, float** %11
%28046 = getelementptr inbounds float, float* %28045, i64 1
%28047 = load float, float* %28046
%28048 = load float*, float** %10
%28049 = getelementptr inbounds float, float* %28048, i64 1
%28050 = load float, float* %28049
%28051 = fsub float %28047, %28050
%28052 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %28051, float* %28052
%28053 = load float*, float** %11
%28054 = getelementptr inbounds float, float* %28053, i64 2
%28055 = load float, float* %28054
%28056 = load float*, float** %10
%28057 = getelementptr inbounds float, float* %28056, i64 2
%28058 = load float, float* %28057
%28059 = fsub float %28055, %28058
%28060 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %28059, float* %28060
%28061 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%28062 = load float, float* %28061
%28063 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%28064 = load float, float* %28063
%28065 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%28066 = load float, float* %28065
%28067 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%28068 = load float, float* %28067
%28069 = fmul float %28066, %28068
%28070 = call float @llvm.fmuladd.f32(float %28062, float %28064, float %28069)
%28071 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%28072 = load float, float* %28071
%28073 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%28074 = load float, float* %28073
%28075 = call float @llvm.fmuladd.f32(float %28072, float %28074, float %28070)
%28076 = fcmp ogt float %28075, 0.000000e+00
br i1 %28076, label %28077, label %28078
28077: ; preds = %27952
store i32 0, i32* %7
br label %37477
28078: ; preds = %27952
%28079 = load float*, float** %12
%28080 = getelementptr inbounds float, float* %28079, i64 0
%28081 = load float, float* %28080
%28082 = load float*, float** %8
%28083 = getelementptr inbounds float, float* %28082, i64 0
%28084 = load float, float* %28083
%28085 = fsub float %28081, %28084
%28086 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %28085, float* %28086
%28087 = load float*, float** %12
%28088 = getelementptr inbounds float, float* %28087, i64 1
%28089 = load float, float* %28088
%28090 = load float*, float** %8
%28091 = getelementptr inbounds float, float* %28090, i64 1
%28092 = load float, float* %28091
%28093 = fsub float %28089, %28092
%28094 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %28093, float* %28094
%28095 = load float*, float** %12
%28096 = getelementptr inbounds float, float* %28095, i64 2
%28097 = load float, float* %28096
%28098 = load float*, float** %8
%28099 = getelementptr inbounds float, float* %28098, i64 2
%28100 = load float, float* %28099
%28101 = fsub float %28097, %28100
%28102 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %28101, float* %28102
%28103 = load float*, float** %9
%28104 = getelementptr inbounds float, float* %28103, i64 0
%28105 = load float, float* %28104
%28106 = load float*, float** %8
%28107 = getelementptr inbounds float, float* %28106, i64 0
%28108 = load float, float* %28107
%28109 = fsub float %28105, %28108
%28110 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %28109, float* %28110
%28111 = load float*, float** %9
%28112 = getelementptr inbounds float, float* %28111, i64 1
%28113 = load float, float* %28112
%28114 = load float*, float** %8
%28115 = getelementptr inbounds float, float* %28114, i64 1
%28116 = load float, float* %28115
%28117 = fsub float %28113, %28116
%28118 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %28117, float* %28118
%28119 = load float*, float** %9
%28120 = getelementptr inbounds float, float* %28119, i64 2
%28121 = load float, float* %28120
%28122 = load float*, float** %8
%28123 = getelementptr inbounds float, float* %28122, i64 2
%28124 = load float, float* %28123
%28125 = fsub float %28121, %28124
%28126 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %28125, float* %28126
%28127 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%28128 = load float, float* %28127
%28129 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%28130 = load float, float* %28129
%28131 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%28132 = load float, float* %28131
%28133 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%28134 = load float, float* %28133
%28135 = fmul float %28132, %28134
%28136 = fneg float %28135
%28137 = call float @llvm.fmuladd.f32(float %28128, float %28130, float %28136)
%28138 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %28137, float* %28138
%28139 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%28140 = load float, float* %28139
%28141 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%28142 = load float, float* %28141
%28143 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%28144 = load float, float* %28143
%28145 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%28146 = load float, float* %28145
%28147 = fmul float %28144, %28146
%28148 = fneg float %28147
%28149 = call float @llvm.fmuladd.f32(float %28140, float %28142, float %28148)
%28150 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %28149, float* %28150
%28151 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%28152 = load float, float* %28151
%28153 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%28154 = load float, float* %28153
%28155 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%28156 = load float, float* %28155
%28157 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%28158 = load float, float* %28157
%28159 = fmul float %28156, %28158
%28160 = fneg float %28159
%28161 = call float @llvm.fmuladd.f32(float %28152, float %28154, float %28160)
%28162 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %28161, float* %28162
%28163 = load float*, float** %13
%28164 = getelementptr inbounds float, float* %28163, i64 0
%28165 = load float, float* %28164
%28166 = load float*, float** %8
%28167 = getelementptr inbounds float, float* %28166, i64 0
%28168 = load float, float* %28167
%28169 = fsub float %28165, %28168
%28170 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %28169, float* %28170
%28171 = load float*, float** %13
%28172 = getelementptr inbounds float, float* %28171, i64 1
%28173 = load float, float* %28172
%28174 = load float*, float** %8
%28175 = getelementptr inbounds float, float* %28174, i64 1
%28176 = load float, float* %28175
%28177 = fsub float %28173, %28176
%28178 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %28177, float* %28178
%28179 = load float*, float** %13
%28180 = getelementptr inbounds float, float* %28179, i64 2
%28181 = load float, float* %28180
%28182 = load float*, float** %8
%28183 = getelementptr inbounds float, float* %28182, i64 2
%28184 = load float, float* %28183
%28185 = fsub float %28181, %28184
%28186 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %28185, float* %28186
%28187 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%28188 = load float, float* %28187
%28189 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%28190 = load float, float* %28189
%28191 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%28192 = load float, float* %28191
%28193 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%28194 = load float, float* %28193
%28195 = fmul float %28192, %28194
%28196 = call float @llvm.fmuladd.f32(float %28188, float %28190, float %28195)
%28197 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%28198 = load float, float* %28197
%28199 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%28200 = load float, float* %28199
%28201 = call float @llvm.fmuladd.f32(float %28198, float %28200, float %28196)
%28202 = fcmp ogt float %28201, 0.000000e+00
br i1 %28202, label %28203, label %28204
28203: ; preds = %28078
store i32 0, i32* %7
br label %37477
28204: ; preds = %28078
store i32 1, i32* %7
br label %37477
28205: ; preds = %27949
%28206 = load float*, float** %8
%28207 = load float*, float** %9
%28208 = load float*, float** %10
%28209 = load float*, float** %11
%28210 = load float*, float** %13
%28211 = load float*, float** %12
%28212 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%28213 = getelementptr inbounds [3 x float], [3 x float]* %23, i64 0, i64 0
%28214 = call i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...) bitcast (i32 (...)* @coplanar_tri_tri3d to i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...)*)(float* %28206, float* %28207, float* %28208, float* %28209, float* %28210, float* %28211, float* %28212, float* %28213)
store i32 %28214, i32* %7
br label %37477
28215: ; preds = %25130
%28216 = load float, float* %17
%28217 = fcmp ogt float %28216, 0.000000e+00
br i1 %28217, label %28218, label %28983
28218: ; preds = %28215
%28219 = load float, float* %18
%28220 = fcmp ogt float %28219, 0.000000e+00
br i1 %28220, label %28221, label %28474
28221: ; preds = %28218
%28222 = load float*, float** %13
%28223 = getelementptr inbounds float, float* %28222, i64 0
%28224 = load float, float* %28223
%28225 = load float*, float** %8
%28226 = getelementptr inbounds float, float* %28225, i64 0
%28227 = load float, float* %28226
%28228 = fsub float %28224, %28227
%28229 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %28228, float* %28229
%28230 = load float*, float** %13
%28231 = getelementptr inbounds float, float* %28230, i64 1
%28232 = load float, float* %28231
%28233 = load float*, float** %8
%28234 = getelementptr inbounds float, float* %28233, i64 1
%28235 = load float, float* %28234
%28236 = fsub float %28232, %28235
%28237 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %28236, float* %28237
%28238 = load float*, float** %13
%28239 = getelementptr inbounds float, float* %28238, i64 2
%28240 = load float, float* %28239
%28241 = load float*, float** %8
%28242 = getelementptr inbounds float, float* %28241, i64 2
%28243 = load float, float* %28242
%28244 = fsub float %28240, %28243
%28245 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %28244, float* %28245
%28246 = load float*, float** %9
%28247 = getelementptr inbounds float, float* %28246, i64 0
%28248 = load float, float* %28247
%28249 = load float*, float** %8
%28250 = getelementptr inbounds float, float* %28249, i64 0
%28251 = load float, float* %28250
%28252 = fsub float %28248, %28251
%28253 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %28252, float* %28253
%28254 = load float*, float** %9
%28255 = getelementptr inbounds float, float* %28254, i64 1
%28256 = load float, float* %28255
%28257 = load float*, float** %8
%28258 = getelementptr inbounds float, float* %28257, i64 1
%28259 = load float, float* %28258
%28260 = fsub float %28256, %28259
%28261 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %28260, float* %28261
%28262 = load float*, float** %9
%28263 = getelementptr inbounds float, float* %28262, i64 2
%28264 = load float, float* %28263
%28265 = load float*, float** %8
%28266 = getelementptr inbounds float, float* %28265, i64 2
%28267 = load float, float* %28266
%28268 = fsub float %28264, %28267
%28269 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %28268, float* %28269
%28270 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%28271 = load float, float* %28270
%28272 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%28273 = load float, float* %28272
%28274 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%28275 = load float, float* %28274
%28276 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%28277 = load float, float* %28276
%28278 = fmul float %28275, %28277
%28279 = fneg float %28278
%28280 = call float @llvm.fmuladd.f32(float %28271, float %28273, float %28279)
%28281 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %28280, float* %28281
%28282 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%28283 = load float, float* %28282
%28284 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%28285 = load float, float* %28284
%28286 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%28287 = load float, float* %28286
%28288 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%28289 = load float, float* %28288
%28290 = fmul float %28287, %28289
%28291 = fneg float %28290
%28292 = call float @llvm.fmuladd.f32(float %28283, float %28285, float %28291)
%28293 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %28292, float* %28293
%28294 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%28295 = load float, float* %28294
%28296 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%28297 = load float, float* %28296
%28298 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%28299 = load float, float* %28298
%28300 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%28301 = load float, float* %28300
%28302 = fmul float %28299, %28301
%28303 = fneg float %28302
%28304 = call float @llvm.fmuladd.f32(float %28295, float %28297, float %28303)
%28305 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %28304, float* %28305
%28306 = load float*, float** %11
%28307 = getelementptr inbounds float, float* %28306, i64 0
%28308 = load float, float* %28307
%28309 = load float*, float** %8
%28310 = getelementptr inbounds float, float* %28309, i64 0
%28311 = load float, float* %28310
%28312 = fsub float %28308, %28311
%28313 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %28312, float* %28313
%28314 = load float*, float** %11
%28315 = getelementptr inbounds float, float* %28314, i64 1
%28316 = load float, float* %28315
%28317 = load float*, float** %8
%28318 = getelementptr inbounds float, float* %28317, i64 1
%28319 = load float, float* %28318
%28320 = fsub float %28316, %28319
%28321 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %28320, float* %28321
%28322 = load float*, float** %11
%28323 = getelementptr inbounds float, float* %28322, i64 2
%28324 = load float, float* %28323
%28325 = load float*, float** %8
%28326 = getelementptr inbounds float, float* %28325, i64 2
%28327 = load float, float* %28326
%28328 = fsub float %28324, %28327
%28329 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %28328, float* %28329
%28330 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%28331 = load float, float* %28330
%28332 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%28333 = load float, float* %28332
%28334 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%28335 = load float, float* %28334
%28336 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%28337 = load float, float* %28336
%28338 = fmul float %28335, %28337
%28339 = call float @llvm.fmuladd.f32(float %28331, float %28333, float %28338)
%28340 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%28341 = load float, float* %28340
%28342 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%28343 = load float, float* %28342
%28344 = call float @llvm.fmuladd.f32(float %28341, float %28343, float %28339)
%28345 = fcmp ogt float %28344, 0.000000e+00
br i1 %28345, label %28346, label %28347
28346: ; preds = %28221
store i32 0, i32* %7
br label %37477
28347: ; preds = %28221
%28348 = load float*, float** %13
%28349 = getelementptr inbounds float, float* %28348, i64 0
%28350 = load float, float* %28349
%28351 = load float*, float** %9
%28352 = getelementptr inbounds float, float* %28351, i64 0
%28353 = load float, float* %28352
%28354 = fsub float %28350, %28353
%28355 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %28354, float* %28355
%28356 = load float*, float** %13
%28357 = getelementptr inbounds float, float* %28356, i64 1
%28358 = load float, float* %28357
%28359 = load float*, float** %9
%28360 = getelementptr inbounds float, float* %28359, i64 1
%28361 = load float, float* %28360
%28362 = fsub float %28358, %28361
%28363 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %28362, float* %28363
%28364 = load float*, float** %13
%28365 = getelementptr inbounds float, float* %28364, i64 2
%28366 = load float, float* %28365
%28367 = load float*, float** %9
%28368 = getelementptr inbounds float, float* %28367, i64 2
%28369 = load float, float* %28368
%28370 = fsub float %28366, %28369
%28371 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %28370, float* %28371
%28372 = load float*, float** %10
%28373 = getelementptr inbounds float, float* %28372, i64 0
%28374 = load float, float* %28373
%28375 = load float*, float** %9
%28376 = getelementptr inbounds float, float* %28375, i64 0
%28377 = load float, float* %28376
%28378 = fsub float %28374, %28377
%28379 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %28378, float* %28379
%28380 = load float*, float** %10
%28381 = getelementptr inbounds float, float* %28380, i64 1
%28382 = load float, float* %28381
%28383 = load float*, float** %9
%28384 = getelementptr inbounds float, float* %28383, i64 1
%28385 = load float, float* %28384
%28386 = fsub float %28382, %28385
%28387 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %28386, float* %28387
%28388 = load float*, float** %10
%28389 = getelementptr inbounds float, float* %28388, i64 2
%28390 = load float, float* %28389
%28391 = load float*, float** %9
%28392 = getelementptr inbounds float, float* %28391, i64 2
%28393 = load float, float* %28392
%28394 = fsub float %28390, %28393
%28395 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %28394, float* %28395
%28396 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%28397 = load float, float* %28396
%28398 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%28399 = load float, float* %28398
%28400 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%28401 = load float, float* %28400
%28402 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%28403 = load float, float* %28402
%28404 = fmul float %28401, %28403
%28405 = fneg float %28404
%28406 = call float @llvm.fmuladd.f32(float %28397, float %28399, float %28405)
%28407 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %28406, float* %28407
%28408 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%28409 = load float, float* %28408
%28410 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%28411 = load float, float* %28410
%28412 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%28413 = load float, float* %28412
%28414 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%28415 = load float, float* %28414
%28416 = fmul float %28413, %28415
%28417 = fneg float %28416
%28418 = call float @llvm.fmuladd.f32(float %28409, float %28411, float %28417)
%28419 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %28418, float* %28419
%28420 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%28421 = load float, float* %28420
%28422 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%28423 = load float, float* %28422
%28424 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%28425 = load float, float* %28424
%28426 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%28427 = load float, float* %28426
%28428 = fmul float %28425, %28427
%28429 = fneg float %28428
%28430 = call float @llvm.fmuladd.f32(float %28421, float %28423, float %28429)
%28431 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %28430, float* %28431
%28432 = load float*, float** %12
%28433 = getelementptr inbounds float, float* %28432, i64 0
%28434 = load float, float* %28433
%28435 = load float*, float** %9
%28436 = getelementptr inbounds float, float* %28435, i64 0
%28437 = load float, float* %28436
%28438 = fsub float %28434, %28437
%28439 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %28438, float* %28439
%28440 = load float*, float** %12
%28441 = getelementptr inbounds float, float* %28440, i64 1
%28442 = load float, float* %28441
%28443 = load float*, float** %9
%28444 = getelementptr inbounds float, float* %28443, i64 1
%28445 = load float, float* %28444
%28446 = fsub float %28442, %28445
%28447 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %28446, float* %28447
%28448 = load float*, float** %12
%28449 = getelementptr inbounds float, float* %28448, i64 2
%28450 = load float, float* %28449
%28451 = load float*, float** %9
%28452 = getelementptr inbounds float, float* %28451, i64 2
%28453 = load float, float* %28452
%28454 = fsub float %28450, %28453
%28455 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %28454, float* %28455
%28456 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%28457 = load float, float* %28456
%28458 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%28459 = load float, float* %28458
%28460 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%28461 = load float, float* %28460
%28462 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%28463 = load float, float* %28462
%28464 = fmul float %28461, %28463
%28465 = call float @llvm.fmuladd.f32(float %28457, float %28459, float %28464)
%28466 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%28467 = load float, float* %28466
%28468 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%28469 = load float, float* %28468
%28470 = call float @llvm.fmuladd.f32(float %28467, float %28469, float %28465)
%28471 = fcmp ogt float %28470, 0.000000e+00
br i1 %28471, label %28472, label %28473
28472: ; preds = %28347
store i32 0, i32* %7
br label %37477
28473: ; preds = %28347
store i32 1, i32* %7
br label %37477
28474: ; preds = %28218
%28475 = load float, float* %19
%28476 = fcmp ogt float %28475, 0.000000e+00
br i1 %28476, label %28477, label %28730
28477: ; preds = %28474
%28478 = load float*, float** %12
%28479 = getelementptr inbounds float, float* %28478, i64 0
%28480 = load float, float* %28479
%28481 = load float*, float** %8
%28482 = getelementptr inbounds float, float* %28481, i64 0
%28483 = load float, float* %28482
%28484 = fsub float %28480, %28483
%28485 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %28484, float* %28485
%28486 = load float*, float** %12
%28487 = getelementptr inbounds float, float* %28486, i64 1
%28488 = load float, float* %28487
%28489 = load float*, float** %8
%28490 = getelementptr inbounds float, float* %28489, i64 1
%28491 = load float, float* %28490
%28492 = fsub float %28488, %28491
%28493 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %28492, float* %28493
%28494 = load float*, float** %12
%28495 = getelementptr inbounds float, float* %28494, i64 2
%28496 = load float, float* %28495
%28497 = load float*, float** %8
%28498 = getelementptr inbounds float, float* %28497, i64 2
%28499 = load float, float* %28498
%28500 = fsub float %28496, %28499
%28501 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %28500, float* %28501
%28502 = load float*, float** %9
%28503 = getelementptr inbounds float, float* %28502, i64 0
%28504 = load float, float* %28503
%28505 = load float*, float** %8
%28506 = getelementptr inbounds float, float* %28505, i64 0
%28507 = load float, float* %28506
%28508 = fsub float %28504, %28507
%28509 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %28508, float* %28509
%28510 = load float*, float** %9
%28511 = getelementptr inbounds float, float* %28510, i64 1
%28512 = load float, float* %28511
%28513 = load float*, float** %8
%28514 = getelementptr inbounds float, float* %28513, i64 1
%28515 = load float, float* %28514
%28516 = fsub float %28512, %28515
%28517 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %28516, float* %28517
%28518 = load float*, float** %9
%28519 = getelementptr inbounds float, float* %28518, i64 2
%28520 = load float, float* %28519
%28521 = load float*, float** %8
%28522 = getelementptr inbounds float, float* %28521, i64 2
%28523 = load float, float* %28522
%28524 = fsub float %28520, %28523
%28525 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %28524, float* %28525
%28526 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%28527 = load float, float* %28526
%28528 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%28529 = load float, float* %28528
%28530 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%28531 = load float, float* %28530
%28532 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%28533 = load float, float* %28532
%28534 = fmul float %28531, %28533
%28535 = fneg float %28534
%28536 = call float @llvm.fmuladd.f32(float %28527, float %28529, float %28535)
%28537 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %28536, float* %28537
%28538 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%28539 = load float, float* %28538
%28540 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%28541 = load float, float* %28540
%28542 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%28543 = load float, float* %28542
%28544 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%28545 = load float, float* %28544
%28546 = fmul float %28543, %28545
%28547 = fneg float %28546
%28548 = call float @llvm.fmuladd.f32(float %28539, float %28541, float %28547)
%28549 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %28548, float* %28549
%28550 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%28551 = load float, float* %28550
%28552 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%28553 = load float, float* %28552
%28554 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%28555 = load float, float* %28554
%28556 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%28557 = load float, float* %28556
%28558 = fmul float %28555, %28557
%28559 = fneg float %28558
%28560 = call float @llvm.fmuladd.f32(float %28551, float %28553, float %28559)
%28561 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %28560, float* %28561
%28562 = load float*, float** %13
%28563 = getelementptr inbounds float, float* %28562, i64 0
%28564 = load float, float* %28563
%28565 = load float*, float** %8
%28566 = getelementptr inbounds float, float* %28565, i64 0
%28567 = load float, float* %28566
%28568 = fsub float %28564, %28567
%28569 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %28568, float* %28569
%28570 = load float*, float** %13
%28571 = getelementptr inbounds float, float* %28570, i64 1
%28572 = load float, float* %28571
%28573 = load float*, float** %8
%28574 = getelementptr inbounds float, float* %28573, i64 1
%28575 = load float, float* %28574
%28576 = fsub float %28572, %28575
%28577 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %28576, float* %28577
%28578 = load float*, float** %13
%28579 = getelementptr inbounds float, float* %28578, i64 2
%28580 = load float, float* %28579
%28581 = load float*, float** %8
%28582 = getelementptr inbounds float, float* %28581, i64 2
%28583 = load float, float* %28582
%28584 = fsub float %28580, %28583
%28585 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %28584, float* %28585
%28586 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%28587 = load float, float* %28586
%28588 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%28589 = load float, float* %28588
%28590 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%28591 = load float, float* %28590
%28592 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%28593 = load float, float* %28592
%28594 = fmul float %28591, %28593
%28595 = call float @llvm.fmuladd.f32(float %28587, float %28589, float %28594)
%28596 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%28597 = load float, float* %28596
%28598 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%28599 = load float, float* %28598
%28600 = call float @llvm.fmuladd.f32(float %28597, float %28599, float %28595)
%28601 = fcmp ogt float %28600, 0.000000e+00
br i1 %28601, label %28602, label %28603
28602: ; preds = %28477
store i32 0, i32* %7
br label %37477
28603: ; preds = %28477
%28604 = load float*, float** %12
%28605 = getelementptr inbounds float, float* %28604, i64 0
%28606 = load float, float* %28605
%28607 = load float*, float** %9
%28608 = getelementptr inbounds float, float* %28607, i64 0
%28609 = load float, float* %28608
%28610 = fsub float %28606, %28609
%28611 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %28610, float* %28611
%28612 = load float*, float** %12
%28613 = getelementptr inbounds float, float* %28612, i64 1
%28614 = load float, float* %28613
%28615 = load float*, float** %9
%28616 = getelementptr inbounds float, float* %28615, i64 1
%28617 = load float, float* %28616
%28618 = fsub float %28614, %28617
%28619 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %28618, float* %28619
%28620 = load float*, float** %12
%28621 = getelementptr inbounds float, float* %28620, i64 2
%28622 = load float, float* %28621
%28623 = load float*, float** %9
%28624 = getelementptr inbounds float, float* %28623, i64 2
%28625 = load float, float* %28624
%28626 = fsub float %28622, %28625
%28627 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %28626, float* %28627
%28628 = load float*, float** %10
%28629 = getelementptr inbounds float, float* %28628, i64 0
%28630 = load float, float* %28629
%28631 = load float*, float** %9
%28632 = getelementptr inbounds float, float* %28631, i64 0
%28633 = load float, float* %28632
%28634 = fsub float %28630, %28633
%28635 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %28634, float* %28635
%28636 = load float*, float** %10
%28637 = getelementptr inbounds float, float* %28636, i64 1
%28638 = load float, float* %28637
%28639 = load float*, float** %9
%28640 = getelementptr inbounds float, float* %28639, i64 1
%28641 = load float, float* %28640
%28642 = fsub float %28638, %28641
%28643 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %28642, float* %28643
%28644 = load float*, float** %10
%28645 = getelementptr inbounds float, float* %28644, i64 2
%28646 = load float, float* %28645
%28647 = load float*, float** %9
%28648 = getelementptr inbounds float, float* %28647, i64 2
%28649 = load float, float* %28648
%28650 = fsub float %28646, %28649
%28651 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %28650, float* %28651
%28652 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%28653 = load float, float* %28652
%28654 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%28655 = load float, float* %28654
%28656 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%28657 = load float, float* %28656
%28658 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%28659 = load float, float* %28658
%28660 = fmul float %28657, %28659
%28661 = fneg float %28660
%28662 = call float @llvm.fmuladd.f32(float %28653, float %28655, float %28661)
%28663 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %28662, float* %28663
%28664 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%28665 = load float, float* %28664
%28666 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%28667 = load float, float* %28666
%28668 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%28669 = load float, float* %28668
%28670 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%28671 = load float, float* %28670
%28672 = fmul float %28669, %28671
%28673 = fneg float %28672
%28674 = call float @llvm.fmuladd.f32(float %28665, float %28667, float %28673)
%28675 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %28674, float* %28675
%28676 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%28677 = load float, float* %28676
%28678 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%28679 = load float, float* %28678
%28680 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%28681 = load float, float* %28680
%28682 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%28683 = load float, float* %28682
%28684 = fmul float %28681, %28683
%28685 = fneg float %28684
%28686 = call float @llvm.fmuladd.f32(float %28677, float %28679, float %28685)
%28687 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %28686, float* %28687
%28688 = load float*, float** %11
%28689 = getelementptr inbounds float, float* %28688, i64 0
%28690 = load float, float* %28689
%28691 = load float*, float** %9
%28692 = getelementptr inbounds float, float* %28691, i64 0
%28693 = load float, float* %28692
%28694 = fsub float %28690, %28693
%28695 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %28694, float* %28695
%28696 = load float*, float** %11
%28697 = getelementptr inbounds float, float* %28696, i64 1
%28698 = load float, float* %28697
%28699 = load float*, float** %9
%28700 = getelementptr inbounds float, float* %28699, i64 1
%28701 = load float, float* %28700
%28702 = fsub float %28698, %28701
%28703 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %28702, float* %28703
%28704 = load float*, float** %11
%28705 = getelementptr inbounds float, float* %28704, i64 2
%28706 = load float, float* %28705
%28707 = load float*, float** %9
%28708 = getelementptr inbounds float, float* %28707, i64 2
%28709 = load float, float* %28708
%28710 = fsub float %28706, %28709
%28711 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %28710, float* %28711
%28712 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%28713 = load float, float* %28712
%28714 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%28715 = load float, float* %28714
%28716 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%28717 = load float, float* %28716
%28718 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%28719 = load float, float* %28718
%28720 = fmul float %28717, %28719
%28721 = call float @llvm.fmuladd.f32(float %28713, float %28715, float %28720)
%28722 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%28723 = load float, float* %28722
%28724 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%28725 = load float, float* %28724
%28726 = call float @llvm.fmuladd.f32(float %28723, float %28725, float %28721)
%28727 = fcmp ogt float %28726, 0.000000e+00
br i1 %28727, label %28728, label %28729
28728: ; preds = %28603
store i32 0, i32* %7
br label %37477
28729: ; preds = %28603
store i32 1, i32* %7
br label %37477
28730: ; preds = %28474
%28731 = load float*, float** %11
%28732 = getelementptr inbounds float, float* %28731, i64 0
%28733 = load float, float* %28732
%28734 = load float*, float** %10
%28735 = getelementptr inbounds float, float* %28734, i64 0
%28736 = load float, float* %28735
%28737 = fsub float %28733, %28736
%28738 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %28737, float* %28738
%28739 = load float*, float** %11
%28740 = getelementptr inbounds float, float* %28739, i64 1
%28741 = load float, float* %28740
%28742 = load float*, float** %10
%28743 = getelementptr inbounds float, float* %28742, i64 1
%28744 = load float, float* %28743
%28745 = fsub float %28741, %28744
%28746 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %28745, float* %28746
%28747 = load float*, float** %11
%28748 = getelementptr inbounds float, float* %28747, i64 2
%28749 = load float, float* %28748
%28750 = load float*, float** %10
%28751 = getelementptr inbounds float, float* %28750, i64 2
%28752 = load float, float* %28751
%28753 = fsub float %28749, %28752
%28754 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %28753, float* %28754
%28755 = load float*, float** %9
%28756 = getelementptr inbounds float, float* %28755, i64 0
%28757 = load float, float* %28756
%28758 = load float*, float** %10
%28759 = getelementptr inbounds float, float* %28758, i64 0
%28760 = load float, float* %28759
%28761 = fsub float %28757, %28760
%28762 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %28761, float* %28762
%28763 = load float*, float** %9
%28764 = getelementptr inbounds float, float* %28763, i64 1
%28765 = load float, float* %28764
%28766 = load float*, float** %10
%28767 = getelementptr inbounds float, float* %28766, i64 1
%28768 = load float, float* %28767
%28769 = fsub float %28765, %28768
%28770 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %28769, float* %28770
%28771 = load float*, float** %9
%28772 = getelementptr inbounds float, float* %28771, i64 2
%28773 = load float, float* %28772
%28774 = load float*, float** %10
%28775 = getelementptr inbounds float, float* %28774, i64 2
%28776 = load float, float* %28775
%28777 = fsub float %28773, %28776
%28778 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %28777, float* %28778
%28779 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%28780 = load float, float* %28779
%28781 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%28782 = load float, float* %28781
%28783 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%28784 = load float, float* %28783
%28785 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%28786 = load float, float* %28785
%28787 = fmul float %28784, %28786
%28788 = fneg float %28787
%28789 = call float @llvm.fmuladd.f32(float %28780, float %28782, float %28788)
%28790 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %28789, float* %28790
%28791 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%28792 = load float, float* %28791
%28793 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%28794 = load float, float* %28793
%28795 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%28796 = load float, float* %28795
%28797 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%28798 = load float, float* %28797
%28799 = fmul float %28796, %28798
%28800 = fneg float %28799
%28801 = call float @llvm.fmuladd.f32(float %28792, float %28794, float %28800)
%28802 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %28801, float* %28802
%28803 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%28804 = load float, float* %28803
%28805 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%28806 = load float, float* %28805
%28807 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%28808 = load float, float* %28807
%28809 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%28810 = load float, float* %28809
%28811 = fmul float %28808, %28810
%28812 = fneg float %28811
%28813 = call float @llvm.fmuladd.f32(float %28804, float %28806, float %28812)
%28814 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %28813, float* %28814
%28815 = load float*, float** %12
%28816 = getelementptr inbounds float, float* %28815, i64 0
%28817 = load float, float* %28816
%28818 = load float*, float** %10
%28819 = getelementptr inbounds float, float* %28818, i64 0
%28820 = load float, float* %28819
%28821 = fsub float %28817, %28820
%28822 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %28821, float* %28822
%28823 = load float*, float** %12
%28824 = getelementptr inbounds float, float* %28823, i64 1
%28825 = load float, float* %28824
%28826 = load float*, float** %10
%28827 = getelementptr inbounds float, float* %28826, i64 1
%28828 = load float, float* %28827
%28829 = fsub float %28825, %28828
%28830 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %28829, float* %28830
%28831 = load float*, float** %12
%28832 = getelementptr inbounds float, float* %28831, i64 2
%28833 = load float, float* %28832
%28834 = load float*, float** %10
%28835 = getelementptr inbounds float, float* %28834, i64 2
%28836 = load float, float* %28835
%28837 = fsub float %28833, %28836
%28838 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %28837, float* %28838
%28839 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%28840 = load float, float* %28839
%28841 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%28842 = load float, float* %28841
%28843 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%28844 = load float, float* %28843
%28845 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%28846 = load float, float* %28845
%28847 = fmul float %28844, %28846
%28848 = call float @llvm.fmuladd.f32(float %28840, float %28842, float %28847)
%28849 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%28850 = load float, float* %28849
%28851 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%28852 = load float, float* %28851
%28853 = call float @llvm.fmuladd.f32(float %28850, float %28852, float %28848)
%28854 = fcmp ogt float %28853, 0.000000e+00
br i1 %28854, label %28855, label %28856
28855: ; preds = %28730
store i32 0, i32* %7
br label %37477
28856: ; preds = %28730
%28857 = load float*, float** %11
%28858 = getelementptr inbounds float, float* %28857, i64 0
%28859 = load float, float* %28858
%28860 = load float*, float** %9
%28861 = getelementptr inbounds float, float* %28860, i64 0
%28862 = load float, float* %28861
%28863 = fsub float %28859, %28862
%28864 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %28863, float* %28864
%28865 = load float*, float** %11
%28866 = getelementptr inbounds float, float* %28865, i64 1
%28867 = load float, float* %28866
%28868 = load float*, float** %9
%28869 = getelementptr inbounds float, float* %28868, i64 1
%28870 = load float, float* %28869
%28871 = fsub float %28867, %28870
%28872 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %28871, float* %28872
%28873 = load float*, float** %11
%28874 = getelementptr inbounds float, float* %28873, i64 2
%28875 = load float, float* %28874
%28876 = load float*, float** %9
%28877 = getelementptr inbounds float, float* %28876, i64 2
%28878 = load float, float* %28877
%28879 = fsub float %28875, %28878
%28880 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %28879, float* %28880
%28881 = load float*, float** %8
%28882 = getelementptr inbounds float, float* %28881, i64 0
%28883 = load float, float* %28882
%28884 = load float*, float** %9
%28885 = getelementptr inbounds float, float* %28884, i64 0
%28886 = load float, float* %28885
%28887 = fsub float %28883, %28886
%28888 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %28887, float* %28888
%28889 = load float*, float** %8
%28890 = getelementptr inbounds float, float* %28889, i64 1
%28891 = load float, float* %28890
%28892 = load float*, float** %9
%28893 = getelementptr inbounds float, float* %28892, i64 1
%28894 = load float, float* %28893
%28895 = fsub float %28891, %28894
%28896 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %28895, float* %28896
%28897 = load float*, float** %8
%28898 = getelementptr inbounds float, float* %28897, i64 2
%28899 = load float, float* %28898
%28900 = load float*, float** %9
%28901 = getelementptr inbounds float, float* %28900, i64 2
%28902 = load float, float* %28901
%28903 = fsub float %28899, %28902
%28904 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %28903, float* %28904
%28905 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%28906 = load float, float* %28905
%28907 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%28908 = load float, float* %28907
%28909 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%28910 = load float, float* %28909
%28911 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%28912 = load float, float* %28911
%28913 = fmul float %28910, %28912
%28914 = fneg float %28913
%28915 = call float @llvm.fmuladd.f32(float %28906, float %28908, float %28914)
%28916 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %28915, float* %28916
%28917 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%28918 = load float, float* %28917
%28919 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%28920 = load float, float* %28919
%28921 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%28922 = load float, float* %28921
%28923 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%28924 = load float, float* %28923
%28925 = fmul float %28922, %28924
%28926 = fneg float %28925
%28927 = call float @llvm.fmuladd.f32(float %28918, float %28920, float %28926)
%28928 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %28927, float* %28928
%28929 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%28930 = load float, float* %28929
%28931 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%28932 = load float, float* %28931
%28933 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%28934 = load float, float* %28933
%28935 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%28936 = load float, float* %28935
%28937 = fmul float %28934, %28936
%28938 = fneg float %28937
%28939 = call float @llvm.fmuladd.f32(float %28930, float %28932, float %28938)
%28940 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %28939, float* %28940
%28941 = load float*, float** %13
%28942 = getelementptr inbounds float, float* %28941, i64 0
%28943 = load float, float* %28942
%28944 = load float*, float** %9
%28945 = getelementptr inbounds float, float* %28944, i64 0
%28946 = load float, float* %28945
%28947 = fsub float %28943, %28946
%28948 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %28947, float* %28948
%28949 = load float*, float** %13
%28950 = getelementptr inbounds float, float* %28949, i64 1
%28951 = load float, float* %28950
%28952 = load float*, float** %9
%28953 = getelementptr inbounds float, float* %28952, i64 1
%28954 = load float, float* %28953
%28955 = fsub float %28951, %28954
%28956 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %28955, float* %28956
%28957 = load float*, float** %13
%28958 = getelementptr inbounds float, float* %28957, i64 2
%28959 = load float, float* %28958
%28960 = load float*, float** %9
%28961 = getelementptr inbounds float, float* %28960, i64 2
%28962 = load float, float* %28961
%28963 = fsub float %28959, %28962
%28964 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %28963, float* %28964
%28965 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%28966 = load float, float* %28965
%28967 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%28968 = load float, float* %28967
%28969 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%28970 = load float, float* %28969
%28971 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%28972 = load float, float* %28971
%28973 = fmul float %28970, %28972
%28974 = call float @llvm.fmuladd.f32(float %28966, float %28968, float %28973)
%28975 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%28976 = load float, float* %28975
%28977 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%28978 = load float, float* %28977
%28979 = call float @llvm.fmuladd.f32(float %28976, float %28978, float %28974)
%28980 = fcmp ogt float %28979, 0.000000e+00
br i1 %28980, label %28981, label %28982
28981: ; preds = %28856
store i32 0, i32* %7
br label %37477
28982: ; preds = %28856
store i32 1, i32* %7
br label %37477
28983: ; preds = %28215
%28984 = load float, float* %17
%28985 = fcmp olt float %28984, 0.000000e+00
br i1 %28985, label %28986, label %29751
28986: ; preds = %28983
%28987 = load float, float* %18
%28988 = fcmp olt float %28987, 0.000000e+00
br i1 %28988, label %28989, label %29242
28989: ; preds = %28986
%28990 = load float*, float** %13
%28991 = getelementptr inbounds float, float* %28990, i64 0
%28992 = load float, float* %28991
%28993 = load float*, float** %10
%28994 = getelementptr inbounds float, float* %28993, i64 0
%28995 = load float, float* %28994
%28996 = fsub float %28992, %28995
%28997 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %28996, float* %28997
%28998 = load float*, float** %13
%28999 = getelementptr inbounds float, float* %28998, i64 1
%29000 = load float, float* %28999
%29001 = load float*, float** %10
%29002 = getelementptr inbounds float, float* %29001, i64 1
%29003 = load float, float* %29002
%29004 = fsub float %29000, %29003
%29005 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %29004, float* %29005
%29006 = load float*, float** %13
%29007 = getelementptr inbounds float, float* %29006, i64 2
%29008 = load float, float* %29007
%29009 = load float*, float** %10
%29010 = getelementptr inbounds float, float* %29009, i64 2
%29011 = load float, float* %29010
%29012 = fsub float %29008, %29011
%29013 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %29012, float* %29013
%29014 = load float*, float** %9
%29015 = getelementptr inbounds float, float* %29014, i64 0
%29016 = load float, float* %29015
%29017 = load float*, float** %10
%29018 = getelementptr inbounds float, float* %29017, i64 0
%29019 = load float, float* %29018
%29020 = fsub float %29016, %29019
%29021 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %29020, float* %29021
%29022 = load float*, float** %9
%29023 = getelementptr inbounds float, float* %29022, i64 1
%29024 = load float, float* %29023
%29025 = load float*, float** %10
%29026 = getelementptr inbounds float, float* %29025, i64 1
%29027 = load float, float* %29026
%29028 = fsub float %29024, %29027
%29029 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %29028, float* %29029
%29030 = load float*, float** %9
%29031 = getelementptr inbounds float, float* %29030, i64 2
%29032 = load float, float* %29031
%29033 = load float*, float** %10
%29034 = getelementptr inbounds float, float* %29033, i64 2
%29035 = load float, float* %29034
%29036 = fsub float %29032, %29035
%29037 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %29036, float* %29037
%29038 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%29039 = load float, float* %29038
%29040 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%29041 = load float, float* %29040
%29042 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%29043 = load float, float* %29042
%29044 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%29045 = load float, float* %29044
%29046 = fmul float %29043, %29045
%29047 = fneg float %29046
%29048 = call float @llvm.fmuladd.f32(float %29039, float %29041, float %29047)
%29049 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %29048, float* %29049
%29050 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%29051 = load float, float* %29050
%29052 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%29053 = load float, float* %29052
%29054 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%29055 = load float, float* %29054
%29056 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%29057 = load float, float* %29056
%29058 = fmul float %29055, %29057
%29059 = fneg float %29058
%29060 = call float @llvm.fmuladd.f32(float %29051, float %29053, float %29059)
%29061 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %29060, float* %29061
%29062 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%29063 = load float, float* %29062
%29064 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%29065 = load float, float* %29064
%29066 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%29067 = load float, float* %29066
%29068 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%29069 = load float, float* %29068
%29070 = fmul float %29067, %29069
%29071 = fneg float %29070
%29072 = call float @llvm.fmuladd.f32(float %29063, float %29065, float %29071)
%29073 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %29072, float* %29073
%29074 = load float*, float** %11
%29075 = getelementptr inbounds float, float* %29074, i64 0
%29076 = load float, float* %29075
%29077 = load float*, float** %10
%29078 = getelementptr inbounds float, float* %29077, i64 0
%29079 = load float, float* %29078
%29080 = fsub float %29076, %29079
%29081 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %29080, float* %29081
%29082 = load float*, float** %11
%29083 = getelementptr inbounds float, float* %29082, i64 1
%29084 = load float, float* %29083
%29085 = load float*, float** %10
%29086 = getelementptr inbounds float, float* %29085, i64 1
%29087 = load float, float* %29086
%29088 = fsub float %29084, %29087
%29089 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %29088, float* %29089
%29090 = load float*, float** %11
%29091 = getelementptr inbounds float, float* %29090, i64 2
%29092 = load float, float* %29091
%29093 = load float*, float** %10
%29094 = getelementptr inbounds float, float* %29093, i64 2
%29095 = load float, float* %29094
%29096 = fsub float %29092, %29095
%29097 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %29096, float* %29097
%29098 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%29099 = load float, float* %29098
%29100 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%29101 = load float, float* %29100
%29102 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%29103 = load float, float* %29102
%29104 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%29105 = load float, float* %29104
%29106 = fmul float %29103, %29105
%29107 = call float @llvm.fmuladd.f32(float %29099, float %29101, float %29106)
%29108 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%29109 = load float, float* %29108
%29110 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%29111 = load float, float* %29110
%29112 = call float @llvm.fmuladd.f32(float %29109, float %29111, float %29107)
%29113 = fcmp ogt float %29112, 0.000000e+00
br i1 %29113, label %29114, label %29115
29114: ; preds = %28989
store i32 0, i32* %7
br label %37477
29115: ; preds = %28989
%29116 = load float*, float** %13
%29117 = getelementptr inbounds float, float* %29116, i64 0
%29118 = load float, float* %29117
%29119 = load float*, float** %9
%29120 = getelementptr inbounds float, float* %29119, i64 0
%29121 = load float, float* %29120
%29122 = fsub float %29118, %29121
%29123 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %29122, float* %29123
%29124 = load float*, float** %13
%29125 = getelementptr inbounds float, float* %29124, i64 1
%29126 = load float, float* %29125
%29127 = load float*, float** %9
%29128 = getelementptr inbounds float, float* %29127, i64 1
%29129 = load float, float* %29128
%29130 = fsub float %29126, %29129
%29131 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %29130, float* %29131
%29132 = load float*, float** %13
%29133 = getelementptr inbounds float, float* %29132, i64 2
%29134 = load float, float* %29133
%29135 = load float*, float** %9
%29136 = getelementptr inbounds float, float* %29135, i64 2
%29137 = load float, float* %29136
%29138 = fsub float %29134, %29137
%29139 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %29138, float* %29139
%29140 = load float*, float** %8
%29141 = getelementptr inbounds float, float* %29140, i64 0
%29142 = load float, float* %29141
%29143 = load float*, float** %9
%29144 = getelementptr inbounds float, float* %29143, i64 0
%29145 = load float, float* %29144
%29146 = fsub float %29142, %29145
%29147 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %29146, float* %29147
%29148 = load float*, float** %8
%29149 = getelementptr inbounds float, float* %29148, i64 1
%29150 = load float, float* %29149
%29151 = load float*, float** %9
%29152 = getelementptr inbounds float, float* %29151, i64 1
%29153 = load float, float* %29152
%29154 = fsub float %29150, %29153
%29155 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %29154, float* %29155
%29156 = load float*, float** %8
%29157 = getelementptr inbounds float, float* %29156, i64 2
%29158 = load float, float* %29157
%29159 = load float*, float** %9
%29160 = getelementptr inbounds float, float* %29159, i64 2
%29161 = load float, float* %29160
%29162 = fsub float %29158, %29161
%29163 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %29162, float* %29163
%29164 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%29165 = load float, float* %29164
%29166 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%29167 = load float, float* %29166
%29168 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%29169 = load float, float* %29168
%29170 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%29171 = load float, float* %29170
%29172 = fmul float %29169, %29171
%29173 = fneg float %29172
%29174 = call float @llvm.fmuladd.f32(float %29165, float %29167, float %29173)
%29175 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %29174, float* %29175
%29176 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%29177 = load float, float* %29176
%29178 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%29179 = load float, float* %29178
%29180 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%29181 = load float, float* %29180
%29182 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%29183 = load float, float* %29182
%29184 = fmul float %29181, %29183
%29185 = fneg float %29184
%29186 = call float @llvm.fmuladd.f32(float %29177, float %29179, float %29185)
%29187 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %29186, float* %29187
%29188 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%29189 = load float, float* %29188
%29190 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%29191 = load float, float* %29190
%29192 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%29193 = load float, float* %29192
%29194 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%29195 = load float, float* %29194
%29196 = fmul float %29193, %29195
%29197 = fneg float %29196
%29198 = call float @llvm.fmuladd.f32(float %29189, float %29191, float %29197)
%29199 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %29198, float* %29199
%29200 = load float*, float** %12
%29201 = getelementptr inbounds float, float* %29200, i64 0
%29202 = load float, float* %29201
%29203 = load float*, float** %9
%29204 = getelementptr inbounds float, float* %29203, i64 0
%29205 = load float, float* %29204
%29206 = fsub float %29202, %29205
%29207 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %29206, float* %29207
%29208 = load float*, float** %12
%29209 = getelementptr inbounds float, float* %29208, i64 1
%29210 = load float, float* %29209
%29211 = load float*, float** %9
%29212 = getelementptr inbounds float, float* %29211, i64 1
%29213 = load float, float* %29212
%29214 = fsub float %29210, %29213
%29215 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %29214, float* %29215
%29216 = load float*, float** %12
%29217 = getelementptr inbounds float, float* %29216, i64 2
%29218 = load float, float* %29217
%29219 = load float*, float** %9
%29220 = getelementptr inbounds float, float* %29219, i64 2
%29221 = load float, float* %29220
%29222 = fsub float %29218, %29221
%29223 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %29222, float* %29223
%29224 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%29225 = load float, float* %29224
%29226 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%29227 = load float, float* %29226
%29228 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%29229 = load float, float* %29228
%29230 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%29231 = load float, float* %29230
%29232 = fmul float %29229, %29231
%29233 = call float @llvm.fmuladd.f32(float %29225, float %29227, float %29232)
%29234 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%29235 = load float, float* %29234
%29236 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%29237 = load float, float* %29236
%29238 = call float @llvm.fmuladd.f32(float %29235, float %29237, float %29233)
%29239 = fcmp ogt float %29238, 0.000000e+00
br i1 %29239, label %29240, label %29241
29240: ; preds = %29115
store i32 0, i32* %7
br label %37477
29241: ; preds = %29115
store i32 1, i32* %7
br label %37477
29242: ; preds = %28986
%29243 = load float, float* %19
%29244 = fcmp olt float %29243, 0.000000e+00
br i1 %29244, label %29245, label %29498
29245: ; preds = %29242
%29246 = load float*, float** %12
%29247 = getelementptr inbounds float, float* %29246, i64 0
%29248 = load float, float* %29247
%29249 = load float*, float** %10
%29250 = getelementptr inbounds float, float* %29249, i64 0
%29251 = load float, float* %29250
%29252 = fsub float %29248, %29251
%29253 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %29252, float* %29253
%29254 = load float*, float** %12
%29255 = getelementptr inbounds float, float* %29254, i64 1
%29256 = load float, float* %29255
%29257 = load float*, float** %10
%29258 = getelementptr inbounds float, float* %29257, i64 1
%29259 = load float, float* %29258
%29260 = fsub float %29256, %29259
%29261 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %29260, float* %29261
%29262 = load float*, float** %12
%29263 = getelementptr inbounds float, float* %29262, i64 2
%29264 = load float, float* %29263
%29265 = load float*, float** %10
%29266 = getelementptr inbounds float, float* %29265, i64 2
%29267 = load float, float* %29266
%29268 = fsub float %29264, %29267
%29269 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %29268, float* %29269
%29270 = load float*, float** %9
%29271 = getelementptr inbounds float, float* %29270, i64 0
%29272 = load float, float* %29271
%29273 = load float*, float** %10
%29274 = getelementptr inbounds float, float* %29273, i64 0
%29275 = load float, float* %29274
%29276 = fsub float %29272, %29275
%29277 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %29276, float* %29277
%29278 = load float*, float** %9
%29279 = getelementptr inbounds float, float* %29278, i64 1
%29280 = load float, float* %29279
%29281 = load float*, float** %10
%29282 = getelementptr inbounds float, float* %29281, i64 1
%29283 = load float, float* %29282
%29284 = fsub float %29280, %29283
%29285 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %29284, float* %29285
%29286 = load float*, float** %9
%29287 = getelementptr inbounds float, float* %29286, i64 2
%29288 = load float, float* %29287
%29289 = load float*, float** %10
%29290 = getelementptr inbounds float, float* %29289, i64 2
%29291 = load float, float* %29290
%29292 = fsub float %29288, %29291
%29293 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %29292, float* %29293
%29294 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%29295 = load float, float* %29294
%29296 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%29297 = load float, float* %29296
%29298 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%29299 = load float, float* %29298
%29300 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%29301 = load float, float* %29300
%29302 = fmul float %29299, %29301
%29303 = fneg float %29302
%29304 = call float @llvm.fmuladd.f32(float %29295, float %29297, float %29303)
%29305 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %29304, float* %29305
%29306 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%29307 = load float, float* %29306
%29308 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%29309 = load float, float* %29308
%29310 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%29311 = load float, float* %29310
%29312 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%29313 = load float, float* %29312
%29314 = fmul float %29311, %29313
%29315 = fneg float %29314
%29316 = call float @llvm.fmuladd.f32(float %29307, float %29309, float %29315)
%29317 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %29316, float* %29317
%29318 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%29319 = load float, float* %29318
%29320 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%29321 = load float, float* %29320
%29322 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%29323 = load float, float* %29322
%29324 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%29325 = load float, float* %29324
%29326 = fmul float %29323, %29325
%29327 = fneg float %29326
%29328 = call float @llvm.fmuladd.f32(float %29319, float %29321, float %29327)
%29329 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %29328, float* %29329
%29330 = load float*, float** %13
%29331 = getelementptr inbounds float, float* %29330, i64 0
%29332 = load float, float* %29331
%29333 = load float*, float** %10
%29334 = getelementptr inbounds float, float* %29333, i64 0
%29335 = load float, float* %29334
%29336 = fsub float %29332, %29335
%29337 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %29336, float* %29337
%29338 = load float*, float** %13
%29339 = getelementptr inbounds float, float* %29338, i64 1
%29340 = load float, float* %29339
%29341 = load float*, float** %10
%29342 = getelementptr inbounds float, float* %29341, i64 1
%29343 = load float, float* %29342
%29344 = fsub float %29340, %29343
%29345 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %29344, float* %29345
%29346 = load float*, float** %13
%29347 = getelementptr inbounds float, float* %29346, i64 2
%29348 = load float, float* %29347
%29349 = load float*, float** %10
%29350 = getelementptr inbounds float, float* %29349, i64 2
%29351 = load float, float* %29350
%29352 = fsub float %29348, %29351
%29353 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %29352, float* %29353
%29354 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%29355 = load float, float* %29354
%29356 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%29357 = load float, float* %29356
%29358 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%29359 = load float, float* %29358
%29360 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%29361 = load float, float* %29360
%29362 = fmul float %29359, %29361
%29363 = call float @llvm.fmuladd.f32(float %29355, float %29357, float %29362)
%29364 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%29365 = load float, float* %29364
%29366 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%29367 = load float, float* %29366
%29368 = call float @llvm.fmuladd.f32(float %29365, float %29367, float %29363)
%29369 = fcmp ogt float %29368, 0.000000e+00
br i1 %29369, label %29370, label %29371
29370: ; preds = %29245
store i32 0, i32* %7
br label %37477
29371: ; preds = %29245
%29372 = load float*, float** %12
%29373 = getelementptr inbounds float, float* %29372, i64 0
%29374 = load float, float* %29373
%29375 = load float*, float** %9
%29376 = getelementptr inbounds float, float* %29375, i64 0
%29377 = load float, float* %29376
%29378 = fsub float %29374, %29377
%29379 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %29378, float* %29379
%29380 = load float*, float** %12
%29381 = getelementptr inbounds float, float* %29380, i64 1
%29382 = load float, float* %29381
%29383 = load float*, float** %9
%29384 = getelementptr inbounds float, float* %29383, i64 1
%29385 = load float, float* %29384
%29386 = fsub float %29382, %29385
%29387 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %29386, float* %29387
%29388 = load float*, float** %12
%29389 = getelementptr inbounds float, float* %29388, i64 2
%29390 = load float, float* %29389
%29391 = load float*, float** %9
%29392 = getelementptr inbounds float, float* %29391, i64 2
%29393 = load float, float* %29392
%29394 = fsub float %29390, %29393
%29395 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %29394, float* %29395
%29396 = load float*, float** %8
%29397 = getelementptr inbounds float, float* %29396, i64 0
%29398 = load float, float* %29397
%29399 = load float*, float** %9
%29400 = getelementptr inbounds float, float* %29399, i64 0
%29401 = load float, float* %29400
%29402 = fsub float %29398, %29401
%29403 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %29402, float* %29403
%29404 = load float*, float** %8
%29405 = getelementptr inbounds float, float* %29404, i64 1
%29406 = load float, float* %29405
%29407 = load float*, float** %9
%29408 = getelementptr inbounds float, float* %29407, i64 1
%29409 = load float, float* %29408
%29410 = fsub float %29406, %29409
%29411 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %29410, float* %29411
%29412 = load float*, float** %8
%29413 = getelementptr inbounds float, float* %29412, i64 2
%29414 = load float, float* %29413
%29415 = load float*, float** %9
%29416 = getelementptr inbounds float, float* %29415, i64 2
%29417 = load float, float* %29416
%29418 = fsub float %29414, %29417
%29419 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %29418, float* %29419
%29420 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%29421 = load float, float* %29420
%29422 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%29423 = load float, float* %29422
%29424 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%29425 = load float, float* %29424
%29426 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%29427 = load float, float* %29426
%29428 = fmul float %29425, %29427
%29429 = fneg float %29428
%29430 = call float @llvm.fmuladd.f32(float %29421, float %29423, float %29429)
%29431 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %29430, float* %29431
%29432 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%29433 = load float, float* %29432
%29434 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%29435 = load float, float* %29434
%29436 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%29437 = load float, float* %29436
%29438 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%29439 = load float, float* %29438
%29440 = fmul float %29437, %29439
%29441 = fneg float %29440
%29442 = call float @llvm.fmuladd.f32(float %29433, float %29435, float %29441)
%29443 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %29442, float* %29443
%29444 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%29445 = load float, float* %29444
%29446 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%29447 = load float, float* %29446
%29448 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%29449 = load float, float* %29448
%29450 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%29451 = load float, float* %29450
%29452 = fmul float %29449, %29451
%29453 = fneg float %29452
%29454 = call float @llvm.fmuladd.f32(float %29445, float %29447, float %29453)
%29455 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %29454, float* %29455
%29456 = load float*, float** %11
%29457 = getelementptr inbounds float, float* %29456, i64 0
%29458 = load float, float* %29457
%29459 = load float*, float** %9
%29460 = getelementptr inbounds float, float* %29459, i64 0
%29461 = load float, float* %29460
%29462 = fsub float %29458, %29461
%29463 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %29462, float* %29463
%29464 = load float*, float** %11
%29465 = getelementptr inbounds float, float* %29464, i64 1
%29466 = load float, float* %29465
%29467 = load float*, float** %9
%29468 = getelementptr inbounds float, float* %29467, i64 1
%29469 = load float, float* %29468
%29470 = fsub float %29466, %29469
%29471 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %29470, float* %29471
%29472 = load float*, float** %11
%29473 = getelementptr inbounds float, float* %29472, i64 2
%29474 = load float, float* %29473
%29475 = load float*, float** %9
%29476 = getelementptr inbounds float, float* %29475, i64 2
%29477 = load float, float* %29476
%29478 = fsub float %29474, %29477
%29479 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %29478, float* %29479
%29480 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%29481 = load float, float* %29480
%29482 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%29483 = load float, float* %29482
%29484 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%29485 = load float, float* %29484
%29486 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%29487 = load float, float* %29486
%29488 = fmul float %29485, %29487
%29489 = call float @llvm.fmuladd.f32(float %29481, float %29483, float %29488)
%29490 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%29491 = load float, float* %29490
%29492 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%29493 = load float, float* %29492
%29494 = call float @llvm.fmuladd.f32(float %29491, float %29493, float %29489)
%29495 = fcmp ogt float %29494, 0.000000e+00
br i1 %29495, label %29496, label %29497
29496: ; preds = %29371
store i32 0, i32* %7
br label %37477
29497: ; preds = %29371
store i32 1, i32* %7
br label %37477
29498: ; preds = %29242
%29499 = load float*, float** %11
%29500 = getelementptr inbounds float, float* %29499, i64 0
%29501 = load float, float* %29500
%29502 = load float*, float** %8
%29503 = getelementptr inbounds float, float* %29502, i64 0
%29504 = load float, float* %29503
%29505 = fsub float %29501, %29504
%29506 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %29505, float* %29506
%29507 = load float*, float** %11
%29508 = getelementptr inbounds float, float* %29507, i64 1
%29509 = load float, float* %29508
%29510 = load float*, float** %8
%29511 = getelementptr inbounds float, float* %29510, i64 1
%29512 = load float, float* %29511
%29513 = fsub float %29509, %29512
%29514 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %29513, float* %29514
%29515 = load float*, float** %11
%29516 = getelementptr inbounds float, float* %29515, i64 2
%29517 = load float, float* %29516
%29518 = load float*, float** %8
%29519 = getelementptr inbounds float, float* %29518, i64 2
%29520 = load float, float* %29519
%29521 = fsub float %29517, %29520
%29522 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %29521, float* %29522
%29523 = load float*, float** %9
%29524 = getelementptr inbounds float, float* %29523, i64 0
%29525 = load float, float* %29524
%29526 = load float*, float** %8
%29527 = getelementptr inbounds float, float* %29526, i64 0
%29528 = load float, float* %29527
%29529 = fsub float %29525, %29528
%29530 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %29529, float* %29530
%29531 = load float*, float** %9
%29532 = getelementptr inbounds float, float* %29531, i64 1
%29533 = load float, float* %29532
%29534 = load float*, float** %8
%29535 = getelementptr inbounds float, float* %29534, i64 1
%29536 = load float, float* %29535
%29537 = fsub float %29533, %29536
%29538 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %29537, float* %29538
%29539 = load float*, float** %9
%29540 = getelementptr inbounds float, float* %29539, i64 2
%29541 = load float, float* %29540
%29542 = load float*, float** %8
%29543 = getelementptr inbounds float, float* %29542, i64 2
%29544 = load float, float* %29543
%29545 = fsub float %29541, %29544
%29546 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %29545, float* %29546
%29547 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%29548 = load float, float* %29547
%29549 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%29550 = load float, float* %29549
%29551 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%29552 = load float, float* %29551
%29553 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%29554 = load float, float* %29553
%29555 = fmul float %29552, %29554
%29556 = fneg float %29555
%29557 = call float @llvm.fmuladd.f32(float %29548, float %29550, float %29556)
%29558 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %29557, float* %29558
%29559 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%29560 = load float, float* %29559
%29561 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%29562 = load float, float* %29561
%29563 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%29564 = load float, float* %29563
%29565 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%29566 = load float, float* %29565
%29567 = fmul float %29564, %29566
%29568 = fneg float %29567
%29569 = call float @llvm.fmuladd.f32(float %29560, float %29562, float %29568)
%29570 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %29569, float* %29570
%29571 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%29572 = load float, float* %29571
%29573 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%29574 = load float, float* %29573
%29575 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%29576 = load float, float* %29575
%29577 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%29578 = load float, float* %29577
%29579 = fmul float %29576, %29578
%29580 = fneg float %29579
%29581 = call float @llvm.fmuladd.f32(float %29572, float %29574, float %29580)
%29582 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %29581, float* %29582
%29583 = load float*, float** %12
%29584 = getelementptr inbounds float, float* %29583, i64 0
%29585 = load float, float* %29584
%29586 = load float*, float** %8
%29587 = getelementptr inbounds float, float* %29586, i64 0
%29588 = load float, float* %29587
%29589 = fsub float %29585, %29588
%29590 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %29589, float* %29590
%29591 = load float*, float** %12
%29592 = getelementptr inbounds float, float* %29591, i64 1
%29593 = load float, float* %29592
%29594 = load float*, float** %8
%29595 = getelementptr inbounds float, float* %29594, i64 1
%29596 = load float, float* %29595
%29597 = fsub float %29593, %29596
%29598 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %29597, float* %29598
%29599 = load float*, float** %12
%29600 = getelementptr inbounds float, float* %29599, i64 2
%29601 = load float, float* %29600
%29602 = load float*, float** %8
%29603 = getelementptr inbounds float, float* %29602, i64 2
%29604 = load float, float* %29603
%29605 = fsub float %29601, %29604
%29606 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %29605, float* %29606
%29607 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%29608 = load float, float* %29607
%29609 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%29610 = load float, float* %29609
%29611 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%29612 = load float, float* %29611
%29613 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%29614 = load float, float* %29613
%29615 = fmul float %29612, %29614
%29616 = call float @llvm.fmuladd.f32(float %29608, float %29610, float %29615)
%29617 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%29618 = load float, float* %29617
%29619 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%29620 = load float, float* %29619
%29621 = call float @llvm.fmuladd.f32(float %29618, float %29620, float %29616)
%29622 = fcmp ogt float %29621, 0.000000e+00
br i1 %29622, label %29623, label %29624
29623: ; preds = %29498
store i32 0, i32* %7
br label %37477
29624: ; preds = %29498
%29625 = load float*, float** %11
%29626 = getelementptr inbounds float, float* %29625, i64 0
%29627 = load float, float* %29626
%29628 = load float*, float** %9
%29629 = getelementptr inbounds float, float* %29628, i64 0
%29630 = load float, float* %29629
%29631 = fsub float %29627, %29630
%29632 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %29631, float* %29632
%29633 = load float*, float** %11
%29634 = getelementptr inbounds float, float* %29633, i64 1
%29635 = load float, float* %29634
%29636 = load float*, float** %9
%29637 = getelementptr inbounds float, float* %29636, i64 1
%29638 = load float, float* %29637
%29639 = fsub float %29635, %29638
%29640 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %29639, float* %29640
%29641 = load float*, float** %11
%29642 = getelementptr inbounds float, float* %29641, i64 2
%29643 = load float, float* %29642
%29644 = load float*, float** %9
%29645 = getelementptr inbounds float, float* %29644, i64 2
%29646 = load float, float* %29645
%29647 = fsub float %29643, %29646
%29648 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %29647, float* %29648
%29649 = load float*, float** %10
%29650 = getelementptr inbounds float, float* %29649, i64 0
%29651 = load float, float* %29650
%29652 = load float*, float** %9
%29653 = getelementptr inbounds float, float* %29652, i64 0
%29654 = load float, float* %29653
%29655 = fsub float %29651, %29654
%29656 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %29655, float* %29656
%29657 = load float*, float** %10
%29658 = getelementptr inbounds float, float* %29657, i64 1
%29659 = load float, float* %29658
%29660 = load float*, float** %9
%29661 = getelementptr inbounds float, float* %29660, i64 1
%29662 = load float, float* %29661
%29663 = fsub float %29659, %29662
%29664 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %29663, float* %29664
%29665 = load float*, float** %10
%29666 = getelementptr inbounds float, float* %29665, i64 2
%29667 = load float, float* %29666
%29668 = load float*, float** %9
%29669 = getelementptr inbounds float, float* %29668, i64 2
%29670 = load float, float* %29669
%29671 = fsub float %29667, %29670
%29672 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %29671, float* %29672
%29673 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%29674 = load float, float* %29673
%29675 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%29676 = load float, float* %29675
%29677 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%29678 = load float, float* %29677
%29679 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%29680 = load float, float* %29679
%29681 = fmul float %29678, %29680
%29682 = fneg float %29681
%29683 = call float @llvm.fmuladd.f32(float %29674, float %29676, float %29682)
%29684 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %29683, float* %29684
%29685 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%29686 = load float, float* %29685
%29687 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%29688 = load float, float* %29687
%29689 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%29690 = load float, float* %29689
%29691 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%29692 = load float, float* %29691
%29693 = fmul float %29690, %29692
%29694 = fneg float %29693
%29695 = call float @llvm.fmuladd.f32(float %29686, float %29688, float %29694)
%29696 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %29695, float* %29696
%29697 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%29698 = load float, float* %29697
%29699 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%29700 = load float, float* %29699
%29701 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%29702 = load float, float* %29701
%29703 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%29704 = load float, float* %29703
%29705 = fmul float %29702, %29704
%29706 = fneg float %29705
%29707 = call float @llvm.fmuladd.f32(float %29698, float %29700, float %29706)
%29708 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %29707, float* %29708
%29709 = load float*, float** %13
%29710 = getelementptr inbounds float, float* %29709, i64 0
%29711 = load float, float* %29710
%29712 = load float*, float** %9
%29713 = getelementptr inbounds float, float* %29712, i64 0
%29714 = load float, float* %29713
%29715 = fsub float %29711, %29714
%29716 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %29715, float* %29716
%29717 = load float*, float** %13
%29718 = getelementptr inbounds float, float* %29717, i64 1
%29719 = load float, float* %29718
%29720 = load float*, float** %9
%29721 = getelementptr inbounds float, float* %29720, i64 1
%29722 = load float, float* %29721
%29723 = fsub float %29719, %29722
%29724 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %29723, float* %29724
%29725 = load float*, float** %13
%29726 = getelementptr inbounds float, float* %29725, i64 2
%29727 = load float, float* %29726
%29728 = load float*, float** %9
%29729 = getelementptr inbounds float, float* %29728, i64 2
%29730 = load float, float* %29729
%29731 = fsub float %29727, %29730
%29732 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %29731, float* %29732
%29733 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%29734 = load float, float* %29733
%29735 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%29736 = load float, float* %29735
%29737 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%29738 = load float, float* %29737
%29739 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%29740 = load float, float* %29739
%29741 = fmul float %29738, %29740
%29742 = call float @llvm.fmuladd.f32(float %29734, float %29736, float %29741)
%29743 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%29744 = load float, float* %29743
%29745 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%29746 = load float, float* %29745
%29747 = call float @llvm.fmuladd.f32(float %29744, float %29746, float %29742)
%29748 = fcmp ogt float %29747, 0.000000e+00
br i1 %29748, label %29749, label %29750
29749: ; preds = %29624
store i32 0, i32* %7
br label %37477
29750: ; preds = %29624
store i32 1, i32* %7
br label %37477
29751: ; preds = %28983
%29752 = load float, float* %18
%29753 = fcmp olt float %29752, 0.000000e+00
br i1 %29753, label %29754, label %30263
29754: ; preds = %29751
%29755 = load float, float* %19
%29756 = fcmp oge float %29755, 0.000000e+00
br i1 %29756, label %29757, label %30010
29757: ; preds = %29754
%29758 = load float*, float** %12
%29759 = getelementptr inbounds float, float* %29758, i64 0
%29760 = load float, float* %29759
%29761 = load float*, float** %8
%29762 = getelementptr inbounds float, float* %29761, i64 0
%29763 = load float, float* %29762
%29764 = fsub float %29760, %29763
%29765 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %29764, float* %29765
%29766 = load float*, float** %12
%29767 = getelementptr inbounds float, float* %29766, i64 1
%29768 = load float, float* %29767
%29769 = load float*, float** %8
%29770 = getelementptr inbounds float, float* %29769, i64 1
%29771 = load float, float* %29770
%29772 = fsub float %29768, %29771
%29773 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %29772, float* %29773
%29774 = load float*, float** %12
%29775 = getelementptr inbounds float, float* %29774, i64 2
%29776 = load float, float* %29775
%29777 = load float*, float** %8
%29778 = getelementptr inbounds float, float* %29777, i64 2
%29779 = load float, float* %29778
%29780 = fsub float %29776, %29779
%29781 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %29780, float* %29781
%29782 = load float*, float** %9
%29783 = getelementptr inbounds float, float* %29782, i64 0
%29784 = load float, float* %29783
%29785 = load float*, float** %8
%29786 = getelementptr inbounds float, float* %29785, i64 0
%29787 = load float, float* %29786
%29788 = fsub float %29784, %29787
%29789 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %29788, float* %29789
%29790 = load float*, float** %9
%29791 = getelementptr inbounds float, float* %29790, i64 1
%29792 = load float, float* %29791
%29793 = load float*, float** %8
%29794 = getelementptr inbounds float, float* %29793, i64 1
%29795 = load float, float* %29794
%29796 = fsub float %29792, %29795
%29797 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %29796, float* %29797
%29798 = load float*, float** %9
%29799 = getelementptr inbounds float, float* %29798, i64 2
%29800 = load float, float* %29799
%29801 = load float*, float** %8
%29802 = getelementptr inbounds float, float* %29801, i64 2
%29803 = load float, float* %29802
%29804 = fsub float %29800, %29803
%29805 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %29804, float* %29805
%29806 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%29807 = load float, float* %29806
%29808 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%29809 = load float, float* %29808
%29810 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%29811 = load float, float* %29810
%29812 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%29813 = load float, float* %29812
%29814 = fmul float %29811, %29813
%29815 = fneg float %29814
%29816 = call float @llvm.fmuladd.f32(float %29807, float %29809, float %29815)
%29817 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %29816, float* %29817
%29818 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%29819 = load float, float* %29818
%29820 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%29821 = load float, float* %29820
%29822 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%29823 = load float, float* %29822
%29824 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%29825 = load float, float* %29824
%29826 = fmul float %29823, %29825
%29827 = fneg float %29826
%29828 = call float @llvm.fmuladd.f32(float %29819, float %29821, float %29827)
%29829 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %29828, float* %29829
%29830 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%29831 = load float, float* %29830
%29832 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%29833 = load float, float* %29832
%29834 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%29835 = load float, float* %29834
%29836 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%29837 = load float, float* %29836
%29838 = fmul float %29835, %29837
%29839 = fneg float %29838
%29840 = call float @llvm.fmuladd.f32(float %29831, float %29833, float %29839)
%29841 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %29840, float* %29841
%29842 = load float*, float** %13
%29843 = getelementptr inbounds float, float* %29842, i64 0
%29844 = load float, float* %29843
%29845 = load float*, float** %8
%29846 = getelementptr inbounds float, float* %29845, i64 0
%29847 = load float, float* %29846
%29848 = fsub float %29844, %29847
%29849 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %29848, float* %29849
%29850 = load float*, float** %13
%29851 = getelementptr inbounds float, float* %29850, i64 1
%29852 = load float, float* %29851
%29853 = load float*, float** %8
%29854 = getelementptr inbounds float, float* %29853, i64 1
%29855 = load float, float* %29854
%29856 = fsub float %29852, %29855
%29857 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %29856, float* %29857
%29858 = load float*, float** %13
%29859 = getelementptr inbounds float, float* %29858, i64 2
%29860 = load float, float* %29859
%29861 = load float*, float** %8
%29862 = getelementptr inbounds float, float* %29861, i64 2
%29863 = load float, float* %29862
%29864 = fsub float %29860, %29863
%29865 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %29864, float* %29865
%29866 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%29867 = load float, float* %29866
%29868 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%29869 = load float, float* %29868
%29870 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%29871 = load float, float* %29870
%29872 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%29873 = load float, float* %29872
%29874 = fmul float %29871, %29873
%29875 = call float @llvm.fmuladd.f32(float %29867, float %29869, float %29874)
%29876 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%29877 = load float, float* %29876
%29878 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%29879 = load float, float* %29878
%29880 = call float @llvm.fmuladd.f32(float %29877, float %29879, float %29875)
%29881 = fcmp ogt float %29880, 0.000000e+00
br i1 %29881, label %29882, label %29883
29882: ; preds = %29757
store i32 0, i32* %7
br label %37477
29883: ; preds = %29757
%29884 = load float*, float** %12
%29885 = getelementptr inbounds float, float* %29884, i64 0
%29886 = load float, float* %29885
%29887 = load float*, float** %9
%29888 = getelementptr inbounds float, float* %29887, i64 0
%29889 = load float, float* %29888
%29890 = fsub float %29886, %29889
%29891 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %29890, float* %29891
%29892 = load float*, float** %12
%29893 = getelementptr inbounds float, float* %29892, i64 1
%29894 = load float, float* %29893
%29895 = load float*, float** %9
%29896 = getelementptr inbounds float, float* %29895, i64 1
%29897 = load float, float* %29896
%29898 = fsub float %29894, %29897
%29899 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %29898, float* %29899
%29900 = load float*, float** %12
%29901 = getelementptr inbounds float, float* %29900, i64 2
%29902 = load float, float* %29901
%29903 = load float*, float** %9
%29904 = getelementptr inbounds float, float* %29903, i64 2
%29905 = load float, float* %29904
%29906 = fsub float %29902, %29905
%29907 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %29906, float* %29907
%29908 = load float*, float** %10
%29909 = getelementptr inbounds float, float* %29908, i64 0
%29910 = load float, float* %29909
%29911 = load float*, float** %9
%29912 = getelementptr inbounds float, float* %29911, i64 0
%29913 = load float, float* %29912
%29914 = fsub float %29910, %29913
%29915 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %29914, float* %29915
%29916 = load float*, float** %10
%29917 = getelementptr inbounds float, float* %29916, i64 1
%29918 = load float, float* %29917
%29919 = load float*, float** %9
%29920 = getelementptr inbounds float, float* %29919, i64 1
%29921 = load float, float* %29920
%29922 = fsub float %29918, %29921
%29923 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %29922, float* %29923
%29924 = load float*, float** %10
%29925 = getelementptr inbounds float, float* %29924, i64 2
%29926 = load float, float* %29925
%29927 = load float*, float** %9
%29928 = getelementptr inbounds float, float* %29927, i64 2
%29929 = load float, float* %29928
%29930 = fsub float %29926, %29929
%29931 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %29930, float* %29931
%29932 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%29933 = load float, float* %29932
%29934 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%29935 = load float, float* %29934
%29936 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%29937 = load float, float* %29936
%29938 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%29939 = load float, float* %29938
%29940 = fmul float %29937, %29939
%29941 = fneg float %29940
%29942 = call float @llvm.fmuladd.f32(float %29933, float %29935, float %29941)
%29943 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %29942, float* %29943
%29944 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%29945 = load float, float* %29944
%29946 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%29947 = load float, float* %29946
%29948 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%29949 = load float, float* %29948
%29950 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%29951 = load float, float* %29950
%29952 = fmul float %29949, %29951
%29953 = fneg float %29952
%29954 = call float @llvm.fmuladd.f32(float %29945, float %29947, float %29953)
%29955 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %29954, float* %29955
%29956 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%29957 = load float, float* %29956
%29958 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%29959 = load float, float* %29958
%29960 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%29961 = load float, float* %29960
%29962 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%29963 = load float, float* %29962
%29964 = fmul float %29961, %29963
%29965 = fneg float %29964
%29966 = call float @llvm.fmuladd.f32(float %29957, float %29959, float %29965)
%29967 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %29966, float* %29967
%29968 = load float*, float** %11
%29969 = getelementptr inbounds float, float* %29968, i64 0
%29970 = load float, float* %29969
%29971 = load float*, float** %9
%29972 = getelementptr inbounds float, float* %29971, i64 0
%29973 = load float, float* %29972
%29974 = fsub float %29970, %29973
%29975 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %29974, float* %29975
%29976 = load float*, float** %11
%29977 = getelementptr inbounds float, float* %29976, i64 1
%29978 = load float, float* %29977
%29979 = load float*, float** %9
%29980 = getelementptr inbounds float, float* %29979, i64 1
%29981 = load float, float* %29980
%29982 = fsub float %29978, %29981
%29983 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %29982, float* %29983
%29984 = load float*, float** %11
%29985 = getelementptr inbounds float, float* %29984, i64 2
%29986 = load float, float* %29985
%29987 = load float*, float** %9
%29988 = getelementptr inbounds float, float* %29987, i64 2
%29989 = load float, float* %29988
%29990 = fsub float %29986, %29989
%29991 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %29990, float* %29991
%29992 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%29993 = load float, float* %29992
%29994 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%29995 = load float, float* %29994
%29996 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%29997 = load float, float* %29996
%29998 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%29999 = load float, float* %29998
%30000 = fmul float %29997, %29999
%30001 = call float @llvm.fmuladd.f32(float %29993, float %29995, float %30000)
%30002 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%30003 = load float, float* %30002
%30004 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%30005 = load float, float* %30004
%30006 = call float @llvm.fmuladd.f32(float %30003, float %30005, float %30001)
%30007 = fcmp ogt float %30006, 0.000000e+00
br i1 %30007, label %30008, label %30009
30008: ; preds = %29883
store i32 0, i32* %7
br label %37477
30009: ; preds = %29883
store i32 1, i32* %7
br label %37477
30010: ; preds = %29754
%30011 = load float*, float** %11
%30012 = getelementptr inbounds float, float* %30011, i64 0
%30013 = load float, float* %30012
%30014 = load float*, float** %10
%30015 = getelementptr inbounds float, float* %30014, i64 0
%30016 = load float, float* %30015
%30017 = fsub float %30013, %30016
%30018 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %30017, float* %30018
%30019 = load float*, float** %11
%30020 = getelementptr inbounds float, float* %30019, i64 1
%30021 = load float, float* %30020
%30022 = load float*, float** %10
%30023 = getelementptr inbounds float, float* %30022, i64 1
%30024 = load float, float* %30023
%30025 = fsub float %30021, %30024
%30026 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %30025, float* %30026
%30027 = load float*, float** %11
%30028 = getelementptr inbounds float, float* %30027, i64 2
%30029 = load float, float* %30028
%30030 = load float*, float** %10
%30031 = getelementptr inbounds float, float* %30030, i64 2
%30032 = load float, float* %30031
%30033 = fsub float %30029, %30032
%30034 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %30033, float* %30034
%30035 = load float*, float** %9
%30036 = getelementptr inbounds float, float* %30035, i64 0
%30037 = load float, float* %30036
%30038 = load float*, float** %10
%30039 = getelementptr inbounds float, float* %30038, i64 0
%30040 = load float, float* %30039
%30041 = fsub float %30037, %30040
%30042 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %30041, float* %30042
%30043 = load float*, float** %9
%30044 = getelementptr inbounds float, float* %30043, i64 1
%30045 = load float, float* %30044
%30046 = load float*, float** %10
%30047 = getelementptr inbounds float, float* %30046, i64 1
%30048 = load float, float* %30047
%30049 = fsub float %30045, %30048
%30050 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %30049, float* %30050
%30051 = load float*, float** %9
%30052 = getelementptr inbounds float, float* %30051, i64 2
%30053 = load float, float* %30052
%30054 = load float*, float** %10
%30055 = getelementptr inbounds float, float* %30054, i64 2
%30056 = load float, float* %30055
%30057 = fsub float %30053, %30056
%30058 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %30057, float* %30058
%30059 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%30060 = load float, float* %30059
%30061 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%30062 = load float, float* %30061
%30063 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%30064 = load float, float* %30063
%30065 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%30066 = load float, float* %30065
%30067 = fmul float %30064, %30066
%30068 = fneg float %30067
%30069 = call float @llvm.fmuladd.f32(float %30060, float %30062, float %30068)
%30070 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %30069, float* %30070
%30071 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%30072 = load float, float* %30071
%30073 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%30074 = load float, float* %30073
%30075 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%30076 = load float, float* %30075
%30077 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%30078 = load float, float* %30077
%30079 = fmul float %30076, %30078
%30080 = fneg float %30079
%30081 = call float @llvm.fmuladd.f32(float %30072, float %30074, float %30080)
%30082 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %30081, float* %30082
%30083 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%30084 = load float, float* %30083
%30085 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%30086 = load float, float* %30085
%30087 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%30088 = load float, float* %30087
%30089 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%30090 = load float, float* %30089
%30091 = fmul float %30088, %30090
%30092 = fneg float %30091
%30093 = call float @llvm.fmuladd.f32(float %30084, float %30086, float %30092)
%30094 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %30093, float* %30094
%30095 = load float*, float** %12
%30096 = getelementptr inbounds float, float* %30095, i64 0
%30097 = load float, float* %30096
%30098 = load float*, float** %10
%30099 = getelementptr inbounds float, float* %30098, i64 0
%30100 = load float, float* %30099
%30101 = fsub float %30097, %30100
%30102 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %30101, float* %30102
%30103 = load float*, float** %12
%30104 = getelementptr inbounds float, float* %30103, i64 1
%30105 = load float, float* %30104
%30106 = load float*, float** %10
%30107 = getelementptr inbounds float, float* %30106, i64 1
%30108 = load float, float* %30107
%30109 = fsub float %30105, %30108
%30110 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %30109, float* %30110
%30111 = load float*, float** %12
%30112 = getelementptr inbounds float, float* %30111, i64 2
%30113 = load float, float* %30112
%30114 = load float*, float** %10
%30115 = getelementptr inbounds float, float* %30114, i64 2
%30116 = load float, float* %30115
%30117 = fsub float %30113, %30116
%30118 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %30117, float* %30118
%30119 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%30120 = load float, float* %30119
%30121 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%30122 = load float, float* %30121
%30123 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%30124 = load float, float* %30123
%30125 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%30126 = load float, float* %30125
%30127 = fmul float %30124, %30126
%30128 = call float @llvm.fmuladd.f32(float %30120, float %30122, float %30127)
%30129 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%30130 = load float, float* %30129
%30131 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%30132 = load float, float* %30131
%30133 = call float @llvm.fmuladd.f32(float %30130, float %30132, float %30128)
%30134 = fcmp ogt float %30133, 0.000000e+00
br i1 %30134, label %30135, label %30136
30135: ; preds = %30010
store i32 0, i32* %7
br label %37477
30136: ; preds = %30010
%30137 = load float*, float** %11
%30138 = getelementptr inbounds float, float* %30137, i64 0
%30139 = load float, float* %30138
%30140 = load float*, float** %9
%30141 = getelementptr inbounds float, float* %30140, i64 0
%30142 = load float, float* %30141
%30143 = fsub float %30139, %30142
%30144 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %30143, float* %30144
%30145 = load float*, float** %11
%30146 = getelementptr inbounds float, float* %30145, i64 1
%30147 = load float, float* %30146
%30148 = load float*, float** %9
%30149 = getelementptr inbounds float, float* %30148, i64 1
%30150 = load float, float* %30149
%30151 = fsub float %30147, %30150
%30152 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %30151, float* %30152
%30153 = load float*, float** %11
%30154 = getelementptr inbounds float, float* %30153, i64 2
%30155 = load float, float* %30154
%30156 = load float*, float** %9
%30157 = getelementptr inbounds float, float* %30156, i64 2
%30158 = load float, float* %30157
%30159 = fsub float %30155, %30158
%30160 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %30159, float* %30160
%30161 = load float*, float** %8
%30162 = getelementptr inbounds float, float* %30161, i64 0
%30163 = load float, float* %30162
%30164 = load float*, float** %9
%30165 = getelementptr inbounds float, float* %30164, i64 0
%30166 = load float, float* %30165
%30167 = fsub float %30163, %30166
%30168 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %30167, float* %30168
%30169 = load float*, float** %8
%30170 = getelementptr inbounds float, float* %30169, i64 1
%30171 = load float, float* %30170
%30172 = load float*, float** %9
%30173 = getelementptr inbounds float, float* %30172, i64 1
%30174 = load float, float* %30173
%30175 = fsub float %30171, %30174
%30176 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %30175, float* %30176
%30177 = load float*, float** %8
%30178 = getelementptr inbounds float, float* %30177, i64 2
%30179 = load float, float* %30178
%30180 = load float*, float** %9
%30181 = getelementptr inbounds float, float* %30180, i64 2
%30182 = load float, float* %30181
%30183 = fsub float %30179, %30182
%30184 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %30183, float* %30184
%30185 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%30186 = load float, float* %30185
%30187 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%30188 = load float, float* %30187
%30189 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%30190 = load float, float* %30189
%30191 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%30192 = load float, float* %30191
%30193 = fmul float %30190, %30192
%30194 = fneg float %30193
%30195 = call float @llvm.fmuladd.f32(float %30186, float %30188, float %30194)
%30196 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %30195, float* %30196
%30197 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%30198 = load float, float* %30197
%30199 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%30200 = load float, float* %30199
%30201 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%30202 = load float, float* %30201
%30203 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%30204 = load float, float* %30203
%30205 = fmul float %30202, %30204
%30206 = fneg float %30205
%30207 = call float @llvm.fmuladd.f32(float %30198, float %30200, float %30206)
%30208 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %30207, float* %30208
%30209 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%30210 = load float, float* %30209
%30211 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%30212 = load float, float* %30211
%30213 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%30214 = load float, float* %30213
%30215 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%30216 = load float, float* %30215
%30217 = fmul float %30214, %30216
%30218 = fneg float %30217
%30219 = call float @llvm.fmuladd.f32(float %30210, float %30212, float %30218)
%30220 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %30219, float* %30220
%30221 = load float*, float** %13
%30222 = getelementptr inbounds float, float* %30221, i64 0
%30223 = load float, float* %30222
%30224 = load float*, float** %9
%30225 = getelementptr inbounds float, float* %30224, i64 0
%30226 = load float, float* %30225
%30227 = fsub float %30223, %30226
%30228 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %30227, float* %30228
%30229 = load float*, float** %13
%30230 = getelementptr inbounds float, float* %30229, i64 1
%30231 = load float, float* %30230
%30232 = load float*, float** %9
%30233 = getelementptr inbounds float, float* %30232, i64 1
%30234 = load float, float* %30233
%30235 = fsub float %30231, %30234
%30236 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %30235, float* %30236
%30237 = load float*, float** %13
%30238 = getelementptr inbounds float, float* %30237, i64 2
%30239 = load float, float* %30238
%30240 = load float*, float** %9
%30241 = getelementptr inbounds float, float* %30240, i64 2
%30242 = load float, float* %30241
%30243 = fsub float %30239, %30242
%30244 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %30243, float* %30244
%30245 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%30246 = load float, float* %30245
%30247 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%30248 = load float, float* %30247
%30249 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%30250 = load float, float* %30249
%30251 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%30252 = load float, float* %30251
%30253 = fmul float %30250, %30252
%30254 = call float @llvm.fmuladd.f32(float %30246, float %30248, float %30253)
%30255 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%30256 = load float, float* %30255
%30257 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%30258 = load float, float* %30257
%30259 = call float @llvm.fmuladd.f32(float %30256, float %30258, float %30254)
%30260 = fcmp ogt float %30259, 0.000000e+00
br i1 %30260, label %30261, label %30262
30261: ; preds = %30136
store i32 0, i32* %7
br label %37477
30262: ; preds = %30136
store i32 1, i32* %7
br label %37477
30263: ; preds = %29751
%30264 = load float, float* %18
%30265 = fcmp ogt float %30264, 0.000000e+00
br i1 %30265, label %30266, label %30775
30266: ; preds = %30263
%30267 = load float, float* %19
%30268 = fcmp ogt float %30267, 0.000000e+00
br i1 %30268, label %30269, label %30522
30269: ; preds = %30266
%30270 = load float*, float** %11
%30271 = getelementptr inbounds float, float* %30270, i64 0
%30272 = load float, float* %30271
%30273 = load float*, float** %8
%30274 = getelementptr inbounds float, float* %30273, i64 0
%30275 = load float, float* %30274
%30276 = fsub float %30272, %30275
%30277 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %30276, float* %30277
%30278 = load float*, float** %11
%30279 = getelementptr inbounds float, float* %30278, i64 1
%30280 = load float, float* %30279
%30281 = load float*, float** %8
%30282 = getelementptr inbounds float, float* %30281, i64 1
%30283 = load float, float* %30282
%30284 = fsub float %30280, %30283
%30285 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %30284, float* %30285
%30286 = load float*, float** %11
%30287 = getelementptr inbounds float, float* %30286, i64 2
%30288 = load float, float* %30287
%30289 = load float*, float** %8
%30290 = getelementptr inbounds float, float* %30289, i64 2
%30291 = load float, float* %30290
%30292 = fsub float %30288, %30291
%30293 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %30292, float* %30293
%30294 = load float*, float** %9
%30295 = getelementptr inbounds float, float* %30294, i64 0
%30296 = load float, float* %30295
%30297 = load float*, float** %8
%30298 = getelementptr inbounds float, float* %30297, i64 0
%30299 = load float, float* %30298
%30300 = fsub float %30296, %30299
%30301 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %30300, float* %30301
%30302 = load float*, float** %9
%30303 = getelementptr inbounds float, float* %30302, i64 1
%30304 = load float, float* %30303
%30305 = load float*, float** %8
%30306 = getelementptr inbounds float, float* %30305, i64 1
%30307 = load float, float* %30306
%30308 = fsub float %30304, %30307
%30309 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %30308, float* %30309
%30310 = load float*, float** %9
%30311 = getelementptr inbounds float, float* %30310, i64 2
%30312 = load float, float* %30311
%30313 = load float*, float** %8
%30314 = getelementptr inbounds float, float* %30313, i64 2
%30315 = load float, float* %30314
%30316 = fsub float %30312, %30315
%30317 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %30316, float* %30317
%30318 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%30319 = load float, float* %30318
%30320 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%30321 = load float, float* %30320
%30322 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%30323 = load float, float* %30322
%30324 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%30325 = load float, float* %30324
%30326 = fmul float %30323, %30325
%30327 = fneg float %30326
%30328 = call float @llvm.fmuladd.f32(float %30319, float %30321, float %30327)
%30329 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %30328, float* %30329
%30330 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%30331 = load float, float* %30330
%30332 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%30333 = load float, float* %30332
%30334 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%30335 = load float, float* %30334
%30336 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%30337 = load float, float* %30336
%30338 = fmul float %30335, %30337
%30339 = fneg float %30338
%30340 = call float @llvm.fmuladd.f32(float %30331, float %30333, float %30339)
%30341 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %30340, float* %30341
%30342 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%30343 = load float, float* %30342
%30344 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%30345 = load float, float* %30344
%30346 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%30347 = load float, float* %30346
%30348 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%30349 = load float, float* %30348
%30350 = fmul float %30347, %30349
%30351 = fneg float %30350
%30352 = call float @llvm.fmuladd.f32(float %30343, float %30345, float %30351)
%30353 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %30352, float* %30353
%30354 = load float*, float** %12
%30355 = getelementptr inbounds float, float* %30354, i64 0
%30356 = load float, float* %30355
%30357 = load float*, float** %8
%30358 = getelementptr inbounds float, float* %30357, i64 0
%30359 = load float, float* %30358
%30360 = fsub float %30356, %30359
%30361 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %30360, float* %30361
%30362 = load float*, float** %12
%30363 = getelementptr inbounds float, float* %30362, i64 1
%30364 = load float, float* %30363
%30365 = load float*, float** %8
%30366 = getelementptr inbounds float, float* %30365, i64 1
%30367 = load float, float* %30366
%30368 = fsub float %30364, %30367
%30369 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %30368, float* %30369
%30370 = load float*, float** %12
%30371 = getelementptr inbounds float, float* %30370, i64 2
%30372 = load float, float* %30371
%30373 = load float*, float** %8
%30374 = getelementptr inbounds float, float* %30373, i64 2
%30375 = load float, float* %30374
%30376 = fsub float %30372, %30375
%30377 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %30376, float* %30377
%30378 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%30379 = load float, float* %30378
%30380 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%30381 = load float, float* %30380
%30382 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%30383 = load float, float* %30382
%30384 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%30385 = load float, float* %30384
%30386 = fmul float %30383, %30385
%30387 = call float @llvm.fmuladd.f32(float %30379, float %30381, float %30386)
%30388 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%30389 = load float, float* %30388
%30390 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%30391 = load float, float* %30390
%30392 = call float @llvm.fmuladd.f32(float %30389, float %30391, float %30387)
%30393 = fcmp ogt float %30392, 0.000000e+00
br i1 %30393, label %30394, label %30395
30394: ; preds = %30269
store i32 0, i32* %7
br label %37477
30395: ; preds = %30269
%30396 = load float*, float** %11
%30397 = getelementptr inbounds float, float* %30396, i64 0
%30398 = load float, float* %30397
%30399 = load float*, float** %9
%30400 = getelementptr inbounds float, float* %30399, i64 0
%30401 = load float, float* %30400
%30402 = fsub float %30398, %30401
%30403 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %30402, float* %30403
%30404 = load float*, float** %11
%30405 = getelementptr inbounds float, float* %30404, i64 1
%30406 = load float, float* %30405
%30407 = load float*, float** %9
%30408 = getelementptr inbounds float, float* %30407, i64 1
%30409 = load float, float* %30408
%30410 = fsub float %30406, %30409
%30411 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %30410, float* %30411
%30412 = load float*, float** %11
%30413 = getelementptr inbounds float, float* %30412, i64 2
%30414 = load float, float* %30413
%30415 = load float*, float** %9
%30416 = getelementptr inbounds float, float* %30415, i64 2
%30417 = load float, float* %30416
%30418 = fsub float %30414, %30417
%30419 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %30418, float* %30419
%30420 = load float*, float** %10
%30421 = getelementptr inbounds float, float* %30420, i64 0
%30422 = load float, float* %30421
%30423 = load float*, float** %9
%30424 = getelementptr inbounds float, float* %30423, i64 0
%30425 = load float, float* %30424
%30426 = fsub float %30422, %30425
%30427 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %30426, float* %30427
%30428 = load float*, float** %10
%30429 = getelementptr inbounds float, float* %30428, i64 1
%30430 = load float, float* %30429
%30431 = load float*, float** %9
%30432 = getelementptr inbounds float, float* %30431, i64 1
%30433 = load float, float* %30432
%30434 = fsub float %30430, %30433
%30435 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %30434, float* %30435
%30436 = load float*, float** %10
%30437 = getelementptr inbounds float, float* %30436, i64 2
%30438 = load float, float* %30437
%30439 = load float*, float** %9
%30440 = getelementptr inbounds float, float* %30439, i64 2
%30441 = load float, float* %30440
%30442 = fsub float %30438, %30441
%30443 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %30442, float* %30443
%30444 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%30445 = load float, float* %30444
%30446 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%30447 = load float, float* %30446
%30448 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%30449 = load float, float* %30448
%30450 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%30451 = load float, float* %30450
%30452 = fmul float %30449, %30451
%30453 = fneg float %30452
%30454 = call float @llvm.fmuladd.f32(float %30445, float %30447, float %30453)
%30455 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %30454, float* %30455
%30456 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%30457 = load float, float* %30456
%30458 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%30459 = load float, float* %30458
%30460 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%30461 = load float, float* %30460
%30462 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%30463 = load float, float* %30462
%30464 = fmul float %30461, %30463
%30465 = fneg float %30464
%30466 = call float @llvm.fmuladd.f32(float %30457, float %30459, float %30465)
%30467 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %30466, float* %30467
%30468 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%30469 = load float, float* %30468
%30470 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%30471 = load float, float* %30470
%30472 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%30473 = load float, float* %30472
%30474 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%30475 = load float, float* %30474
%30476 = fmul float %30473, %30475
%30477 = fneg float %30476
%30478 = call float @llvm.fmuladd.f32(float %30469, float %30471, float %30477)
%30479 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %30478, float* %30479
%30480 = load float*, float** %13
%30481 = getelementptr inbounds float, float* %30480, i64 0
%30482 = load float, float* %30481
%30483 = load float*, float** %9
%30484 = getelementptr inbounds float, float* %30483, i64 0
%30485 = load float, float* %30484
%30486 = fsub float %30482, %30485
%30487 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %30486, float* %30487
%30488 = load float*, float** %13
%30489 = getelementptr inbounds float, float* %30488, i64 1
%30490 = load float, float* %30489
%30491 = load float*, float** %9
%30492 = getelementptr inbounds float, float* %30491, i64 1
%30493 = load float, float* %30492
%30494 = fsub float %30490, %30493
%30495 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %30494, float* %30495
%30496 = load float*, float** %13
%30497 = getelementptr inbounds float, float* %30496, i64 2
%30498 = load float, float* %30497
%30499 = load float*, float** %9
%30500 = getelementptr inbounds float, float* %30499, i64 2
%30501 = load float, float* %30500
%30502 = fsub float %30498, %30501
%30503 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %30502, float* %30503
%30504 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%30505 = load float, float* %30504
%30506 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%30507 = load float, float* %30506
%30508 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%30509 = load float, float* %30508
%30510 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%30511 = load float, float* %30510
%30512 = fmul float %30509, %30511
%30513 = call float @llvm.fmuladd.f32(float %30505, float %30507, float %30512)
%30514 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%30515 = load float, float* %30514
%30516 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%30517 = load float, float* %30516
%30518 = call float @llvm.fmuladd.f32(float %30515, float %30517, float %30513)
%30519 = fcmp ogt float %30518, 0.000000e+00
br i1 %30519, label %30520, label %30521
30520: ; preds = %30395
store i32 0, i32* %7
br label %37477
30521: ; preds = %30395
store i32 1, i32* %7
br label %37477
30522: ; preds = %30266
%30523 = load float*, float** %12
%30524 = getelementptr inbounds float, float* %30523, i64 0
%30525 = load float, float* %30524
%30526 = load float*, float** %10
%30527 = getelementptr inbounds float, float* %30526, i64 0
%30528 = load float, float* %30527
%30529 = fsub float %30525, %30528
%30530 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %30529, float* %30530
%30531 = load float*, float** %12
%30532 = getelementptr inbounds float, float* %30531, i64 1
%30533 = load float, float* %30532
%30534 = load float*, float** %10
%30535 = getelementptr inbounds float, float* %30534, i64 1
%30536 = load float, float* %30535
%30537 = fsub float %30533, %30536
%30538 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %30537, float* %30538
%30539 = load float*, float** %12
%30540 = getelementptr inbounds float, float* %30539, i64 2
%30541 = load float, float* %30540
%30542 = load float*, float** %10
%30543 = getelementptr inbounds float, float* %30542, i64 2
%30544 = load float, float* %30543
%30545 = fsub float %30541, %30544
%30546 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %30545, float* %30546
%30547 = load float*, float** %9
%30548 = getelementptr inbounds float, float* %30547, i64 0
%30549 = load float, float* %30548
%30550 = load float*, float** %10
%30551 = getelementptr inbounds float, float* %30550, i64 0
%30552 = load float, float* %30551
%30553 = fsub float %30549, %30552
%30554 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %30553, float* %30554
%30555 = load float*, float** %9
%30556 = getelementptr inbounds float, float* %30555, i64 1
%30557 = load float, float* %30556
%30558 = load float*, float** %10
%30559 = getelementptr inbounds float, float* %30558, i64 1
%30560 = load float, float* %30559
%30561 = fsub float %30557, %30560
%30562 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %30561, float* %30562
%30563 = load float*, float** %9
%30564 = getelementptr inbounds float, float* %30563, i64 2
%30565 = load float, float* %30564
%30566 = load float*, float** %10
%30567 = getelementptr inbounds float, float* %30566, i64 2
%30568 = load float, float* %30567
%30569 = fsub float %30565, %30568
%30570 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %30569, float* %30570
%30571 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%30572 = load float, float* %30571
%30573 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%30574 = load float, float* %30573
%30575 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%30576 = load float, float* %30575
%30577 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%30578 = load float, float* %30577
%30579 = fmul float %30576, %30578
%30580 = fneg float %30579
%30581 = call float @llvm.fmuladd.f32(float %30572, float %30574, float %30580)
%30582 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %30581, float* %30582
%30583 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%30584 = load float, float* %30583
%30585 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%30586 = load float, float* %30585
%30587 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%30588 = load float, float* %30587
%30589 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%30590 = load float, float* %30589
%30591 = fmul float %30588, %30590
%30592 = fneg float %30591
%30593 = call float @llvm.fmuladd.f32(float %30584, float %30586, float %30592)
%30594 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %30593, float* %30594
%30595 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%30596 = load float, float* %30595
%30597 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%30598 = load float, float* %30597
%30599 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%30600 = load float, float* %30599
%30601 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%30602 = load float, float* %30601
%30603 = fmul float %30600, %30602
%30604 = fneg float %30603
%30605 = call float @llvm.fmuladd.f32(float %30596, float %30598, float %30604)
%30606 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %30605, float* %30606
%30607 = load float*, float** %13
%30608 = getelementptr inbounds float, float* %30607, i64 0
%30609 = load float, float* %30608
%30610 = load float*, float** %10
%30611 = getelementptr inbounds float, float* %30610, i64 0
%30612 = load float, float* %30611
%30613 = fsub float %30609, %30612
%30614 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %30613, float* %30614
%30615 = load float*, float** %13
%30616 = getelementptr inbounds float, float* %30615, i64 1
%30617 = load float, float* %30616
%30618 = load float*, float** %10
%30619 = getelementptr inbounds float, float* %30618, i64 1
%30620 = load float, float* %30619
%30621 = fsub float %30617, %30620
%30622 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %30621, float* %30622
%30623 = load float*, float** %13
%30624 = getelementptr inbounds float, float* %30623, i64 2
%30625 = load float, float* %30624
%30626 = load float*, float** %10
%30627 = getelementptr inbounds float, float* %30626, i64 2
%30628 = load float, float* %30627
%30629 = fsub float %30625, %30628
%30630 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %30629, float* %30630
%30631 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%30632 = load float, float* %30631
%30633 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%30634 = load float, float* %30633
%30635 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%30636 = load float, float* %30635
%30637 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%30638 = load float, float* %30637
%30639 = fmul float %30636, %30638
%30640 = call float @llvm.fmuladd.f32(float %30632, float %30634, float %30639)
%30641 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%30642 = load float, float* %30641
%30643 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%30644 = load float, float* %30643
%30645 = call float @llvm.fmuladd.f32(float %30642, float %30644, float %30640)
%30646 = fcmp ogt float %30645, 0.000000e+00
br i1 %30646, label %30647, label %30648
30647: ; preds = %30522
store i32 0, i32* %7
br label %37477
30648: ; preds = %30522
%30649 = load float*, float** %12
%30650 = getelementptr inbounds float, float* %30649, i64 0
%30651 = load float, float* %30650
%30652 = load float*, float** %9
%30653 = getelementptr inbounds float, float* %30652, i64 0
%30654 = load float, float* %30653
%30655 = fsub float %30651, %30654
%30656 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %30655, float* %30656
%30657 = load float*, float** %12
%30658 = getelementptr inbounds float, float* %30657, i64 1
%30659 = load float, float* %30658
%30660 = load float*, float** %9
%30661 = getelementptr inbounds float, float* %30660, i64 1
%30662 = load float, float* %30661
%30663 = fsub float %30659, %30662
%30664 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %30663, float* %30664
%30665 = load float*, float** %12
%30666 = getelementptr inbounds float, float* %30665, i64 2
%30667 = load float, float* %30666
%30668 = load float*, float** %9
%30669 = getelementptr inbounds float, float* %30668, i64 2
%30670 = load float, float* %30669
%30671 = fsub float %30667, %30670
%30672 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %30671, float* %30672
%30673 = load float*, float** %8
%30674 = getelementptr inbounds float, float* %30673, i64 0
%30675 = load float, float* %30674
%30676 = load float*, float** %9
%30677 = getelementptr inbounds float, float* %30676, i64 0
%30678 = load float, float* %30677
%30679 = fsub float %30675, %30678
%30680 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %30679, float* %30680
%30681 = load float*, float** %8
%30682 = getelementptr inbounds float, float* %30681, i64 1
%30683 = load float, float* %30682
%30684 = load float*, float** %9
%30685 = getelementptr inbounds float, float* %30684, i64 1
%30686 = load float, float* %30685
%30687 = fsub float %30683, %30686
%30688 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %30687, float* %30688
%30689 = load float*, float** %8
%30690 = getelementptr inbounds float, float* %30689, i64 2
%30691 = load float, float* %30690
%30692 = load float*, float** %9
%30693 = getelementptr inbounds float, float* %30692, i64 2
%30694 = load float, float* %30693
%30695 = fsub float %30691, %30694
%30696 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %30695, float* %30696
%30697 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%30698 = load float, float* %30697
%30699 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%30700 = load float, float* %30699
%30701 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%30702 = load float, float* %30701
%30703 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%30704 = load float, float* %30703
%30705 = fmul float %30702, %30704
%30706 = fneg float %30705
%30707 = call float @llvm.fmuladd.f32(float %30698, float %30700, float %30706)
%30708 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %30707, float* %30708
%30709 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%30710 = load float, float* %30709
%30711 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%30712 = load float, float* %30711
%30713 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%30714 = load float, float* %30713
%30715 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%30716 = load float, float* %30715
%30717 = fmul float %30714, %30716
%30718 = fneg float %30717
%30719 = call float @llvm.fmuladd.f32(float %30710, float %30712, float %30718)
%30720 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %30719, float* %30720
%30721 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%30722 = load float, float* %30721
%30723 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%30724 = load float, float* %30723
%30725 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%30726 = load float, float* %30725
%30727 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%30728 = load float, float* %30727
%30729 = fmul float %30726, %30728
%30730 = fneg float %30729
%30731 = call float @llvm.fmuladd.f32(float %30722, float %30724, float %30730)
%30732 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %30731, float* %30732
%30733 = load float*, float** %11
%30734 = getelementptr inbounds float, float* %30733, i64 0
%30735 = load float, float* %30734
%30736 = load float*, float** %9
%30737 = getelementptr inbounds float, float* %30736, i64 0
%30738 = load float, float* %30737
%30739 = fsub float %30735, %30738
%30740 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %30739, float* %30740
%30741 = load float*, float** %11
%30742 = getelementptr inbounds float, float* %30741, i64 1
%30743 = load float, float* %30742
%30744 = load float*, float** %9
%30745 = getelementptr inbounds float, float* %30744, i64 1
%30746 = load float, float* %30745
%30747 = fsub float %30743, %30746
%30748 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %30747, float* %30748
%30749 = load float*, float** %11
%30750 = getelementptr inbounds float, float* %30749, i64 2
%30751 = load float, float* %30750
%30752 = load float*, float** %9
%30753 = getelementptr inbounds float, float* %30752, i64 2
%30754 = load float, float* %30753
%30755 = fsub float %30751, %30754
%30756 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %30755, float* %30756
%30757 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%30758 = load float, float* %30757
%30759 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%30760 = load float, float* %30759
%30761 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%30762 = load float, float* %30761
%30763 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%30764 = load float, float* %30763
%30765 = fmul float %30762, %30764
%30766 = call float @llvm.fmuladd.f32(float %30758, float %30760, float %30765)
%30767 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%30768 = load float, float* %30767
%30769 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%30770 = load float, float* %30769
%30771 = call float @llvm.fmuladd.f32(float %30768, float %30770, float %30766)
%30772 = fcmp ogt float %30771, 0.000000e+00
br i1 %30772, label %30773, label %30774
30773: ; preds = %30648
store i32 0, i32* %7
br label %37477
30774: ; preds = %30648
store i32 1, i32* %7
br label %37477
30775: ; preds = %30263
%30776 = load float, float* %19
%30777 = fcmp ogt float %30776, 0.000000e+00
br i1 %30777, label %30778, label %31031
30778: ; preds = %30775
%30779 = load float*, float** %13
%30780 = getelementptr inbounds float, float* %30779, i64 0
%30781 = load float, float* %30780
%30782 = load float*, float** %10
%30783 = getelementptr inbounds float, float* %30782, i64 0
%30784 = load float, float* %30783
%30785 = fsub float %30781, %30784
%30786 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %30785, float* %30786
%30787 = load float*, float** %13
%30788 = getelementptr inbounds float, float* %30787, i64 1
%30789 = load float, float* %30788
%30790 = load float*, float** %10
%30791 = getelementptr inbounds float, float* %30790, i64 1
%30792 = load float, float* %30791
%30793 = fsub float %30789, %30792
%30794 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %30793, float* %30794
%30795 = load float*, float** %13
%30796 = getelementptr inbounds float, float* %30795, i64 2
%30797 = load float, float* %30796
%30798 = load float*, float** %10
%30799 = getelementptr inbounds float, float* %30798, i64 2
%30800 = load float, float* %30799
%30801 = fsub float %30797, %30800
%30802 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %30801, float* %30802
%30803 = load float*, float** %9
%30804 = getelementptr inbounds float, float* %30803, i64 0
%30805 = load float, float* %30804
%30806 = load float*, float** %10
%30807 = getelementptr inbounds float, float* %30806, i64 0
%30808 = load float, float* %30807
%30809 = fsub float %30805, %30808
%30810 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %30809, float* %30810
%30811 = load float*, float** %9
%30812 = getelementptr inbounds float, float* %30811, i64 1
%30813 = load float, float* %30812
%30814 = load float*, float** %10
%30815 = getelementptr inbounds float, float* %30814, i64 1
%30816 = load float, float* %30815
%30817 = fsub float %30813, %30816
%30818 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %30817, float* %30818
%30819 = load float*, float** %9
%30820 = getelementptr inbounds float, float* %30819, i64 2
%30821 = load float, float* %30820
%30822 = load float*, float** %10
%30823 = getelementptr inbounds float, float* %30822, i64 2
%30824 = load float, float* %30823
%30825 = fsub float %30821, %30824
%30826 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %30825, float* %30826
%30827 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%30828 = load float, float* %30827
%30829 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%30830 = load float, float* %30829
%30831 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%30832 = load float, float* %30831
%30833 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%30834 = load float, float* %30833
%30835 = fmul float %30832, %30834
%30836 = fneg float %30835
%30837 = call float @llvm.fmuladd.f32(float %30828, float %30830, float %30836)
%30838 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %30837, float* %30838
%30839 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%30840 = load float, float* %30839
%30841 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%30842 = load float, float* %30841
%30843 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%30844 = load float, float* %30843
%30845 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%30846 = load float, float* %30845
%30847 = fmul float %30844, %30846
%30848 = fneg float %30847
%30849 = call float @llvm.fmuladd.f32(float %30840, float %30842, float %30848)
%30850 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %30849, float* %30850
%30851 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%30852 = load float, float* %30851
%30853 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%30854 = load float, float* %30853
%30855 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%30856 = load float, float* %30855
%30857 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%30858 = load float, float* %30857
%30859 = fmul float %30856, %30858
%30860 = fneg float %30859
%30861 = call float @llvm.fmuladd.f32(float %30852, float %30854, float %30860)
%30862 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %30861, float* %30862
%30863 = load float*, float** %11
%30864 = getelementptr inbounds float, float* %30863, i64 0
%30865 = load float, float* %30864
%30866 = load float*, float** %10
%30867 = getelementptr inbounds float, float* %30866, i64 0
%30868 = load float, float* %30867
%30869 = fsub float %30865, %30868
%30870 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %30869, float* %30870
%30871 = load float*, float** %11
%30872 = getelementptr inbounds float, float* %30871, i64 1
%30873 = load float, float* %30872
%30874 = load float*, float** %10
%30875 = getelementptr inbounds float, float* %30874, i64 1
%30876 = load float, float* %30875
%30877 = fsub float %30873, %30876
%30878 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %30877, float* %30878
%30879 = load float*, float** %11
%30880 = getelementptr inbounds float, float* %30879, i64 2
%30881 = load float, float* %30880
%30882 = load float*, float** %10
%30883 = getelementptr inbounds float, float* %30882, i64 2
%30884 = load float, float* %30883
%30885 = fsub float %30881, %30884
%30886 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %30885, float* %30886
%30887 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%30888 = load float, float* %30887
%30889 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%30890 = load float, float* %30889
%30891 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%30892 = load float, float* %30891
%30893 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%30894 = load float, float* %30893
%30895 = fmul float %30892, %30894
%30896 = call float @llvm.fmuladd.f32(float %30888, float %30890, float %30895)
%30897 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%30898 = load float, float* %30897
%30899 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%30900 = load float, float* %30899
%30901 = call float @llvm.fmuladd.f32(float %30898, float %30900, float %30896)
%30902 = fcmp ogt float %30901, 0.000000e+00
br i1 %30902, label %30903, label %30904
30903: ; preds = %30778
store i32 0, i32* %7
br label %37477
30904: ; preds = %30778
%30905 = load float*, float** %13
%30906 = getelementptr inbounds float, float* %30905, i64 0
%30907 = load float, float* %30906
%30908 = load float*, float** %9
%30909 = getelementptr inbounds float, float* %30908, i64 0
%30910 = load float, float* %30909
%30911 = fsub float %30907, %30910
%30912 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %30911, float* %30912
%30913 = load float*, float** %13
%30914 = getelementptr inbounds float, float* %30913, i64 1
%30915 = load float, float* %30914
%30916 = load float*, float** %9
%30917 = getelementptr inbounds float, float* %30916, i64 1
%30918 = load float, float* %30917
%30919 = fsub float %30915, %30918
%30920 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %30919, float* %30920
%30921 = load float*, float** %13
%30922 = getelementptr inbounds float, float* %30921, i64 2
%30923 = load float, float* %30922
%30924 = load float*, float** %9
%30925 = getelementptr inbounds float, float* %30924, i64 2
%30926 = load float, float* %30925
%30927 = fsub float %30923, %30926
%30928 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %30927, float* %30928
%30929 = load float*, float** %8
%30930 = getelementptr inbounds float, float* %30929, i64 0
%30931 = load float, float* %30930
%30932 = load float*, float** %9
%30933 = getelementptr inbounds float, float* %30932, i64 0
%30934 = load float, float* %30933
%30935 = fsub float %30931, %30934
%30936 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %30935, float* %30936
%30937 = load float*, float** %8
%30938 = getelementptr inbounds float, float* %30937, i64 1
%30939 = load float, float* %30938
%30940 = load float*, float** %9
%30941 = getelementptr inbounds float, float* %30940, i64 1
%30942 = load float, float* %30941
%30943 = fsub float %30939, %30942
%30944 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %30943, float* %30944
%30945 = load float*, float** %8
%30946 = getelementptr inbounds float, float* %30945, i64 2
%30947 = load float, float* %30946
%30948 = load float*, float** %9
%30949 = getelementptr inbounds float, float* %30948, i64 2
%30950 = load float, float* %30949
%30951 = fsub float %30947, %30950
%30952 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %30951, float* %30952
%30953 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%30954 = load float, float* %30953
%30955 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%30956 = load float, float* %30955
%30957 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%30958 = load float, float* %30957
%30959 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%30960 = load float, float* %30959
%30961 = fmul float %30958, %30960
%30962 = fneg float %30961
%30963 = call float @llvm.fmuladd.f32(float %30954, float %30956, float %30962)
%30964 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %30963, float* %30964
%30965 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%30966 = load float, float* %30965
%30967 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%30968 = load float, float* %30967
%30969 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%30970 = load float, float* %30969
%30971 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%30972 = load float, float* %30971
%30973 = fmul float %30970, %30972
%30974 = fneg float %30973
%30975 = call float @llvm.fmuladd.f32(float %30966, float %30968, float %30974)
%30976 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %30975, float* %30976
%30977 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%30978 = load float, float* %30977
%30979 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%30980 = load float, float* %30979
%30981 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%30982 = load float, float* %30981
%30983 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%30984 = load float, float* %30983
%30985 = fmul float %30982, %30984
%30986 = fneg float %30985
%30987 = call float @llvm.fmuladd.f32(float %30978, float %30980, float %30986)
%30988 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %30987, float* %30988
%30989 = load float*, float** %12
%30990 = getelementptr inbounds float, float* %30989, i64 0
%30991 = load float, float* %30990
%30992 = load float*, float** %9
%30993 = getelementptr inbounds float, float* %30992, i64 0
%30994 = load float, float* %30993
%30995 = fsub float %30991, %30994
%30996 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %30995, float* %30996
%30997 = load float*, float** %12
%30998 = getelementptr inbounds float, float* %30997, i64 1
%30999 = load float, float* %30998
%31000 = load float*, float** %9
%31001 = getelementptr inbounds float, float* %31000, i64 1
%31002 = load float, float* %31001
%31003 = fsub float %30999, %31002
%31004 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %31003, float* %31004
%31005 = load float*, float** %12
%31006 = getelementptr inbounds float, float* %31005, i64 2
%31007 = load float, float* %31006
%31008 = load float*, float** %9
%31009 = getelementptr inbounds float, float* %31008, i64 2
%31010 = load float, float* %31009
%31011 = fsub float %31007, %31010
%31012 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %31011, float* %31012
%31013 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%31014 = load float, float* %31013
%31015 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%31016 = load float, float* %31015
%31017 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%31018 = load float, float* %31017
%31019 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%31020 = load float, float* %31019
%31021 = fmul float %31018, %31020
%31022 = call float @llvm.fmuladd.f32(float %31014, float %31016, float %31021)
%31023 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%31024 = load float, float* %31023
%31025 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%31026 = load float, float* %31025
%31027 = call float @llvm.fmuladd.f32(float %31024, float %31026, float %31022)
%31028 = fcmp ogt float %31027, 0.000000e+00
br i1 %31028, label %31029, label %31030
31029: ; preds = %30904
store i32 0, i32* %7
br label %37477
31030: ; preds = %30904
store i32 1, i32* %7
br label %37477
31031: ; preds = %30775
%31032 = load float, float* %19
%31033 = fcmp olt float %31032, 0.000000e+00
br i1 %31033, label %31034, label %31287
31034: ; preds = %31031
%31035 = load float*, float** %13
%31036 = getelementptr inbounds float, float* %31035, i64 0
%31037 = load float, float* %31036
%31038 = load float*, float** %8
%31039 = getelementptr inbounds float, float* %31038, i64 0
%31040 = load float, float* %31039
%31041 = fsub float %31037, %31040
%31042 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %31041, float* %31042
%31043 = load float*, float** %13
%31044 = getelementptr inbounds float, float* %31043, i64 1
%31045 = load float, float* %31044
%31046 = load float*, float** %8
%31047 = getelementptr inbounds float, float* %31046, i64 1
%31048 = load float, float* %31047
%31049 = fsub float %31045, %31048
%31050 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %31049, float* %31050
%31051 = load float*, float** %13
%31052 = getelementptr inbounds float, float* %31051, i64 2
%31053 = load float, float* %31052
%31054 = load float*, float** %8
%31055 = getelementptr inbounds float, float* %31054, i64 2
%31056 = load float, float* %31055
%31057 = fsub float %31053, %31056
%31058 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %31057, float* %31058
%31059 = load float*, float** %9
%31060 = getelementptr inbounds float, float* %31059, i64 0
%31061 = load float, float* %31060
%31062 = load float*, float** %8
%31063 = getelementptr inbounds float, float* %31062, i64 0
%31064 = load float, float* %31063
%31065 = fsub float %31061, %31064
%31066 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %31065, float* %31066
%31067 = load float*, float** %9
%31068 = getelementptr inbounds float, float* %31067, i64 1
%31069 = load float, float* %31068
%31070 = load float*, float** %8
%31071 = getelementptr inbounds float, float* %31070, i64 1
%31072 = load float, float* %31071
%31073 = fsub float %31069, %31072
%31074 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %31073, float* %31074
%31075 = load float*, float** %9
%31076 = getelementptr inbounds float, float* %31075, i64 2
%31077 = load float, float* %31076
%31078 = load float*, float** %8
%31079 = getelementptr inbounds float, float* %31078, i64 2
%31080 = load float, float* %31079
%31081 = fsub float %31077, %31080
%31082 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %31081, float* %31082
%31083 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%31084 = load float, float* %31083
%31085 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%31086 = load float, float* %31085
%31087 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%31088 = load float, float* %31087
%31089 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%31090 = load float, float* %31089
%31091 = fmul float %31088, %31090
%31092 = fneg float %31091
%31093 = call float @llvm.fmuladd.f32(float %31084, float %31086, float %31092)
%31094 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %31093, float* %31094
%31095 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%31096 = load float, float* %31095
%31097 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%31098 = load float, float* %31097
%31099 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%31100 = load float, float* %31099
%31101 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%31102 = load float, float* %31101
%31103 = fmul float %31100, %31102
%31104 = fneg float %31103
%31105 = call float @llvm.fmuladd.f32(float %31096, float %31098, float %31104)
%31106 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %31105, float* %31106
%31107 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%31108 = load float, float* %31107
%31109 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%31110 = load float, float* %31109
%31111 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%31112 = load float, float* %31111
%31113 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%31114 = load float, float* %31113
%31115 = fmul float %31112, %31114
%31116 = fneg float %31115
%31117 = call float @llvm.fmuladd.f32(float %31108, float %31110, float %31116)
%31118 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %31117, float* %31118
%31119 = load float*, float** %11
%31120 = getelementptr inbounds float, float* %31119, i64 0
%31121 = load float, float* %31120
%31122 = load float*, float** %8
%31123 = getelementptr inbounds float, float* %31122, i64 0
%31124 = load float, float* %31123
%31125 = fsub float %31121, %31124
%31126 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %31125, float* %31126
%31127 = load float*, float** %11
%31128 = getelementptr inbounds float, float* %31127, i64 1
%31129 = load float, float* %31128
%31130 = load float*, float** %8
%31131 = getelementptr inbounds float, float* %31130, i64 1
%31132 = load float, float* %31131
%31133 = fsub float %31129, %31132
%31134 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %31133, float* %31134
%31135 = load float*, float** %11
%31136 = getelementptr inbounds float, float* %31135, i64 2
%31137 = load float, float* %31136
%31138 = load float*, float** %8
%31139 = getelementptr inbounds float, float* %31138, i64 2
%31140 = load float, float* %31139
%31141 = fsub float %31137, %31140
%31142 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %31141, float* %31142
%31143 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%31144 = load float, float* %31143
%31145 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%31146 = load float, float* %31145
%31147 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%31148 = load float, float* %31147
%31149 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%31150 = load float, float* %31149
%31151 = fmul float %31148, %31150
%31152 = call float @llvm.fmuladd.f32(float %31144, float %31146, float %31151)
%31153 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%31154 = load float, float* %31153
%31155 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%31156 = load float, float* %31155
%31157 = call float @llvm.fmuladd.f32(float %31154, float %31156, float %31152)
%31158 = fcmp ogt float %31157, 0.000000e+00
br i1 %31158, label %31159, label %31160
31159: ; preds = %31034
store i32 0, i32* %7
br label %37477
31160: ; preds = %31034
%31161 = load float*, float** %13
%31162 = getelementptr inbounds float, float* %31161, i64 0
%31163 = load float, float* %31162
%31164 = load float*, float** %9
%31165 = getelementptr inbounds float, float* %31164, i64 0
%31166 = load float, float* %31165
%31167 = fsub float %31163, %31166
%31168 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %31167, float* %31168
%31169 = load float*, float** %13
%31170 = getelementptr inbounds float, float* %31169, i64 1
%31171 = load float, float* %31170
%31172 = load float*, float** %9
%31173 = getelementptr inbounds float, float* %31172, i64 1
%31174 = load float, float* %31173
%31175 = fsub float %31171, %31174
%31176 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %31175, float* %31176
%31177 = load float*, float** %13
%31178 = getelementptr inbounds float, float* %31177, i64 2
%31179 = load float, float* %31178
%31180 = load float*, float** %9
%31181 = getelementptr inbounds float, float* %31180, i64 2
%31182 = load float, float* %31181
%31183 = fsub float %31179, %31182
%31184 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %31183, float* %31184
%31185 = load float*, float** %10
%31186 = getelementptr inbounds float, float* %31185, i64 0
%31187 = load float, float* %31186
%31188 = load float*, float** %9
%31189 = getelementptr inbounds float, float* %31188, i64 0
%31190 = load float, float* %31189
%31191 = fsub float %31187, %31190
%31192 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %31191, float* %31192
%31193 = load float*, float** %10
%31194 = getelementptr inbounds float, float* %31193, i64 1
%31195 = load float, float* %31194
%31196 = load float*, float** %9
%31197 = getelementptr inbounds float, float* %31196, i64 1
%31198 = load float, float* %31197
%31199 = fsub float %31195, %31198
%31200 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %31199, float* %31200
%31201 = load float*, float** %10
%31202 = getelementptr inbounds float, float* %31201, i64 2
%31203 = load float, float* %31202
%31204 = load float*, float** %9
%31205 = getelementptr inbounds float, float* %31204, i64 2
%31206 = load float, float* %31205
%31207 = fsub float %31203, %31206
%31208 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %31207, float* %31208
%31209 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%31210 = load float, float* %31209
%31211 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%31212 = load float, float* %31211
%31213 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%31214 = load float, float* %31213
%31215 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%31216 = load float, float* %31215
%31217 = fmul float %31214, %31216
%31218 = fneg float %31217
%31219 = call float @llvm.fmuladd.f32(float %31210, float %31212, float %31218)
%31220 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %31219, float* %31220
%31221 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%31222 = load float, float* %31221
%31223 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%31224 = load float, float* %31223
%31225 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%31226 = load float, float* %31225
%31227 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%31228 = load float, float* %31227
%31229 = fmul float %31226, %31228
%31230 = fneg float %31229
%31231 = call float @llvm.fmuladd.f32(float %31222, float %31224, float %31230)
%31232 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %31231, float* %31232
%31233 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%31234 = load float, float* %31233
%31235 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%31236 = load float, float* %31235
%31237 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%31238 = load float, float* %31237
%31239 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%31240 = load float, float* %31239
%31241 = fmul float %31238, %31240
%31242 = fneg float %31241
%31243 = call float @llvm.fmuladd.f32(float %31234, float %31236, float %31242)
%31244 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %31243, float* %31244
%31245 = load float*, float** %12
%31246 = getelementptr inbounds float, float* %31245, i64 0
%31247 = load float, float* %31246
%31248 = load float*, float** %9
%31249 = getelementptr inbounds float, float* %31248, i64 0
%31250 = load float, float* %31249
%31251 = fsub float %31247, %31250
%31252 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %31251, float* %31252
%31253 = load float*, float** %12
%31254 = getelementptr inbounds float, float* %31253, i64 1
%31255 = load float, float* %31254
%31256 = load float*, float** %9
%31257 = getelementptr inbounds float, float* %31256, i64 1
%31258 = load float, float* %31257
%31259 = fsub float %31255, %31258
%31260 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %31259, float* %31260
%31261 = load float*, float** %12
%31262 = getelementptr inbounds float, float* %31261, i64 2
%31263 = load float, float* %31262
%31264 = load float*, float** %9
%31265 = getelementptr inbounds float, float* %31264, i64 2
%31266 = load float, float* %31265
%31267 = fsub float %31263, %31266
%31268 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %31267, float* %31268
%31269 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%31270 = load float, float* %31269
%31271 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%31272 = load float, float* %31271
%31273 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%31274 = load float, float* %31273
%31275 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%31276 = load float, float* %31275
%31277 = fmul float %31274, %31276
%31278 = call float @llvm.fmuladd.f32(float %31270, float %31272, float %31277)
%31279 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%31280 = load float, float* %31279
%31281 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%31282 = load float, float* %31281
%31283 = call float @llvm.fmuladd.f32(float %31280, float %31282, float %31278)
%31284 = fcmp ogt float %31283, 0.000000e+00
br i1 %31284, label %31285, label %31286
31285: ; preds = %31160
store i32 0, i32* %7
br label %37477
31286: ; preds = %31160
store i32 1, i32* %7
br label %37477
31287: ; preds = %31031
%31288 = load float*, float** %9
%31289 = load float*, float** %10
%31290 = load float*, float** %8
%31291 = load float*, float** %11
%31292 = load float*, float** %12
%31293 = load float*, float** %13
%31294 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%31295 = getelementptr inbounds [3 x float], [3 x float]* %23, i64 0, i64 0
%31296 = call i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...) bitcast (i32 (...)* @coplanar_tri_tri3d to i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...)*)(float* %31288, float* %31289, float* %31290, float* %31291, float* %31292, float* %31293, float* %31294, float* %31295)
store i32 %31296, i32* %7
br label %37477
31297: ; preds = %25127
%31298 = load float, float* %16
%31299 = fcmp ogt float %31298, 0.000000e+00
br i1 %31299, label %31300, label %34382
31300: ; preds = %31297
%31301 = load float, float* %17
%31302 = fcmp ogt float %31301, 0.000000e+00
br i1 %31302, label %31303, label %32068
31303: ; preds = %31300
%31304 = load float, float* %18
%31305 = fcmp ogt float %31304, 0.000000e+00
br i1 %31305, label %31306, label %31559
31306: ; preds = %31303
%31307 = load float*, float** %13
%31308 = getelementptr inbounds float, float* %31307, i64 0
%31309 = load float, float* %31308
%31310 = load float*, float** %9
%31311 = getelementptr inbounds float, float* %31310, i64 0
%31312 = load float, float* %31311
%31313 = fsub float %31309, %31312
%31314 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %31313, float* %31314
%31315 = load float*, float** %13
%31316 = getelementptr inbounds float, float* %31315, i64 1
%31317 = load float, float* %31316
%31318 = load float*, float** %9
%31319 = getelementptr inbounds float, float* %31318, i64 1
%31320 = load float, float* %31319
%31321 = fsub float %31317, %31320
%31322 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %31321, float* %31322
%31323 = load float*, float** %13
%31324 = getelementptr inbounds float, float* %31323, i64 2
%31325 = load float, float* %31324
%31326 = load float*, float** %9
%31327 = getelementptr inbounds float, float* %31326, i64 2
%31328 = load float, float* %31327
%31329 = fsub float %31325, %31328
%31330 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %31329, float* %31330
%31331 = load float*, float** %10
%31332 = getelementptr inbounds float, float* %31331, i64 0
%31333 = load float, float* %31332
%31334 = load float*, float** %9
%31335 = getelementptr inbounds float, float* %31334, i64 0
%31336 = load float, float* %31335
%31337 = fsub float %31333, %31336
%31338 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %31337, float* %31338
%31339 = load float*, float** %10
%31340 = getelementptr inbounds float, float* %31339, i64 1
%31341 = load float, float* %31340
%31342 = load float*, float** %9
%31343 = getelementptr inbounds float, float* %31342, i64 1
%31344 = load float, float* %31343
%31345 = fsub float %31341, %31344
%31346 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %31345, float* %31346
%31347 = load float*, float** %10
%31348 = getelementptr inbounds float, float* %31347, i64 2
%31349 = load float, float* %31348
%31350 = load float*, float** %9
%31351 = getelementptr inbounds float, float* %31350, i64 2
%31352 = load float, float* %31351
%31353 = fsub float %31349, %31352
%31354 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %31353, float* %31354
%31355 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%31356 = load float, float* %31355
%31357 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%31358 = load float, float* %31357
%31359 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%31360 = load float, float* %31359
%31361 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%31362 = load float, float* %31361
%31363 = fmul float %31360, %31362
%31364 = fneg float %31363
%31365 = call float @llvm.fmuladd.f32(float %31356, float %31358, float %31364)
%31366 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %31365, float* %31366
%31367 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%31368 = load float, float* %31367
%31369 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%31370 = load float, float* %31369
%31371 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%31372 = load float, float* %31371
%31373 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%31374 = load float, float* %31373
%31375 = fmul float %31372, %31374
%31376 = fneg float %31375
%31377 = call float @llvm.fmuladd.f32(float %31368, float %31370, float %31376)
%31378 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %31377, float* %31378
%31379 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%31380 = load float, float* %31379
%31381 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%31382 = load float, float* %31381
%31383 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%31384 = load float, float* %31383
%31385 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%31386 = load float, float* %31385
%31387 = fmul float %31384, %31386
%31388 = fneg float %31387
%31389 = call float @llvm.fmuladd.f32(float %31380, float %31382, float %31388)
%31390 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %31389, float* %31390
%31391 = load float*, float** %11
%31392 = getelementptr inbounds float, float* %31391, i64 0
%31393 = load float, float* %31392
%31394 = load float*, float** %9
%31395 = getelementptr inbounds float, float* %31394, i64 0
%31396 = load float, float* %31395
%31397 = fsub float %31393, %31396
%31398 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %31397, float* %31398
%31399 = load float*, float** %11
%31400 = getelementptr inbounds float, float* %31399, i64 1
%31401 = load float, float* %31400
%31402 = load float*, float** %9
%31403 = getelementptr inbounds float, float* %31402, i64 1
%31404 = load float, float* %31403
%31405 = fsub float %31401, %31404
%31406 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %31405, float* %31406
%31407 = load float*, float** %11
%31408 = getelementptr inbounds float, float* %31407, i64 2
%31409 = load float, float* %31408
%31410 = load float*, float** %9
%31411 = getelementptr inbounds float, float* %31410, i64 2
%31412 = load float, float* %31411
%31413 = fsub float %31409, %31412
%31414 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %31413, float* %31414
%31415 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%31416 = load float, float* %31415
%31417 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%31418 = load float, float* %31417
%31419 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%31420 = load float, float* %31419
%31421 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%31422 = load float, float* %31421
%31423 = fmul float %31420, %31422
%31424 = call float @llvm.fmuladd.f32(float %31416, float %31418, float %31423)
%31425 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%31426 = load float, float* %31425
%31427 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%31428 = load float, float* %31427
%31429 = call float @llvm.fmuladd.f32(float %31426, float %31428, float %31424)
%31430 = fcmp ogt float %31429, 0.000000e+00
br i1 %31430, label %31431, label %31432
31431: ; preds = %31306
store i32 0, i32* %7
br label %37477
31432: ; preds = %31306
%31433 = load float*, float** %13
%31434 = getelementptr inbounds float, float* %31433, i64 0
%31435 = load float, float* %31434
%31436 = load float*, float** %10
%31437 = getelementptr inbounds float, float* %31436, i64 0
%31438 = load float, float* %31437
%31439 = fsub float %31435, %31438
%31440 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %31439, float* %31440
%31441 = load float*, float** %13
%31442 = getelementptr inbounds float, float* %31441, i64 1
%31443 = load float, float* %31442
%31444 = load float*, float** %10
%31445 = getelementptr inbounds float, float* %31444, i64 1
%31446 = load float, float* %31445
%31447 = fsub float %31443, %31446
%31448 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %31447, float* %31448
%31449 = load float*, float** %13
%31450 = getelementptr inbounds float, float* %31449, i64 2
%31451 = load float, float* %31450
%31452 = load float*, float** %10
%31453 = getelementptr inbounds float, float* %31452, i64 2
%31454 = load float, float* %31453
%31455 = fsub float %31451, %31454
%31456 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %31455, float* %31456
%31457 = load float*, float** %8
%31458 = getelementptr inbounds float, float* %31457, i64 0
%31459 = load float, float* %31458
%31460 = load float*, float** %10
%31461 = getelementptr inbounds float, float* %31460, i64 0
%31462 = load float, float* %31461
%31463 = fsub float %31459, %31462
%31464 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %31463, float* %31464
%31465 = load float*, float** %8
%31466 = getelementptr inbounds float, float* %31465, i64 1
%31467 = load float, float* %31466
%31468 = load float*, float** %10
%31469 = getelementptr inbounds float, float* %31468, i64 1
%31470 = load float, float* %31469
%31471 = fsub float %31467, %31470
%31472 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %31471, float* %31472
%31473 = load float*, float** %8
%31474 = getelementptr inbounds float, float* %31473, i64 2
%31475 = load float, float* %31474
%31476 = load float*, float** %10
%31477 = getelementptr inbounds float, float* %31476, i64 2
%31478 = load float, float* %31477
%31479 = fsub float %31475, %31478
%31480 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %31479, float* %31480
%31481 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%31482 = load float, float* %31481
%31483 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%31484 = load float, float* %31483
%31485 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%31486 = load float, float* %31485
%31487 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%31488 = load float, float* %31487
%31489 = fmul float %31486, %31488
%31490 = fneg float %31489
%31491 = call float @llvm.fmuladd.f32(float %31482, float %31484, float %31490)
%31492 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %31491, float* %31492
%31493 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%31494 = load float, float* %31493
%31495 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%31496 = load float, float* %31495
%31497 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%31498 = load float, float* %31497
%31499 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%31500 = load float, float* %31499
%31501 = fmul float %31498, %31500
%31502 = fneg float %31501
%31503 = call float @llvm.fmuladd.f32(float %31494, float %31496, float %31502)
%31504 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %31503, float* %31504
%31505 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%31506 = load float, float* %31505
%31507 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%31508 = load float, float* %31507
%31509 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%31510 = load float, float* %31509
%31511 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%31512 = load float, float* %31511
%31513 = fmul float %31510, %31512
%31514 = fneg float %31513
%31515 = call float @llvm.fmuladd.f32(float %31506, float %31508, float %31514)
%31516 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %31515, float* %31516
%31517 = load float*, float** %12
%31518 = getelementptr inbounds float, float* %31517, i64 0
%31519 = load float, float* %31518
%31520 = load float*, float** %10
%31521 = getelementptr inbounds float, float* %31520, i64 0
%31522 = load float, float* %31521
%31523 = fsub float %31519, %31522
%31524 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %31523, float* %31524
%31525 = load float*, float** %12
%31526 = getelementptr inbounds float, float* %31525, i64 1
%31527 = load float, float* %31526
%31528 = load float*, float** %10
%31529 = getelementptr inbounds float, float* %31528, i64 1
%31530 = load float, float* %31529
%31531 = fsub float %31527, %31530
%31532 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %31531, float* %31532
%31533 = load float*, float** %12
%31534 = getelementptr inbounds float, float* %31533, i64 2
%31535 = load float, float* %31534
%31536 = load float*, float** %10
%31537 = getelementptr inbounds float, float* %31536, i64 2
%31538 = load float, float* %31537
%31539 = fsub float %31535, %31538
%31540 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %31539, float* %31540
%31541 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%31542 = load float, float* %31541
%31543 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%31544 = load float, float* %31543
%31545 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%31546 = load float, float* %31545
%31547 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%31548 = load float, float* %31547
%31549 = fmul float %31546, %31548
%31550 = call float @llvm.fmuladd.f32(float %31542, float %31544, float %31549)
%31551 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%31552 = load float, float* %31551
%31553 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%31554 = load float, float* %31553
%31555 = call float @llvm.fmuladd.f32(float %31552, float %31554, float %31550)
%31556 = fcmp ogt float %31555, 0.000000e+00
br i1 %31556, label %31557, label %31558
31557: ; preds = %31432
store i32 0, i32* %7
br label %37477
31558: ; preds = %31432
store i32 1, i32* %7
br label %37477
31559: ; preds = %31303
%31560 = load float, float* %19
%31561 = fcmp ogt float %31560, 0.000000e+00
br i1 %31561, label %31562, label %31815
31562: ; preds = %31559
%31563 = load float*, float** %12
%31564 = getelementptr inbounds float, float* %31563, i64 0
%31565 = load float, float* %31564
%31566 = load float*, float** %9
%31567 = getelementptr inbounds float, float* %31566, i64 0
%31568 = load float, float* %31567
%31569 = fsub float %31565, %31568
%31570 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %31569, float* %31570
%31571 = load float*, float** %12
%31572 = getelementptr inbounds float, float* %31571, i64 1
%31573 = load float, float* %31572
%31574 = load float*, float** %9
%31575 = getelementptr inbounds float, float* %31574, i64 1
%31576 = load float, float* %31575
%31577 = fsub float %31573, %31576
%31578 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %31577, float* %31578
%31579 = load float*, float** %12
%31580 = getelementptr inbounds float, float* %31579, i64 2
%31581 = load float, float* %31580
%31582 = load float*, float** %9
%31583 = getelementptr inbounds float, float* %31582, i64 2
%31584 = load float, float* %31583
%31585 = fsub float %31581, %31584
%31586 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %31585, float* %31586
%31587 = load float*, float** %10
%31588 = getelementptr inbounds float, float* %31587, i64 0
%31589 = load float, float* %31588
%31590 = load float*, float** %9
%31591 = getelementptr inbounds float, float* %31590, i64 0
%31592 = load float, float* %31591
%31593 = fsub float %31589, %31592
%31594 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %31593, float* %31594
%31595 = load float*, float** %10
%31596 = getelementptr inbounds float, float* %31595, i64 1
%31597 = load float, float* %31596
%31598 = load float*, float** %9
%31599 = getelementptr inbounds float, float* %31598, i64 1
%31600 = load float, float* %31599
%31601 = fsub float %31597, %31600
%31602 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %31601, float* %31602
%31603 = load float*, float** %10
%31604 = getelementptr inbounds float, float* %31603, i64 2
%31605 = load float, float* %31604
%31606 = load float*, float** %9
%31607 = getelementptr inbounds float, float* %31606, i64 2
%31608 = load float, float* %31607
%31609 = fsub float %31605, %31608
%31610 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %31609, float* %31610
%31611 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%31612 = load float, float* %31611
%31613 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%31614 = load float, float* %31613
%31615 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%31616 = load float, float* %31615
%31617 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%31618 = load float, float* %31617
%31619 = fmul float %31616, %31618
%31620 = fneg float %31619
%31621 = call float @llvm.fmuladd.f32(float %31612, float %31614, float %31620)
%31622 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %31621, float* %31622
%31623 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%31624 = load float, float* %31623
%31625 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%31626 = load float, float* %31625
%31627 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%31628 = load float, float* %31627
%31629 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%31630 = load float, float* %31629
%31631 = fmul float %31628, %31630
%31632 = fneg float %31631
%31633 = call float @llvm.fmuladd.f32(float %31624, float %31626, float %31632)
%31634 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %31633, float* %31634
%31635 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%31636 = load float, float* %31635
%31637 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%31638 = load float, float* %31637
%31639 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%31640 = load float, float* %31639
%31641 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%31642 = load float, float* %31641
%31643 = fmul float %31640, %31642
%31644 = fneg float %31643
%31645 = call float @llvm.fmuladd.f32(float %31636, float %31638, float %31644)
%31646 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %31645, float* %31646
%31647 = load float*, float** %13
%31648 = getelementptr inbounds float, float* %31647, i64 0
%31649 = load float, float* %31648
%31650 = load float*, float** %9
%31651 = getelementptr inbounds float, float* %31650, i64 0
%31652 = load float, float* %31651
%31653 = fsub float %31649, %31652
%31654 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %31653, float* %31654
%31655 = load float*, float** %13
%31656 = getelementptr inbounds float, float* %31655, i64 1
%31657 = load float, float* %31656
%31658 = load float*, float** %9
%31659 = getelementptr inbounds float, float* %31658, i64 1
%31660 = load float, float* %31659
%31661 = fsub float %31657, %31660
%31662 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %31661, float* %31662
%31663 = load float*, float** %13
%31664 = getelementptr inbounds float, float* %31663, i64 2
%31665 = load float, float* %31664
%31666 = load float*, float** %9
%31667 = getelementptr inbounds float, float* %31666, i64 2
%31668 = load float, float* %31667
%31669 = fsub float %31665, %31668
%31670 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %31669, float* %31670
%31671 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%31672 = load float, float* %31671
%31673 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%31674 = load float, float* %31673
%31675 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%31676 = load float, float* %31675
%31677 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%31678 = load float, float* %31677
%31679 = fmul float %31676, %31678
%31680 = call float @llvm.fmuladd.f32(float %31672, float %31674, float %31679)
%31681 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%31682 = load float, float* %31681
%31683 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%31684 = load float, float* %31683
%31685 = call float @llvm.fmuladd.f32(float %31682, float %31684, float %31680)
%31686 = fcmp ogt float %31685, 0.000000e+00
br i1 %31686, label %31687, label %31688
31687: ; preds = %31562
store i32 0, i32* %7
br label %37477
31688: ; preds = %31562
%31689 = load float*, float** %12
%31690 = getelementptr inbounds float, float* %31689, i64 0
%31691 = load float, float* %31690
%31692 = load float*, float** %10
%31693 = getelementptr inbounds float, float* %31692, i64 0
%31694 = load float, float* %31693
%31695 = fsub float %31691, %31694
%31696 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %31695, float* %31696
%31697 = load float*, float** %12
%31698 = getelementptr inbounds float, float* %31697, i64 1
%31699 = load float, float* %31698
%31700 = load float*, float** %10
%31701 = getelementptr inbounds float, float* %31700, i64 1
%31702 = load float, float* %31701
%31703 = fsub float %31699, %31702
%31704 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %31703, float* %31704
%31705 = load float*, float** %12
%31706 = getelementptr inbounds float, float* %31705, i64 2
%31707 = load float, float* %31706
%31708 = load float*, float** %10
%31709 = getelementptr inbounds float, float* %31708, i64 2
%31710 = load float, float* %31709
%31711 = fsub float %31707, %31710
%31712 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %31711, float* %31712
%31713 = load float*, float** %8
%31714 = getelementptr inbounds float, float* %31713, i64 0
%31715 = load float, float* %31714
%31716 = load float*, float** %10
%31717 = getelementptr inbounds float, float* %31716, i64 0
%31718 = load float, float* %31717
%31719 = fsub float %31715, %31718
%31720 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %31719, float* %31720
%31721 = load float*, float** %8
%31722 = getelementptr inbounds float, float* %31721, i64 1
%31723 = load float, float* %31722
%31724 = load float*, float** %10
%31725 = getelementptr inbounds float, float* %31724, i64 1
%31726 = load float, float* %31725
%31727 = fsub float %31723, %31726
%31728 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %31727, float* %31728
%31729 = load float*, float** %8
%31730 = getelementptr inbounds float, float* %31729, i64 2
%31731 = load float, float* %31730
%31732 = load float*, float** %10
%31733 = getelementptr inbounds float, float* %31732, i64 2
%31734 = load float, float* %31733
%31735 = fsub float %31731, %31734
%31736 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %31735, float* %31736
%31737 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%31738 = load float, float* %31737
%31739 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%31740 = load float, float* %31739
%31741 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%31742 = load float, float* %31741
%31743 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%31744 = load float, float* %31743
%31745 = fmul float %31742, %31744
%31746 = fneg float %31745
%31747 = call float @llvm.fmuladd.f32(float %31738, float %31740, float %31746)
%31748 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %31747, float* %31748
%31749 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%31750 = load float, float* %31749
%31751 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%31752 = load float, float* %31751
%31753 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%31754 = load float, float* %31753
%31755 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%31756 = load float, float* %31755
%31757 = fmul float %31754, %31756
%31758 = fneg float %31757
%31759 = call float @llvm.fmuladd.f32(float %31750, float %31752, float %31758)
%31760 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %31759, float* %31760
%31761 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%31762 = load float, float* %31761
%31763 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%31764 = load float, float* %31763
%31765 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%31766 = load float, float* %31765
%31767 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%31768 = load float, float* %31767
%31769 = fmul float %31766, %31768
%31770 = fneg float %31769
%31771 = call float @llvm.fmuladd.f32(float %31762, float %31764, float %31770)
%31772 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %31771, float* %31772
%31773 = load float*, float** %11
%31774 = getelementptr inbounds float, float* %31773, i64 0
%31775 = load float, float* %31774
%31776 = load float*, float** %10
%31777 = getelementptr inbounds float, float* %31776, i64 0
%31778 = load float, float* %31777
%31779 = fsub float %31775, %31778
%31780 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %31779, float* %31780
%31781 = load float*, float** %11
%31782 = getelementptr inbounds float, float* %31781, i64 1
%31783 = load float, float* %31782
%31784 = load float*, float** %10
%31785 = getelementptr inbounds float, float* %31784, i64 1
%31786 = load float, float* %31785
%31787 = fsub float %31783, %31786
%31788 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %31787, float* %31788
%31789 = load float*, float** %11
%31790 = getelementptr inbounds float, float* %31789, i64 2
%31791 = load float, float* %31790
%31792 = load float*, float** %10
%31793 = getelementptr inbounds float, float* %31792, i64 2
%31794 = load float, float* %31793
%31795 = fsub float %31791, %31794
%31796 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %31795, float* %31796
%31797 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%31798 = load float, float* %31797
%31799 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%31800 = load float, float* %31799
%31801 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%31802 = load float, float* %31801
%31803 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%31804 = load float, float* %31803
%31805 = fmul float %31802, %31804
%31806 = call float @llvm.fmuladd.f32(float %31798, float %31800, float %31805)
%31807 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%31808 = load float, float* %31807
%31809 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%31810 = load float, float* %31809
%31811 = call float @llvm.fmuladd.f32(float %31808, float %31810, float %31806)
%31812 = fcmp ogt float %31811, 0.000000e+00
br i1 %31812, label %31813, label %31814
31813: ; preds = %31688
store i32 0, i32* %7
br label %37477
31814: ; preds = %31688
store i32 1, i32* %7
br label %37477
31815: ; preds = %31559
%31816 = load float*, float** %11
%31817 = getelementptr inbounds float, float* %31816, i64 0
%31818 = load float, float* %31817
%31819 = load float*, float** %8
%31820 = getelementptr inbounds float, float* %31819, i64 0
%31821 = load float, float* %31820
%31822 = fsub float %31818, %31821
%31823 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %31822, float* %31823
%31824 = load float*, float** %11
%31825 = getelementptr inbounds float, float* %31824, i64 1
%31826 = load float, float* %31825
%31827 = load float*, float** %8
%31828 = getelementptr inbounds float, float* %31827, i64 1
%31829 = load float, float* %31828
%31830 = fsub float %31826, %31829
%31831 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %31830, float* %31831
%31832 = load float*, float** %11
%31833 = getelementptr inbounds float, float* %31832, i64 2
%31834 = load float, float* %31833
%31835 = load float*, float** %8
%31836 = getelementptr inbounds float, float* %31835, i64 2
%31837 = load float, float* %31836
%31838 = fsub float %31834, %31837
%31839 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %31838, float* %31839
%31840 = load float*, float** %10
%31841 = getelementptr inbounds float, float* %31840, i64 0
%31842 = load float, float* %31841
%31843 = load float*, float** %8
%31844 = getelementptr inbounds float, float* %31843, i64 0
%31845 = load float, float* %31844
%31846 = fsub float %31842, %31845
%31847 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %31846, float* %31847
%31848 = load float*, float** %10
%31849 = getelementptr inbounds float, float* %31848, i64 1
%31850 = load float, float* %31849
%31851 = load float*, float** %8
%31852 = getelementptr inbounds float, float* %31851, i64 1
%31853 = load float, float* %31852
%31854 = fsub float %31850, %31853
%31855 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %31854, float* %31855
%31856 = load float*, float** %10
%31857 = getelementptr inbounds float, float* %31856, i64 2
%31858 = load float, float* %31857
%31859 = load float*, float** %8
%31860 = getelementptr inbounds float, float* %31859, i64 2
%31861 = load float, float* %31860
%31862 = fsub float %31858, %31861
%31863 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %31862, float* %31863
%31864 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%31865 = load float, float* %31864
%31866 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%31867 = load float, float* %31866
%31868 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%31869 = load float, float* %31868
%31870 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%31871 = load float, float* %31870
%31872 = fmul float %31869, %31871
%31873 = fneg float %31872
%31874 = call float @llvm.fmuladd.f32(float %31865, float %31867, float %31873)
%31875 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %31874, float* %31875
%31876 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%31877 = load float, float* %31876
%31878 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%31879 = load float, float* %31878
%31880 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%31881 = load float, float* %31880
%31882 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%31883 = load float, float* %31882
%31884 = fmul float %31881, %31883
%31885 = fneg float %31884
%31886 = call float @llvm.fmuladd.f32(float %31877, float %31879, float %31885)
%31887 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %31886, float* %31887
%31888 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%31889 = load float, float* %31888
%31890 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%31891 = load float, float* %31890
%31892 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%31893 = load float, float* %31892
%31894 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%31895 = load float, float* %31894
%31896 = fmul float %31893, %31895
%31897 = fneg float %31896
%31898 = call float @llvm.fmuladd.f32(float %31889, float %31891, float %31897)
%31899 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %31898, float* %31899
%31900 = load float*, float** %12
%31901 = getelementptr inbounds float, float* %31900, i64 0
%31902 = load float, float* %31901
%31903 = load float*, float** %8
%31904 = getelementptr inbounds float, float* %31903, i64 0
%31905 = load float, float* %31904
%31906 = fsub float %31902, %31905
%31907 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %31906, float* %31907
%31908 = load float*, float** %12
%31909 = getelementptr inbounds float, float* %31908, i64 1
%31910 = load float, float* %31909
%31911 = load float*, float** %8
%31912 = getelementptr inbounds float, float* %31911, i64 1
%31913 = load float, float* %31912
%31914 = fsub float %31910, %31913
%31915 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %31914, float* %31915
%31916 = load float*, float** %12
%31917 = getelementptr inbounds float, float* %31916, i64 2
%31918 = load float, float* %31917
%31919 = load float*, float** %8
%31920 = getelementptr inbounds float, float* %31919, i64 2
%31921 = load float, float* %31920
%31922 = fsub float %31918, %31921
%31923 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %31922, float* %31923
%31924 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%31925 = load float, float* %31924
%31926 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%31927 = load float, float* %31926
%31928 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%31929 = load float, float* %31928
%31930 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%31931 = load float, float* %31930
%31932 = fmul float %31929, %31931
%31933 = call float @llvm.fmuladd.f32(float %31925, float %31927, float %31932)
%31934 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%31935 = load float, float* %31934
%31936 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%31937 = load float, float* %31936
%31938 = call float @llvm.fmuladd.f32(float %31935, float %31937, float %31933)
%31939 = fcmp ogt float %31938, 0.000000e+00
br i1 %31939, label %31940, label %31941
31940: ; preds = %31815
store i32 0, i32* %7
br label %37477
31941: ; preds = %31815
%31942 = load float*, float** %11
%31943 = getelementptr inbounds float, float* %31942, i64 0
%31944 = load float, float* %31943
%31945 = load float*, float** %10
%31946 = getelementptr inbounds float, float* %31945, i64 0
%31947 = load float, float* %31946
%31948 = fsub float %31944, %31947
%31949 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %31948, float* %31949
%31950 = load float*, float** %11
%31951 = getelementptr inbounds float, float* %31950, i64 1
%31952 = load float, float* %31951
%31953 = load float*, float** %10
%31954 = getelementptr inbounds float, float* %31953, i64 1
%31955 = load float, float* %31954
%31956 = fsub float %31952, %31955
%31957 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %31956, float* %31957
%31958 = load float*, float** %11
%31959 = getelementptr inbounds float, float* %31958, i64 2
%31960 = load float, float* %31959
%31961 = load float*, float** %10
%31962 = getelementptr inbounds float, float* %31961, i64 2
%31963 = load float, float* %31962
%31964 = fsub float %31960, %31963
%31965 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %31964, float* %31965
%31966 = load float*, float** %9
%31967 = getelementptr inbounds float, float* %31966, i64 0
%31968 = load float, float* %31967
%31969 = load float*, float** %10
%31970 = getelementptr inbounds float, float* %31969, i64 0
%31971 = load float, float* %31970
%31972 = fsub float %31968, %31971
%31973 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %31972, float* %31973
%31974 = load float*, float** %9
%31975 = getelementptr inbounds float, float* %31974, i64 1
%31976 = load float, float* %31975
%31977 = load float*, float** %10
%31978 = getelementptr inbounds float, float* %31977, i64 1
%31979 = load float, float* %31978
%31980 = fsub float %31976, %31979
%31981 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %31980, float* %31981
%31982 = load float*, float** %9
%31983 = getelementptr inbounds float, float* %31982, i64 2
%31984 = load float, float* %31983
%31985 = load float*, float** %10
%31986 = getelementptr inbounds float, float* %31985, i64 2
%31987 = load float, float* %31986
%31988 = fsub float %31984, %31987
%31989 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %31988, float* %31989
%31990 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%31991 = load float, float* %31990
%31992 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%31993 = load float, float* %31992
%31994 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%31995 = load float, float* %31994
%31996 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%31997 = load float, float* %31996
%31998 = fmul float %31995, %31997
%31999 = fneg float %31998
%32000 = call float @llvm.fmuladd.f32(float %31991, float %31993, float %31999)
%32001 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %32000, float* %32001
%32002 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%32003 = load float, float* %32002
%32004 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%32005 = load float, float* %32004
%32006 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%32007 = load float, float* %32006
%32008 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%32009 = load float, float* %32008
%32010 = fmul float %32007, %32009
%32011 = fneg float %32010
%32012 = call float @llvm.fmuladd.f32(float %32003, float %32005, float %32011)
%32013 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %32012, float* %32013
%32014 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%32015 = load float, float* %32014
%32016 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%32017 = load float, float* %32016
%32018 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%32019 = load float, float* %32018
%32020 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%32021 = load float, float* %32020
%32022 = fmul float %32019, %32021
%32023 = fneg float %32022
%32024 = call float @llvm.fmuladd.f32(float %32015, float %32017, float %32023)
%32025 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %32024, float* %32025
%32026 = load float*, float** %13
%32027 = getelementptr inbounds float, float* %32026, i64 0
%32028 = load float, float* %32027
%32029 = load float*, float** %10
%32030 = getelementptr inbounds float, float* %32029, i64 0
%32031 = load float, float* %32030
%32032 = fsub float %32028, %32031
%32033 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %32032, float* %32033
%32034 = load float*, float** %13
%32035 = getelementptr inbounds float, float* %32034, i64 1
%32036 = load float, float* %32035
%32037 = load float*, float** %10
%32038 = getelementptr inbounds float, float* %32037, i64 1
%32039 = load float, float* %32038
%32040 = fsub float %32036, %32039
%32041 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %32040, float* %32041
%32042 = load float*, float** %13
%32043 = getelementptr inbounds float, float* %32042, i64 2
%32044 = load float, float* %32043
%32045 = load float*, float** %10
%32046 = getelementptr inbounds float, float* %32045, i64 2
%32047 = load float, float* %32046
%32048 = fsub float %32044, %32047
%32049 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %32048, float* %32049
%32050 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%32051 = load float, float* %32050
%32052 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%32053 = load float, float* %32052
%32054 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%32055 = load float, float* %32054
%32056 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%32057 = load float, float* %32056
%32058 = fmul float %32055, %32057
%32059 = call float @llvm.fmuladd.f32(float %32051, float %32053, float %32058)
%32060 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%32061 = load float, float* %32060
%32062 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%32063 = load float, float* %32062
%32064 = call float @llvm.fmuladd.f32(float %32061, float %32063, float %32059)
%32065 = fcmp ogt float %32064, 0.000000e+00
br i1 %32065, label %32066, label %32067
32066: ; preds = %31941
store i32 0, i32* %7
br label %37477
32067: ; preds = %31941
store i32 1, i32* %7
br label %37477
32068: ; preds = %31300
%32069 = load float, float* %17
%32070 = fcmp olt float %32069, 0.000000e+00
br i1 %32070, label %32071, label %32836
32071: ; preds = %32068
%32072 = load float, float* %18
%32073 = fcmp olt float %32072, 0.000000e+00
br i1 %32073, label %32074, label %32327
32074: ; preds = %32071
%32075 = load float*, float** %13
%32076 = getelementptr inbounds float, float* %32075, i64 0
%32077 = load float, float* %32076
%32078 = load float*, float** %8
%32079 = getelementptr inbounds float, float* %32078, i64 0
%32080 = load float, float* %32079
%32081 = fsub float %32077, %32080
%32082 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %32081, float* %32082
%32083 = load float*, float** %13
%32084 = getelementptr inbounds float, float* %32083, i64 1
%32085 = load float, float* %32084
%32086 = load float*, float** %8
%32087 = getelementptr inbounds float, float* %32086, i64 1
%32088 = load float, float* %32087
%32089 = fsub float %32085, %32088
%32090 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %32089, float* %32090
%32091 = load float*, float** %13
%32092 = getelementptr inbounds float, float* %32091, i64 2
%32093 = load float, float* %32092
%32094 = load float*, float** %8
%32095 = getelementptr inbounds float, float* %32094, i64 2
%32096 = load float, float* %32095
%32097 = fsub float %32093, %32096
%32098 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %32097, float* %32098
%32099 = load float*, float** %10
%32100 = getelementptr inbounds float, float* %32099, i64 0
%32101 = load float, float* %32100
%32102 = load float*, float** %8
%32103 = getelementptr inbounds float, float* %32102, i64 0
%32104 = load float, float* %32103
%32105 = fsub float %32101, %32104
%32106 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %32105, float* %32106
%32107 = load float*, float** %10
%32108 = getelementptr inbounds float, float* %32107, i64 1
%32109 = load float, float* %32108
%32110 = load float*, float** %8
%32111 = getelementptr inbounds float, float* %32110, i64 1
%32112 = load float, float* %32111
%32113 = fsub float %32109, %32112
%32114 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %32113, float* %32114
%32115 = load float*, float** %10
%32116 = getelementptr inbounds float, float* %32115, i64 2
%32117 = load float, float* %32116
%32118 = load float*, float** %8
%32119 = getelementptr inbounds float, float* %32118, i64 2
%32120 = load float, float* %32119
%32121 = fsub float %32117, %32120
%32122 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %32121, float* %32122
%32123 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%32124 = load float, float* %32123
%32125 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%32126 = load float, float* %32125
%32127 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%32128 = load float, float* %32127
%32129 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%32130 = load float, float* %32129
%32131 = fmul float %32128, %32130
%32132 = fneg float %32131
%32133 = call float @llvm.fmuladd.f32(float %32124, float %32126, float %32132)
%32134 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %32133, float* %32134
%32135 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%32136 = load float, float* %32135
%32137 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%32138 = load float, float* %32137
%32139 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%32140 = load float, float* %32139
%32141 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%32142 = load float, float* %32141
%32143 = fmul float %32140, %32142
%32144 = fneg float %32143
%32145 = call float @llvm.fmuladd.f32(float %32136, float %32138, float %32144)
%32146 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %32145, float* %32146
%32147 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%32148 = load float, float* %32147
%32149 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%32150 = load float, float* %32149
%32151 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%32152 = load float, float* %32151
%32153 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%32154 = load float, float* %32153
%32155 = fmul float %32152, %32154
%32156 = fneg float %32155
%32157 = call float @llvm.fmuladd.f32(float %32148, float %32150, float %32156)
%32158 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %32157, float* %32158
%32159 = load float*, float** %11
%32160 = getelementptr inbounds float, float* %32159, i64 0
%32161 = load float, float* %32160
%32162 = load float*, float** %8
%32163 = getelementptr inbounds float, float* %32162, i64 0
%32164 = load float, float* %32163
%32165 = fsub float %32161, %32164
%32166 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %32165, float* %32166
%32167 = load float*, float** %11
%32168 = getelementptr inbounds float, float* %32167, i64 1
%32169 = load float, float* %32168
%32170 = load float*, float** %8
%32171 = getelementptr inbounds float, float* %32170, i64 1
%32172 = load float, float* %32171
%32173 = fsub float %32169, %32172
%32174 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %32173, float* %32174
%32175 = load float*, float** %11
%32176 = getelementptr inbounds float, float* %32175, i64 2
%32177 = load float, float* %32176
%32178 = load float*, float** %8
%32179 = getelementptr inbounds float, float* %32178, i64 2
%32180 = load float, float* %32179
%32181 = fsub float %32177, %32180
%32182 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %32181, float* %32182
%32183 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%32184 = load float, float* %32183
%32185 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%32186 = load float, float* %32185
%32187 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%32188 = load float, float* %32187
%32189 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%32190 = load float, float* %32189
%32191 = fmul float %32188, %32190
%32192 = call float @llvm.fmuladd.f32(float %32184, float %32186, float %32191)
%32193 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%32194 = load float, float* %32193
%32195 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%32196 = load float, float* %32195
%32197 = call float @llvm.fmuladd.f32(float %32194, float %32196, float %32192)
%32198 = fcmp ogt float %32197, 0.000000e+00
br i1 %32198, label %32199, label %32200
32199: ; preds = %32074
store i32 0, i32* %7
br label %37477
32200: ; preds = %32074
%32201 = load float*, float** %13
%32202 = getelementptr inbounds float, float* %32201, i64 0
%32203 = load float, float* %32202
%32204 = load float*, float** %10
%32205 = getelementptr inbounds float, float* %32204, i64 0
%32206 = load float, float* %32205
%32207 = fsub float %32203, %32206
%32208 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %32207, float* %32208
%32209 = load float*, float** %13
%32210 = getelementptr inbounds float, float* %32209, i64 1
%32211 = load float, float* %32210
%32212 = load float*, float** %10
%32213 = getelementptr inbounds float, float* %32212, i64 1
%32214 = load float, float* %32213
%32215 = fsub float %32211, %32214
%32216 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %32215, float* %32216
%32217 = load float*, float** %13
%32218 = getelementptr inbounds float, float* %32217, i64 2
%32219 = load float, float* %32218
%32220 = load float*, float** %10
%32221 = getelementptr inbounds float, float* %32220, i64 2
%32222 = load float, float* %32221
%32223 = fsub float %32219, %32222
%32224 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %32223, float* %32224
%32225 = load float*, float** %9
%32226 = getelementptr inbounds float, float* %32225, i64 0
%32227 = load float, float* %32226
%32228 = load float*, float** %10
%32229 = getelementptr inbounds float, float* %32228, i64 0
%32230 = load float, float* %32229
%32231 = fsub float %32227, %32230
%32232 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %32231, float* %32232
%32233 = load float*, float** %9
%32234 = getelementptr inbounds float, float* %32233, i64 1
%32235 = load float, float* %32234
%32236 = load float*, float** %10
%32237 = getelementptr inbounds float, float* %32236, i64 1
%32238 = load float, float* %32237
%32239 = fsub float %32235, %32238
%32240 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %32239, float* %32240
%32241 = load float*, float** %9
%32242 = getelementptr inbounds float, float* %32241, i64 2
%32243 = load float, float* %32242
%32244 = load float*, float** %10
%32245 = getelementptr inbounds float, float* %32244, i64 2
%32246 = load float, float* %32245
%32247 = fsub float %32243, %32246
%32248 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %32247, float* %32248
%32249 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%32250 = load float, float* %32249
%32251 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%32252 = load float, float* %32251
%32253 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%32254 = load float, float* %32253
%32255 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%32256 = load float, float* %32255
%32257 = fmul float %32254, %32256
%32258 = fneg float %32257
%32259 = call float @llvm.fmuladd.f32(float %32250, float %32252, float %32258)
%32260 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %32259, float* %32260
%32261 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%32262 = load float, float* %32261
%32263 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%32264 = load float, float* %32263
%32265 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%32266 = load float, float* %32265
%32267 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%32268 = load float, float* %32267
%32269 = fmul float %32266, %32268
%32270 = fneg float %32269
%32271 = call float @llvm.fmuladd.f32(float %32262, float %32264, float %32270)
%32272 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %32271, float* %32272
%32273 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%32274 = load float, float* %32273
%32275 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%32276 = load float, float* %32275
%32277 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%32278 = load float, float* %32277
%32279 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%32280 = load float, float* %32279
%32281 = fmul float %32278, %32280
%32282 = fneg float %32281
%32283 = call float @llvm.fmuladd.f32(float %32274, float %32276, float %32282)
%32284 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %32283, float* %32284
%32285 = load float*, float** %12
%32286 = getelementptr inbounds float, float* %32285, i64 0
%32287 = load float, float* %32286
%32288 = load float*, float** %10
%32289 = getelementptr inbounds float, float* %32288, i64 0
%32290 = load float, float* %32289
%32291 = fsub float %32287, %32290
%32292 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %32291, float* %32292
%32293 = load float*, float** %12
%32294 = getelementptr inbounds float, float* %32293, i64 1
%32295 = load float, float* %32294
%32296 = load float*, float** %10
%32297 = getelementptr inbounds float, float* %32296, i64 1
%32298 = load float, float* %32297
%32299 = fsub float %32295, %32298
%32300 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %32299, float* %32300
%32301 = load float*, float** %12
%32302 = getelementptr inbounds float, float* %32301, i64 2
%32303 = load float, float* %32302
%32304 = load float*, float** %10
%32305 = getelementptr inbounds float, float* %32304, i64 2
%32306 = load float, float* %32305
%32307 = fsub float %32303, %32306
%32308 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %32307, float* %32308
%32309 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%32310 = load float, float* %32309
%32311 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%32312 = load float, float* %32311
%32313 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%32314 = load float, float* %32313
%32315 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%32316 = load float, float* %32315
%32317 = fmul float %32314, %32316
%32318 = call float @llvm.fmuladd.f32(float %32310, float %32312, float %32317)
%32319 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%32320 = load float, float* %32319
%32321 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%32322 = load float, float* %32321
%32323 = call float @llvm.fmuladd.f32(float %32320, float %32322, float %32318)
%32324 = fcmp ogt float %32323, 0.000000e+00
br i1 %32324, label %32325, label %32326
32325: ; preds = %32200
store i32 0, i32* %7
br label %37477
32326: ; preds = %32200
store i32 1, i32* %7
br label %37477
32327: ; preds = %32071
%32328 = load float, float* %19
%32329 = fcmp olt float %32328, 0.000000e+00
br i1 %32329, label %32330, label %32583
32330: ; preds = %32327
%32331 = load float*, float** %12
%32332 = getelementptr inbounds float, float* %32331, i64 0
%32333 = load float, float* %32332
%32334 = load float*, float** %8
%32335 = getelementptr inbounds float, float* %32334, i64 0
%32336 = load float, float* %32335
%32337 = fsub float %32333, %32336
%32338 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %32337, float* %32338
%32339 = load float*, float** %12
%32340 = getelementptr inbounds float, float* %32339, i64 1
%32341 = load float, float* %32340
%32342 = load float*, float** %8
%32343 = getelementptr inbounds float, float* %32342, i64 1
%32344 = load float, float* %32343
%32345 = fsub float %32341, %32344
%32346 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %32345, float* %32346
%32347 = load float*, float** %12
%32348 = getelementptr inbounds float, float* %32347, i64 2
%32349 = load float, float* %32348
%32350 = load float*, float** %8
%32351 = getelementptr inbounds float, float* %32350, i64 2
%32352 = load float, float* %32351
%32353 = fsub float %32349, %32352
%32354 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %32353, float* %32354
%32355 = load float*, float** %10
%32356 = getelementptr inbounds float, float* %32355, i64 0
%32357 = load float, float* %32356
%32358 = load float*, float** %8
%32359 = getelementptr inbounds float, float* %32358, i64 0
%32360 = load float, float* %32359
%32361 = fsub float %32357, %32360
%32362 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %32361, float* %32362
%32363 = load float*, float** %10
%32364 = getelementptr inbounds float, float* %32363, i64 1
%32365 = load float, float* %32364
%32366 = load float*, float** %8
%32367 = getelementptr inbounds float, float* %32366, i64 1
%32368 = load float, float* %32367
%32369 = fsub float %32365, %32368
%32370 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %32369, float* %32370
%32371 = load float*, float** %10
%32372 = getelementptr inbounds float, float* %32371, i64 2
%32373 = load float, float* %32372
%32374 = load float*, float** %8
%32375 = getelementptr inbounds float, float* %32374, i64 2
%32376 = load float, float* %32375
%32377 = fsub float %32373, %32376
%32378 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %32377, float* %32378
%32379 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%32380 = load float, float* %32379
%32381 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%32382 = load float, float* %32381
%32383 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%32384 = load float, float* %32383
%32385 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%32386 = load float, float* %32385
%32387 = fmul float %32384, %32386
%32388 = fneg float %32387
%32389 = call float @llvm.fmuladd.f32(float %32380, float %32382, float %32388)
%32390 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %32389, float* %32390
%32391 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%32392 = load float, float* %32391
%32393 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%32394 = load float, float* %32393
%32395 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%32396 = load float, float* %32395
%32397 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%32398 = load float, float* %32397
%32399 = fmul float %32396, %32398
%32400 = fneg float %32399
%32401 = call float @llvm.fmuladd.f32(float %32392, float %32394, float %32400)
%32402 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %32401, float* %32402
%32403 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%32404 = load float, float* %32403
%32405 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%32406 = load float, float* %32405
%32407 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%32408 = load float, float* %32407
%32409 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%32410 = load float, float* %32409
%32411 = fmul float %32408, %32410
%32412 = fneg float %32411
%32413 = call float @llvm.fmuladd.f32(float %32404, float %32406, float %32412)
%32414 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %32413, float* %32414
%32415 = load float*, float** %13
%32416 = getelementptr inbounds float, float* %32415, i64 0
%32417 = load float, float* %32416
%32418 = load float*, float** %8
%32419 = getelementptr inbounds float, float* %32418, i64 0
%32420 = load float, float* %32419
%32421 = fsub float %32417, %32420
%32422 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %32421, float* %32422
%32423 = load float*, float** %13
%32424 = getelementptr inbounds float, float* %32423, i64 1
%32425 = load float, float* %32424
%32426 = load float*, float** %8
%32427 = getelementptr inbounds float, float* %32426, i64 1
%32428 = load float, float* %32427
%32429 = fsub float %32425, %32428
%32430 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %32429, float* %32430
%32431 = load float*, float** %13
%32432 = getelementptr inbounds float, float* %32431, i64 2
%32433 = load float, float* %32432
%32434 = load float*, float** %8
%32435 = getelementptr inbounds float, float* %32434, i64 2
%32436 = load float, float* %32435
%32437 = fsub float %32433, %32436
%32438 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %32437, float* %32438
%32439 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%32440 = load float, float* %32439
%32441 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%32442 = load float, float* %32441
%32443 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%32444 = load float, float* %32443
%32445 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%32446 = load float, float* %32445
%32447 = fmul float %32444, %32446
%32448 = call float @llvm.fmuladd.f32(float %32440, float %32442, float %32447)
%32449 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%32450 = load float, float* %32449
%32451 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%32452 = load float, float* %32451
%32453 = call float @llvm.fmuladd.f32(float %32450, float %32452, float %32448)
%32454 = fcmp ogt float %32453, 0.000000e+00
br i1 %32454, label %32455, label %32456
32455: ; preds = %32330
store i32 0, i32* %7
br label %37477
32456: ; preds = %32330
%32457 = load float*, float** %12
%32458 = getelementptr inbounds float, float* %32457, i64 0
%32459 = load float, float* %32458
%32460 = load float*, float** %10
%32461 = getelementptr inbounds float, float* %32460, i64 0
%32462 = load float, float* %32461
%32463 = fsub float %32459, %32462
%32464 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %32463, float* %32464
%32465 = load float*, float** %12
%32466 = getelementptr inbounds float, float* %32465, i64 1
%32467 = load float, float* %32466
%32468 = load float*, float** %10
%32469 = getelementptr inbounds float, float* %32468, i64 1
%32470 = load float, float* %32469
%32471 = fsub float %32467, %32470
%32472 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %32471, float* %32472
%32473 = load float*, float** %12
%32474 = getelementptr inbounds float, float* %32473, i64 2
%32475 = load float, float* %32474
%32476 = load float*, float** %10
%32477 = getelementptr inbounds float, float* %32476, i64 2
%32478 = load float, float* %32477
%32479 = fsub float %32475, %32478
%32480 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %32479, float* %32480
%32481 = load float*, float** %9
%32482 = getelementptr inbounds float, float* %32481, i64 0
%32483 = load float, float* %32482
%32484 = load float*, float** %10
%32485 = getelementptr inbounds float, float* %32484, i64 0
%32486 = load float, float* %32485
%32487 = fsub float %32483, %32486
%32488 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %32487, float* %32488
%32489 = load float*, float** %9
%32490 = getelementptr inbounds float, float* %32489, i64 1
%32491 = load float, float* %32490
%32492 = load float*, float** %10
%32493 = getelementptr inbounds float, float* %32492, i64 1
%32494 = load float, float* %32493
%32495 = fsub float %32491, %32494
%32496 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %32495, float* %32496
%32497 = load float*, float** %9
%32498 = getelementptr inbounds float, float* %32497, i64 2
%32499 = load float, float* %32498
%32500 = load float*, float** %10
%32501 = getelementptr inbounds float, float* %32500, i64 2
%32502 = load float, float* %32501
%32503 = fsub float %32499, %32502
%32504 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %32503, float* %32504
%32505 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%32506 = load float, float* %32505
%32507 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%32508 = load float, float* %32507
%32509 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%32510 = load float, float* %32509
%32511 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%32512 = load float, float* %32511
%32513 = fmul float %32510, %32512
%32514 = fneg float %32513
%32515 = call float @llvm.fmuladd.f32(float %32506, float %32508, float %32514)
%32516 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %32515, float* %32516
%32517 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%32518 = load float, float* %32517
%32519 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%32520 = load float, float* %32519
%32521 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%32522 = load float, float* %32521
%32523 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%32524 = load float, float* %32523
%32525 = fmul float %32522, %32524
%32526 = fneg float %32525
%32527 = call float @llvm.fmuladd.f32(float %32518, float %32520, float %32526)
%32528 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %32527, float* %32528
%32529 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%32530 = load float, float* %32529
%32531 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%32532 = load float, float* %32531
%32533 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%32534 = load float, float* %32533
%32535 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%32536 = load float, float* %32535
%32537 = fmul float %32534, %32536
%32538 = fneg float %32537
%32539 = call float @llvm.fmuladd.f32(float %32530, float %32532, float %32538)
%32540 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %32539, float* %32540
%32541 = load float*, float** %11
%32542 = getelementptr inbounds float, float* %32541, i64 0
%32543 = load float, float* %32542
%32544 = load float*, float** %10
%32545 = getelementptr inbounds float, float* %32544, i64 0
%32546 = load float, float* %32545
%32547 = fsub float %32543, %32546
%32548 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %32547, float* %32548
%32549 = load float*, float** %11
%32550 = getelementptr inbounds float, float* %32549, i64 1
%32551 = load float, float* %32550
%32552 = load float*, float** %10
%32553 = getelementptr inbounds float, float* %32552, i64 1
%32554 = load float, float* %32553
%32555 = fsub float %32551, %32554
%32556 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %32555, float* %32556
%32557 = load float*, float** %11
%32558 = getelementptr inbounds float, float* %32557, i64 2
%32559 = load float, float* %32558
%32560 = load float*, float** %10
%32561 = getelementptr inbounds float, float* %32560, i64 2
%32562 = load float, float* %32561
%32563 = fsub float %32559, %32562
%32564 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %32563, float* %32564
%32565 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%32566 = load float, float* %32565
%32567 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%32568 = load float, float* %32567
%32569 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%32570 = load float, float* %32569
%32571 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%32572 = load float, float* %32571
%32573 = fmul float %32570, %32572
%32574 = call float @llvm.fmuladd.f32(float %32566, float %32568, float %32573)
%32575 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%32576 = load float, float* %32575
%32577 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%32578 = load float, float* %32577
%32579 = call float @llvm.fmuladd.f32(float %32576, float %32578, float %32574)
%32580 = fcmp ogt float %32579, 0.000000e+00
br i1 %32580, label %32581, label %32582
32581: ; preds = %32456
store i32 0, i32* %7
br label %37477
32582: ; preds = %32456
store i32 1, i32* %7
br label %37477
32583: ; preds = %32327
%32584 = load float*, float** %11
%32585 = getelementptr inbounds float, float* %32584, i64 0
%32586 = load float, float* %32585
%32587 = load float*, float** %9
%32588 = getelementptr inbounds float, float* %32587, i64 0
%32589 = load float, float* %32588
%32590 = fsub float %32586, %32589
%32591 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %32590, float* %32591
%32592 = load float*, float** %11
%32593 = getelementptr inbounds float, float* %32592, i64 1
%32594 = load float, float* %32593
%32595 = load float*, float** %9
%32596 = getelementptr inbounds float, float* %32595, i64 1
%32597 = load float, float* %32596
%32598 = fsub float %32594, %32597
%32599 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %32598, float* %32599
%32600 = load float*, float** %11
%32601 = getelementptr inbounds float, float* %32600, i64 2
%32602 = load float, float* %32601
%32603 = load float*, float** %9
%32604 = getelementptr inbounds float, float* %32603, i64 2
%32605 = load float, float* %32604
%32606 = fsub float %32602, %32605
%32607 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %32606, float* %32607
%32608 = load float*, float** %10
%32609 = getelementptr inbounds float, float* %32608, i64 0
%32610 = load float, float* %32609
%32611 = load float*, float** %9
%32612 = getelementptr inbounds float, float* %32611, i64 0
%32613 = load float, float* %32612
%32614 = fsub float %32610, %32613
%32615 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %32614, float* %32615
%32616 = load float*, float** %10
%32617 = getelementptr inbounds float, float* %32616, i64 1
%32618 = load float, float* %32617
%32619 = load float*, float** %9
%32620 = getelementptr inbounds float, float* %32619, i64 1
%32621 = load float, float* %32620
%32622 = fsub float %32618, %32621
%32623 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %32622, float* %32623
%32624 = load float*, float** %10
%32625 = getelementptr inbounds float, float* %32624, i64 2
%32626 = load float, float* %32625
%32627 = load float*, float** %9
%32628 = getelementptr inbounds float, float* %32627, i64 2
%32629 = load float, float* %32628
%32630 = fsub float %32626, %32629
%32631 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %32630, float* %32631
%32632 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%32633 = load float, float* %32632
%32634 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%32635 = load float, float* %32634
%32636 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%32637 = load float, float* %32636
%32638 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%32639 = load float, float* %32638
%32640 = fmul float %32637, %32639
%32641 = fneg float %32640
%32642 = call float @llvm.fmuladd.f32(float %32633, float %32635, float %32641)
%32643 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %32642, float* %32643
%32644 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%32645 = load float, float* %32644
%32646 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%32647 = load float, float* %32646
%32648 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%32649 = load float, float* %32648
%32650 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%32651 = load float, float* %32650
%32652 = fmul float %32649, %32651
%32653 = fneg float %32652
%32654 = call float @llvm.fmuladd.f32(float %32645, float %32647, float %32653)
%32655 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %32654, float* %32655
%32656 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%32657 = load float, float* %32656
%32658 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%32659 = load float, float* %32658
%32660 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%32661 = load float, float* %32660
%32662 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%32663 = load float, float* %32662
%32664 = fmul float %32661, %32663
%32665 = fneg float %32664
%32666 = call float @llvm.fmuladd.f32(float %32657, float %32659, float %32665)
%32667 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %32666, float* %32667
%32668 = load float*, float** %12
%32669 = getelementptr inbounds float, float* %32668, i64 0
%32670 = load float, float* %32669
%32671 = load float*, float** %9
%32672 = getelementptr inbounds float, float* %32671, i64 0
%32673 = load float, float* %32672
%32674 = fsub float %32670, %32673
%32675 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %32674, float* %32675
%32676 = load float*, float** %12
%32677 = getelementptr inbounds float, float* %32676, i64 1
%32678 = load float, float* %32677
%32679 = load float*, float** %9
%32680 = getelementptr inbounds float, float* %32679, i64 1
%32681 = load float, float* %32680
%32682 = fsub float %32678, %32681
%32683 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %32682, float* %32683
%32684 = load float*, float** %12
%32685 = getelementptr inbounds float, float* %32684, i64 2
%32686 = load float, float* %32685
%32687 = load float*, float** %9
%32688 = getelementptr inbounds float, float* %32687, i64 2
%32689 = load float, float* %32688
%32690 = fsub float %32686, %32689
%32691 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %32690, float* %32691
%32692 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%32693 = load float, float* %32692
%32694 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%32695 = load float, float* %32694
%32696 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%32697 = load float, float* %32696
%32698 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%32699 = load float, float* %32698
%32700 = fmul float %32697, %32699
%32701 = call float @llvm.fmuladd.f32(float %32693, float %32695, float %32700)
%32702 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%32703 = load float, float* %32702
%32704 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%32705 = load float, float* %32704
%32706 = call float @llvm.fmuladd.f32(float %32703, float %32705, float %32701)
%32707 = fcmp ogt float %32706, 0.000000e+00
br i1 %32707, label %32708, label %32709
32708: ; preds = %32583
store i32 0, i32* %7
br label %37477
32709: ; preds = %32583
%32710 = load float*, float** %11
%32711 = getelementptr inbounds float, float* %32710, i64 0
%32712 = load float, float* %32711
%32713 = load float*, float** %10
%32714 = getelementptr inbounds float, float* %32713, i64 0
%32715 = load float, float* %32714
%32716 = fsub float %32712, %32715
%32717 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %32716, float* %32717
%32718 = load float*, float** %11
%32719 = getelementptr inbounds float, float* %32718, i64 1
%32720 = load float, float* %32719
%32721 = load float*, float** %10
%32722 = getelementptr inbounds float, float* %32721, i64 1
%32723 = load float, float* %32722
%32724 = fsub float %32720, %32723
%32725 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %32724, float* %32725
%32726 = load float*, float** %11
%32727 = getelementptr inbounds float, float* %32726, i64 2
%32728 = load float, float* %32727
%32729 = load float*, float** %10
%32730 = getelementptr inbounds float, float* %32729, i64 2
%32731 = load float, float* %32730
%32732 = fsub float %32728, %32731
%32733 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %32732, float* %32733
%32734 = load float*, float** %8
%32735 = getelementptr inbounds float, float* %32734, i64 0
%32736 = load float, float* %32735
%32737 = load float*, float** %10
%32738 = getelementptr inbounds float, float* %32737, i64 0
%32739 = load float, float* %32738
%32740 = fsub float %32736, %32739
%32741 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %32740, float* %32741
%32742 = load float*, float** %8
%32743 = getelementptr inbounds float, float* %32742, i64 1
%32744 = load float, float* %32743
%32745 = load float*, float** %10
%32746 = getelementptr inbounds float, float* %32745, i64 1
%32747 = load float, float* %32746
%32748 = fsub float %32744, %32747
%32749 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %32748, float* %32749
%32750 = load float*, float** %8
%32751 = getelementptr inbounds float, float* %32750, i64 2
%32752 = load float, float* %32751
%32753 = load float*, float** %10
%32754 = getelementptr inbounds float, float* %32753, i64 2
%32755 = load float, float* %32754
%32756 = fsub float %32752, %32755
%32757 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %32756, float* %32757
%32758 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%32759 = load float, float* %32758
%32760 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%32761 = load float, float* %32760
%32762 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%32763 = load float, float* %32762
%32764 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%32765 = load float, float* %32764
%32766 = fmul float %32763, %32765
%32767 = fneg float %32766
%32768 = call float @llvm.fmuladd.f32(float %32759, float %32761, float %32767)
%32769 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %32768, float* %32769
%32770 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%32771 = load float, float* %32770
%32772 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%32773 = load float, float* %32772
%32774 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%32775 = load float, float* %32774
%32776 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%32777 = load float, float* %32776
%32778 = fmul float %32775, %32777
%32779 = fneg float %32778
%32780 = call float @llvm.fmuladd.f32(float %32771, float %32773, float %32779)
%32781 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %32780, float* %32781
%32782 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%32783 = load float, float* %32782
%32784 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%32785 = load float, float* %32784
%32786 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%32787 = load float, float* %32786
%32788 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%32789 = load float, float* %32788
%32790 = fmul float %32787, %32789
%32791 = fneg float %32790
%32792 = call float @llvm.fmuladd.f32(float %32783, float %32785, float %32791)
%32793 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %32792, float* %32793
%32794 = load float*, float** %13
%32795 = getelementptr inbounds float, float* %32794, i64 0
%32796 = load float, float* %32795
%32797 = load float*, float** %10
%32798 = getelementptr inbounds float, float* %32797, i64 0
%32799 = load float, float* %32798
%32800 = fsub float %32796, %32799
%32801 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %32800, float* %32801
%32802 = load float*, float** %13
%32803 = getelementptr inbounds float, float* %32802, i64 1
%32804 = load float, float* %32803
%32805 = load float*, float** %10
%32806 = getelementptr inbounds float, float* %32805, i64 1
%32807 = load float, float* %32806
%32808 = fsub float %32804, %32807
%32809 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %32808, float* %32809
%32810 = load float*, float** %13
%32811 = getelementptr inbounds float, float* %32810, i64 2
%32812 = load float, float* %32811
%32813 = load float*, float** %10
%32814 = getelementptr inbounds float, float* %32813, i64 2
%32815 = load float, float* %32814
%32816 = fsub float %32812, %32815
%32817 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %32816, float* %32817
%32818 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%32819 = load float, float* %32818
%32820 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%32821 = load float, float* %32820
%32822 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%32823 = load float, float* %32822
%32824 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%32825 = load float, float* %32824
%32826 = fmul float %32823, %32825
%32827 = call float @llvm.fmuladd.f32(float %32819, float %32821, float %32826)
%32828 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%32829 = load float, float* %32828
%32830 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%32831 = load float, float* %32830
%32832 = call float @llvm.fmuladd.f32(float %32829, float %32831, float %32827)
%32833 = fcmp ogt float %32832, 0.000000e+00
br i1 %32833, label %32834, label %32835
32834: ; preds = %32709
store i32 0, i32* %7
br label %37477
32835: ; preds = %32709
store i32 1, i32* %7
br label %37477
32836: ; preds = %32068
%32837 = load float, float* %18
%32838 = fcmp olt float %32837, 0.000000e+00
br i1 %32838, label %32839, label %33348
32839: ; preds = %32836
%32840 = load float, float* %19
%32841 = fcmp oge float %32840, 0.000000e+00
br i1 %32841, label %32842, label %33095
32842: ; preds = %32839
%32843 = load float*, float** %12
%32844 = getelementptr inbounds float, float* %32843, i64 0
%32845 = load float, float* %32844
%32846 = load float*, float** %9
%32847 = getelementptr inbounds float, float* %32846, i64 0
%32848 = load float, float* %32847
%32849 = fsub float %32845, %32848
%32850 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %32849, float* %32850
%32851 = load float*, float** %12
%32852 = getelementptr inbounds float, float* %32851, i64 1
%32853 = load float, float* %32852
%32854 = load float*, float** %9
%32855 = getelementptr inbounds float, float* %32854, i64 1
%32856 = load float, float* %32855
%32857 = fsub float %32853, %32856
%32858 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %32857, float* %32858
%32859 = load float*, float** %12
%32860 = getelementptr inbounds float, float* %32859, i64 2
%32861 = load float, float* %32860
%32862 = load float*, float** %9
%32863 = getelementptr inbounds float, float* %32862, i64 2
%32864 = load float, float* %32863
%32865 = fsub float %32861, %32864
%32866 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %32865, float* %32866
%32867 = load float*, float** %10
%32868 = getelementptr inbounds float, float* %32867, i64 0
%32869 = load float, float* %32868
%32870 = load float*, float** %9
%32871 = getelementptr inbounds float, float* %32870, i64 0
%32872 = load float, float* %32871
%32873 = fsub float %32869, %32872
%32874 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %32873, float* %32874
%32875 = load float*, float** %10
%32876 = getelementptr inbounds float, float* %32875, i64 1
%32877 = load float, float* %32876
%32878 = load float*, float** %9
%32879 = getelementptr inbounds float, float* %32878, i64 1
%32880 = load float, float* %32879
%32881 = fsub float %32877, %32880
%32882 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %32881, float* %32882
%32883 = load float*, float** %10
%32884 = getelementptr inbounds float, float* %32883, i64 2
%32885 = load float, float* %32884
%32886 = load float*, float** %9
%32887 = getelementptr inbounds float, float* %32886, i64 2
%32888 = load float, float* %32887
%32889 = fsub float %32885, %32888
%32890 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %32889, float* %32890
%32891 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%32892 = load float, float* %32891
%32893 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%32894 = load float, float* %32893
%32895 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%32896 = load float, float* %32895
%32897 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%32898 = load float, float* %32897
%32899 = fmul float %32896, %32898
%32900 = fneg float %32899
%32901 = call float @llvm.fmuladd.f32(float %32892, float %32894, float %32900)
%32902 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %32901, float* %32902
%32903 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%32904 = load float, float* %32903
%32905 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%32906 = load float, float* %32905
%32907 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%32908 = load float, float* %32907
%32909 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%32910 = load float, float* %32909
%32911 = fmul float %32908, %32910
%32912 = fneg float %32911
%32913 = call float @llvm.fmuladd.f32(float %32904, float %32906, float %32912)
%32914 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %32913, float* %32914
%32915 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%32916 = load float, float* %32915
%32917 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%32918 = load float, float* %32917
%32919 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%32920 = load float, float* %32919
%32921 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%32922 = load float, float* %32921
%32923 = fmul float %32920, %32922
%32924 = fneg float %32923
%32925 = call float @llvm.fmuladd.f32(float %32916, float %32918, float %32924)
%32926 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %32925, float* %32926
%32927 = load float*, float** %13
%32928 = getelementptr inbounds float, float* %32927, i64 0
%32929 = load float, float* %32928
%32930 = load float*, float** %9
%32931 = getelementptr inbounds float, float* %32930, i64 0
%32932 = load float, float* %32931
%32933 = fsub float %32929, %32932
%32934 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %32933, float* %32934
%32935 = load float*, float** %13
%32936 = getelementptr inbounds float, float* %32935, i64 1
%32937 = load float, float* %32936
%32938 = load float*, float** %9
%32939 = getelementptr inbounds float, float* %32938, i64 1
%32940 = load float, float* %32939
%32941 = fsub float %32937, %32940
%32942 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %32941, float* %32942
%32943 = load float*, float** %13
%32944 = getelementptr inbounds float, float* %32943, i64 2
%32945 = load float, float* %32944
%32946 = load float*, float** %9
%32947 = getelementptr inbounds float, float* %32946, i64 2
%32948 = load float, float* %32947
%32949 = fsub float %32945, %32948
%32950 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %32949, float* %32950
%32951 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%32952 = load float, float* %32951
%32953 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%32954 = load float, float* %32953
%32955 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%32956 = load float, float* %32955
%32957 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%32958 = load float, float* %32957
%32959 = fmul float %32956, %32958
%32960 = call float @llvm.fmuladd.f32(float %32952, float %32954, float %32959)
%32961 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%32962 = load float, float* %32961
%32963 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%32964 = load float, float* %32963
%32965 = call float @llvm.fmuladd.f32(float %32962, float %32964, float %32960)
%32966 = fcmp ogt float %32965, 0.000000e+00
br i1 %32966, label %32967, label %32968
32967: ; preds = %32842
store i32 0, i32* %7
br label %37477
32968: ; preds = %32842
%32969 = load float*, float** %12
%32970 = getelementptr inbounds float, float* %32969, i64 0
%32971 = load float, float* %32970
%32972 = load float*, float** %10
%32973 = getelementptr inbounds float, float* %32972, i64 0
%32974 = load float, float* %32973
%32975 = fsub float %32971, %32974
%32976 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %32975, float* %32976
%32977 = load float*, float** %12
%32978 = getelementptr inbounds float, float* %32977, i64 1
%32979 = load float, float* %32978
%32980 = load float*, float** %10
%32981 = getelementptr inbounds float, float* %32980, i64 1
%32982 = load float, float* %32981
%32983 = fsub float %32979, %32982
%32984 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %32983, float* %32984
%32985 = load float*, float** %12
%32986 = getelementptr inbounds float, float* %32985, i64 2
%32987 = load float, float* %32986
%32988 = load float*, float** %10
%32989 = getelementptr inbounds float, float* %32988, i64 2
%32990 = load float, float* %32989
%32991 = fsub float %32987, %32990
%32992 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %32991, float* %32992
%32993 = load float*, float** %8
%32994 = getelementptr inbounds float, float* %32993, i64 0
%32995 = load float, float* %32994
%32996 = load float*, float** %10
%32997 = getelementptr inbounds float, float* %32996, i64 0
%32998 = load float, float* %32997
%32999 = fsub float %32995, %32998
%33000 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %32999, float* %33000
%33001 = load float*, float** %8
%33002 = getelementptr inbounds float, float* %33001, i64 1
%33003 = load float, float* %33002
%33004 = load float*, float** %10
%33005 = getelementptr inbounds float, float* %33004, i64 1
%33006 = load float, float* %33005
%33007 = fsub float %33003, %33006
%33008 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %33007, float* %33008
%33009 = load float*, float** %8
%33010 = getelementptr inbounds float, float* %33009, i64 2
%33011 = load float, float* %33010
%33012 = load float*, float** %10
%33013 = getelementptr inbounds float, float* %33012, i64 2
%33014 = load float, float* %33013
%33015 = fsub float %33011, %33014
%33016 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %33015, float* %33016
%33017 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%33018 = load float, float* %33017
%33019 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%33020 = load float, float* %33019
%33021 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%33022 = load float, float* %33021
%33023 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%33024 = load float, float* %33023
%33025 = fmul float %33022, %33024
%33026 = fneg float %33025
%33027 = call float @llvm.fmuladd.f32(float %33018, float %33020, float %33026)
%33028 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %33027, float* %33028
%33029 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%33030 = load float, float* %33029
%33031 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%33032 = load float, float* %33031
%33033 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%33034 = load float, float* %33033
%33035 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%33036 = load float, float* %33035
%33037 = fmul float %33034, %33036
%33038 = fneg float %33037
%33039 = call float @llvm.fmuladd.f32(float %33030, float %33032, float %33038)
%33040 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %33039, float* %33040
%33041 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%33042 = load float, float* %33041
%33043 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%33044 = load float, float* %33043
%33045 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%33046 = load float, float* %33045
%33047 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%33048 = load float, float* %33047
%33049 = fmul float %33046, %33048
%33050 = fneg float %33049
%33051 = call float @llvm.fmuladd.f32(float %33042, float %33044, float %33050)
%33052 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %33051, float* %33052
%33053 = load float*, float** %11
%33054 = getelementptr inbounds float, float* %33053, i64 0
%33055 = load float, float* %33054
%33056 = load float*, float** %10
%33057 = getelementptr inbounds float, float* %33056, i64 0
%33058 = load float, float* %33057
%33059 = fsub float %33055, %33058
%33060 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %33059, float* %33060
%33061 = load float*, float** %11
%33062 = getelementptr inbounds float, float* %33061, i64 1
%33063 = load float, float* %33062
%33064 = load float*, float** %10
%33065 = getelementptr inbounds float, float* %33064, i64 1
%33066 = load float, float* %33065
%33067 = fsub float %33063, %33066
%33068 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %33067, float* %33068
%33069 = load float*, float** %11
%33070 = getelementptr inbounds float, float* %33069, i64 2
%33071 = load float, float* %33070
%33072 = load float*, float** %10
%33073 = getelementptr inbounds float, float* %33072, i64 2
%33074 = load float, float* %33073
%33075 = fsub float %33071, %33074
%33076 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %33075, float* %33076
%33077 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%33078 = load float, float* %33077
%33079 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%33080 = load float, float* %33079
%33081 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%33082 = load float, float* %33081
%33083 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%33084 = load float, float* %33083
%33085 = fmul float %33082, %33084
%33086 = call float @llvm.fmuladd.f32(float %33078, float %33080, float %33085)
%33087 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%33088 = load float, float* %33087
%33089 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%33090 = load float, float* %33089
%33091 = call float @llvm.fmuladd.f32(float %33088, float %33090, float %33086)
%33092 = fcmp ogt float %33091, 0.000000e+00
br i1 %33092, label %33093, label %33094
33093: ; preds = %32968
store i32 0, i32* %7
br label %37477
33094: ; preds = %32968
store i32 1, i32* %7
br label %37477
33095: ; preds = %32839
%33096 = load float*, float** %11
%33097 = getelementptr inbounds float, float* %33096, i64 0
%33098 = load float, float* %33097
%33099 = load float*, float** %8
%33100 = getelementptr inbounds float, float* %33099, i64 0
%33101 = load float, float* %33100
%33102 = fsub float %33098, %33101
%33103 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %33102, float* %33103
%33104 = load float*, float** %11
%33105 = getelementptr inbounds float, float* %33104, i64 1
%33106 = load float, float* %33105
%33107 = load float*, float** %8
%33108 = getelementptr inbounds float, float* %33107, i64 1
%33109 = load float, float* %33108
%33110 = fsub float %33106, %33109
%33111 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %33110, float* %33111
%33112 = load float*, float** %11
%33113 = getelementptr inbounds float, float* %33112, i64 2
%33114 = load float, float* %33113
%33115 = load float*, float** %8
%33116 = getelementptr inbounds float, float* %33115, i64 2
%33117 = load float, float* %33116
%33118 = fsub float %33114, %33117
%33119 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %33118, float* %33119
%33120 = load float*, float** %10
%33121 = getelementptr inbounds float, float* %33120, i64 0
%33122 = load float, float* %33121
%33123 = load float*, float** %8
%33124 = getelementptr inbounds float, float* %33123, i64 0
%33125 = load float, float* %33124
%33126 = fsub float %33122, %33125
%33127 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %33126, float* %33127
%33128 = load float*, float** %10
%33129 = getelementptr inbounds float, float* %33128, i64 1
%33130 = load float, float* %33129
%33131 = load float*, float** %8
%33132 = getelementptr inbounds float, float* %33131, i64 1
%33133 = load float, float* %33132
%33134 = fsub float %33130, %33133
%33135 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %33134, float* %33135
%33136 = load float*, float** %10
%33137 = getelementptr inbounds float, float* %33136, i64 2
%33138 = load float, float* %33137
%33139 = load float*, float** %8
%33140 = getelementptr inbounds float, float* %33139, i64 2
%33141 = load float, float* %33140
%33142 = fsub float %33138, %33141
%33143 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %33142, float* %33143
%33144 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%33145 = load float, float* %33144
%33146 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%33147 = load float, float* %33146
%33148 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%33149 = load float, float* %33148
%33150 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%33151 = load float, float* %33150
%33152 = fmul float %33149, %33151
%33153 = fneg float %33152
%33154 = call float @llvm.fmuladd.f32(float %33145, float %33147, float %33153)
%33155 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %33154, float* %33155
%33156 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%33157 = load float, float* %33156
%33158 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%33159 = load float, float* %33158
%33160 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%33161 = load float, float* %33160
%33162 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%33163 = load float, float* %33162
%33164 = fmul float %33161, %33163
%33165 = fneg float %33164
%33166 = call float @llvm.fmuladd.f32(float %33157, float %33159, float %33165)
%33167 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %33166, float* %33167
%33168 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%33169 = load float, float* %33168
%33170 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%33171 = load float, float* %33170
%33172 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%33173 = load float, float* %33172
%33174 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%33175 = load float, float* %33174
%33176 = fmul float %33173, %33175
%33177 = fneg float %33176
%33178 = call float @llvm.fmuladd.f32(float %33169, float %33171, float %33177)
%33179 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %33178, float* %33179
%33180 = load float*, float** %12
%33181 = getelementptr inbounds float, float* %33180, i64 0
%33182 = load float, float* %33181
%33183 = load float*, float** %8
%33184 = getelementptr inbounds float, float* %33183, i64 0
%33185 = load float, float* %33184
%33186 = fsub float %33182, %33185
%33187 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %33186, float* %33187
%33188 = load float*, float** %12
%33189 = getelementptr inbounds float, float* %33188, i64 1
%33190 = load float, float* %33189
%33191 = load float*, float** %8
%33192 = getelementptr inbounds float, float* %33191, i64 1
%33193 = load float, float* %33192
%33194 = fsub float %33190, %33193
%33195 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %33194, float* %33195
%33196 = load float*, float** %12
%33197 = getelementptr inbounds float, float* %33196, i64 2
%33198 = load float, float* %33197
%33199 = load float*, float** %8
%33200 = getelementptr inbounds float, float* %33199, i64 2
%33201 = load float, float* %33200
%33202 = fsub float %33198, %33201
%33203 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %33202, float* %33203
%33204 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%33205 = load float, float* %33204
%33206 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%33207 = load float, float* %33206
%33208 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%33209 = load float, float* %33208
%33210 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%33211 = load float, float* %33210
%33212 = fmul float %33209, %33211
%33213 = call float @llvm.fmuladd.f32(float %33205, float %33207, float %33212)
%33214 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%33215 = load float, float* %33214
%33216 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%33217 = load float, float* %33216
%33218 = call float @llvm.fmuladd.f32(float %33215, float %33217, float %33213)
%33219 = fcmp ogt float %33218, 0.000000e+00
br i1 %33219, label %33220, label %33221
33220: ; preds = %33095
store i32 0, i32* %7
br label %37477
33221: ; preds = %33095
%33222 = load float*, float** %11
%33223 = getelementptr inbounds float, float* %33222, i64 0
%33224 = load float, float* %33223
%33225 = load float*, float** %10
%33226 = getelementptr inbounds float, float* %33225, i64 0
%33227 = load float, float* %33226
%33228 = fsub float %33224, %33227
%33229 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %33228, float* %33229
%33230 = load float*, float** %11
%33231 = getelementptr inbounds float, float* %33230, i64 1
%33232 = load float, float* %33231
%33233 = load float*, float** %10
%33234 = getelementptr inbounds float, float* %33233, i64 1
%33235 = load float, float* %33234
%33236 = fsub float %33232, %33235
%33237 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %33236, float* %33237
%33238 = load float*, float** %11
%33239 = getelementptr inbounds float, float* %33238, i64 2
%33240 = load float, float* %33239
%33241 = load float*, float** %10
%33242 = getelementptr inbounds float, float* %33241, i64 2
%33243 = load float, float* %33242
%33244 = fsub float %33240, %33243
%33245 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %33244, float* %33245
%33246 = load float*, float** %9
%33247 = getelementptr inbounds float, float* %33246, i64 0
%33248 = load float, float* %33247
%33249 = load float*, float** %10
%33250 = getelementptr inbounds float, float* %33249, i64 0
%33251 = load float, float* %33250
%33252 = fsub float %33248, %33251
%33253 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %33252, float* %33253
%33254 = load float*, float** %9
%33255 = getelementptr inbounds float, float* %33254, i64 1
%33256 = load float, float* %33255
%33257 = load float*, float** %10
%33258 = getelementptr inbounds float, float* %33257, i64 1
%33259 = load float, float* %33258
%33260 = fsub float %33256, %33259
%33261 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %33260, float* %33261
%33262 = load float*, float** %9
%33263 = getelementptr inbounds float, float* %33262, i64 2
%33264 = load float, float* %33263
%33265 = load float*, float** %10
%33266 = getelementptr inbounds float, float* %33265, i64 2
%33267 = load float, float* %33266
%33268 = fsub float %33264, %33267
%33269 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %33268, float* %33269
%33270 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%33271 = load float, float* %33270
%33272 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%33273 = load float, float* %33272
%33274 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%33275 = load float, float* %33274
%33276 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%33277 = load float, float* %33276
%33278 = fmul float %33275, %33277
%33279 = fneg float %33278
%33280 = call float @llvm.fmuladd.f32(float %33271, float %33273, float %33279)
%33281 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %33280, float* %33281
%33282 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%33283 = load float, float* %33282
%33284 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%33285 = load float, float* %33284
%33286 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%33287 = load float, float* %33286
%33288 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%33289 = load float, float* %33288
%33290 = fmul float %33287, %33289
%33291 = fneg float %33290
%33292 = call float @llvm.fmuladd.f32(float %33283, float %33285, float %33291)
%33293 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %33292, float* %33293
%33294 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%33295 = load float, float* %33294
%33296 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%33297 = load float, float* %33296
%33298 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%33299 = load float, float* %33298
%33300 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%33301 = load float, float* %33300
%33302 = fmul float %33299, %33301
%33303 = fneg float %33302
%33304 = call float @llvm.fmuladd.f32(float %33295, float %33297, float %33303)
%33305 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %33304, float* %33305
%33306 = load float*, float** %13
%33307 = getelementptr inbounds float, float* %33306, i64 0
%33308 = load float, float* %33307
%33309 = load float*, float** %10
%33310 = getelementptr inbounds float, float* %33309, i64 0
%33311 = load float, float* %33310
%33312 = fsub float %33308, %33311
%33313 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %33312, float* %33313
%33314 = load float*, float** %13
%33315 = getelementptr inbounds float, float* %33314, i64 1
%33316 = load float, float* %33315
%33317 = load float*, float** %10
%33318 = getelementptr inbounds float, float* %33317, i64 1
%33319 = load float, float* %33318
%33320 = fsub float %33316, %33319
%33321 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %33320, float* %33321
%33322 = load float*, float** %13
%33323 = getelementptr inbounds float, float* %33322, i64 2
%33324 = load float, float* %33323
%33325 = load float*, float** %10
%33326 = getelementptr inbounds float, float* %33325, i64 2
%33327 = load float, float* %33326
%33328 = fsub float %33324, %33327
%33329 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %33328, float* %33329
%33330 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%33331 = load float, float* %33330
%33332 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%33333 = load float, float* %33332
%33334 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%33335 = load float, float* %33334
%33336 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%33337 = load float, float* %33336
%33338 = fmul float %33335, %33337
%33339 = call float @llvm.fmuladd.f32(float %33331, float %33333, float %33338)
%33340 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%33341 = load float, float* %33340
%33342 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%33343 = load float, float* %33342
%33344 = call float @llvm.fmuladd.f32(float %33341, float %33343, float %33339)
%33345 = fcmp ogt float %33344, 0.000000e+00
br i1 %33345, label %33346, label %33347
33346: ; preds = %33221
store i32 0, i32* %7
br label %37477
33347: ; preds = %33221
store i32 1, i32* %7
br label %37477
33348: ; preds = %32836
%33349 = load float, float* %18
%33350 = fcmp ogt float %33349, 0.000000e+00
br i1 %33350, label %33351, label %33860
33351: ; preds = %33348
%33352 = load float, float* %19
%33353 = fcmp ogt float %33352, 0.000000e+00
br i1 %33353, label %33354, label %33607
33354: ; preds = %33351
%33355 = load float*, float** %11
%33356 = getelementptr inbounds float, float* %33355, i64 0
%33357 = load float, float* %33356
%33358 = load float*, float** %9
%33359 = getelementptr inbounds float, float* %33358, i64 0
%33360 = load float, float* %33359
%33361 = fsub float %33357, %33360
%33362 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %33361, float* %33362
%33363 = load float*, float** %11
%33364 = getelementptr inbounds float, float* %33363, i64 1
%33365 = load float, float* %33364
%33366 = load float*, float** %9
%33367 = getelementptr inbounds float, float* %33366, i64 1
%33368 = load float, float* %33367
%33369 = fsub float %33365, %33368
%33370 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %33369, float* %33370
%33371 = load float*, float** %11
%33372 = getelementptr inbounds float, float* %33371, i64 2
%33373 = load float, float* %33372
%33374 = load float*, float** %9
%33375 = getelementptr inbounds float, float* %33374, i64 2
%33376 = load float, float* %33375
%33377 = fsub float %33373, %33376
%33378 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %33377, float* %33378
%33379 = load float*, float** %10
%33380 = getelementptr inbounds float, float* %33379, i64 0
%33381 = load float, float* %33380
%33382 = load float*, float** %9
%33383 = getelementptr inbounds float, float* %33382, i64 0
%33384 = load float, float* %33383
%33385 = fsub float %33381, %33384
%33386 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %33385, float* %33386
%33387 = load float*, float** %10
%33388 = getelementptr inbounds float, float* %33387, i64 1
%33389 = load float, float* %33388
%33390 = load float*, float** %9
%33391 = getelementptr inbounds float, float* %33390, i64 1
%33392 = load float, float* %33391
%33393 = fsub float %33389, %33392
%33394 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %33393, float* %33394
%33395 = load float*, float** %10
%33396 = getelementptr inbounds float, float* %33395, i64 2
%33397 = load float, float* %33396
%33398 = load float*, float** %9
%33399 = getelementptr inbounds float, float* %33398, i64 2
%33400 = load float, float* %33399
%33401 = fsub float %33397, %33400
%33402 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %33401, float* %33402
%33403 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%33404 = load float, float* %33403
%33405 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%33406 = load float, float* %33405
%33407 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%33408 = load float, float* %33407
%33409 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%33410 = load float, float* %33409
%33411 = fmul float %33408, %33410
%33412 = fneg float %33411
%33413 = call float @llvm.fmuladd.f32(float %33404, float %33406, float %33412)
%33414 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %33413, float* %33414
%33415 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%33416 = load float, float* %33415
%33417 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%33418 = load float, float* %33417
%33419 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%33420 = load float, float* %33419
%33421 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%33422 = load float, float* %33421
%33423 = fmul float %33420, %33422
%33424 = fneg float %33423
%33425 = call float @llvm.fmuladd.f32(float %33416, float %33418, float %33424)
%33426 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %33425, float* %33426
%33427 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%33428 = load float, float* %33427
%33429 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%33430 = load float, float* %33429
%33431 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%33432 = load float, float* %33431
%33433 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%33434 = load float, float* %33433
%33435 = fmul float %33432, %33434
%33436 = fneg float %33435
%33437 = call float @llvm.fmuladd.f32(float %33428, float %33430, float %33436)
%33438 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %33437, float* %33438
%33439 = load float*, float** %12
%33440 = getelementptr inbounds float, float* %33439, i64 0
%33441 = load float, float* %33440
%33442 = load float*, float** %9
%33443 = getelementptr inbounds float, float* %33442, i64 0
%33444 = load float, float* %33443
%33445 = fsub float %33441, %33444
%33446 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %33445, float* %33446
%33447 = load float*, float** %12
%33448 = getelementptr inbounds float, float* %33447, i64 1
%33449 = load float, float* %33448
%33450 = load float*, float** %9
%33451 = getelementptr inbounds float, float* %33450, i64 1
%33452 = load float, float* %33451
%33453 = fsub float %33449, %33452
%33454 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %33453, float* %33454
%33455 = load float*, float** %12
%33456 = getelementptr inbounds float, float* %33455, i64 2
%33457 = load float, float* %33456
%33458 = load float*, float** %9
%33459 = getelementptr inbounds float, float* %33458, i64 2
%33460 = load float, float* %33459
%33461 = fsub float %33457, %33460
%33462 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %33461, float* %33462
%33463 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%33464 = load float, float* %33463
%33465 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%33466 = load float, float* %33465
%33467 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%33468 = load float, float* %33467
%33469 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%33470 = load float, float* %33469
%33471 = fmul float %33468, %33470
%33472 = call float @llvm.fmuladd.f32(float %33464, float %33466, float %33471)
%33473 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%33474 = load float, float* %33473
%33475 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%33476 = load float, float* %33475
%33477 = call float @llvm.fmuladd.f32(float %33474, float %33476, float %33472)
%33478 = fcmp ogt float %33477, 0.000000e+00
br i1 %33478, label %33479, label %33480
33479: ; preds = %33354
store i32 0, i32* %7
br label %37477
33480: ; preds = %33354
%33481 = load float*, float** %11
%33482 = getelementptr inbounds float, float* %33481, i64 0
%33483 = load float, float* %33482
%33484 = load float*, float** %10
%33485 = getelementptr inbounds float, float* %33484, i64 0
%33486 = load float, float* %33485
%33487 = fsub float %33483, %33486
%33488 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %33487, float* %33488
%33489 = load float*, float** %11
%33490 = getelementptr inbounds float, float* %33489, i64 1
%33491 = load float, float* %33490
%33492 = load float*, float** %10
%33493 = getelementptr inbounds float, float* %33492, i64 1
%33494 = load float, float* %33493
%33495 = fsub float %33491, %33494
%33496 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %33495, float* %33496
%33497 = load float*, float** %11
%33498 = getelementptr inbounds float, float* %33497, i64 2
%33499 = load float, float* %33498
%33500 = load float*, float** %10
%33501 = getelementptr inbounds float, float* %33500, i64 2
%33502 = load float, float* %33501
%33503 = fsub float %33499, %33502
%33504 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %33503, float* %33504
%33505 = load float*, float** %8
%33506 = getelementptr inbounds float, float* %33505, i64 0
%33507 = load float, float* %33506
%33508 = load float*, float** %10
%33509 = getelementptr inbounds float, float* %33508, i64 0
%33510 = load float, float* %33509
%33511 = fsub float %33507, %33510
%33512 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %33511, float* %33512
%33513 = load float*, float** %8
%33514 = getelementptr inbounds float, float* %33513, i64 1
%33515 = load float, float* %33514
%33516 = load float*, float** %10
%33517 = getelementptr inbounds float, float* %33516, i64 1
%33518 = load float, float* %33517
%33519 = fsub float %33515, %33518
%33520 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %33519, float* %33520
%33521 = load float*, float** %8
%33522 = getelementptr inbounds float, float* %33521, i64 2
%33523 = load float, float* %33522
%33524 = load float*, float** %10
%33525 = getelementptr inbounds float, float* %33524, i64 2
%33526 = load float, float* %33525
%33527 = fsub float %33523, %33526
%33528 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %33527, float* %33528
%33529 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%33530 = load float, float* %33529
%33531 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%33532 = load float, float* %33531
%33533 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%33534 = load float, float* %33533
%33535 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%33536 = load float, float* %33535
%33537 = fmul float %33534, %33536
%33538 = fneg float %33537
%33539 = call float @llvm.fmuladd.f32(float %33530, float %33532, float %33538)
%33540 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %33539, float* %33540
%33541 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%33542 = load float, float* %33541
%33543 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%33544 = load float, float* %33543
%33545 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%33546 = load float, float* %33545
%33547 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%33548 = load float, float* %33547
%33549 = fmul float %33546, %33548
%33550 = fneg float %33549
%33551 = call float @llvm.fmuladd.f32(float %33542, float %33544, float %33550)
%33552 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %33551, float* %33552
%33553 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%33554 = load float, float* %33553
%33555 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%33556 = load float, float* %33555
%33557 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%33558 = load float, float* %33557
%33559 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%33560 = load float, float* %33559
%33561 = fmul float %33558, %33560
%33562 = fneg float %33561
%33563 = call float @llvm.fmuladd.f32(float %33554, float %33556, float %33562)
%33564 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %33563, float* %33564
%33565 = load float*, float** %13
%33566 = getelementptr inbounds float, float* %33565, i64 0
%33567 = load float, float* %33566
%33568 = load float*, float** %10
%33569 = getelementptr inbounds float, float* %33568, i64 0
%33570 = load float, float* %33569
%33571 = fsub float %33567, %33570
%33572 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %33571, float* %33572
%33573 = load float*, float** %13
%33574 = getelementptr inbounds float, float* %33573, i64 1
%33575 = load float, float* %33574
%33576 = load float*, float** %10
%33577 = getelementptr inbounds float, float* %33576, i64 1
%33578 = load float, float* %33577
%33579 = fsub float %33575, %33578
%33580 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %33579, float* %33580
%33581 = load float*, float** %13
%33582 = getelementptr inbounds float, float* %33581, i64 2
%33583 = load float, float* %33582
%33584 = load float*, float** %10
%33585 = getelementptr inbounds float, float* %33584, i64 2
%33586 = load float, float* %33585
%33587 = fsub float %33583, %33586
%33588 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %33587, float* %33588
%33589 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%33590 = load float, float* %33589
%33591 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%33592 = load float, float* %33591
%33593 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%33594 = load float, float* %33593
%33595 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%33596 = load float, float* %33595
%33597 = fmul float %33594, %33596
%33598 = call float @llvm.fmuladd.f32(float %33590, float %33592, float %33597)
%33599 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%33600 = load float, float* %33599
%33601 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%33602 = load float, float* %33601
%33603 = call float @llvm.fmuladd.f32(float %33600, float %33602, float %33598)
%33604 = fcmp ogt float %33603, 0.000000e+00
br i1 %33604, label %33605, label %33606
33605: ; preds = %33480
store i32 0, i32* %7
br label %37477
33606: ; preds = %33480
store i32 1, i32* %7
br label %37477
33607: ; preds = %33351
%33608 = load float*, float** %12
%33609 = getelementptr inbounds float, float* %33608, i64 0
%33610 = load float, float* %33609
%33611 = load float*, float** %8
%33612 = getelementptr inbounds float, float* %33611, i64 0
%33613 = load float, float* %33612
%33614 = fsub float %33610, %33613
%33615 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %33614, float* %33615
%33616 = load float*, float** %12
%33617 = getelementptr inbounds float, float* %33616, i64 1
%33618 = load float, float* %33617
%33619 = load float*, float** %8
%33620 = getelementptr inbounds float, float* %33619, i64 1
%33621 = load float, float* %33620
%33622 = fsub float %33618, %33621
%33623 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %33622, float* %33623
%33624 = load float*, float** %12
%33625 = getelementptr inbounds float, float* %33624, i64 2
%33626 = load float, float* %33625
%33627 = load float*, float** %8
%33628 = getelementptr inbounds float, float* %33627, i64 2
%33629 = load float, float* %33628
%33630 = fsub float %33626, %33629
%33631 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %33630, float* %33631
%33632 = load float*, float** %10
%33633 = getelementptr inbounds float, float* %33632, i64 0
%33634 = load float, float* %33633
%33635 = load float*, float** %8
%33636 = getelementptr inbounds float, float* %33635, i64 0
%33637 = load float, float* %33636
%33638 = fsub float %33634, %33637
%33639 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %33638, float* %33639
%33640 = load float*, float** %10
%33641 = getelementptr inbounds float, float* %33640, i64 1
%33642 = load float, float* %33641
%33643 = load float*, float** %8
%33644 = getelementptr inbounds float, float* %33643, i64 1
%33645 = load float, float* %33644
%33646 = fsub float %33642, %33645
%33647 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %33646, float* %33647
%33648 = load float*, float** %10
%33649 = getelementptr inbounds float, float* %33648, i64 2
%33650 = load float, float* %33649
%33651 = load float*, float** %8
%33652 = getelementptr inbounds float, float* %33651, i64 2
%33653 = load float, float* %33652
%33654 = fsub float %33650, %33653
%33655 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %33654, float* %33655
%33656 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%33657 = load float, float* %33656
%33658 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%33659 = load float, float* %33658
%33660 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%33661 = load float, float* %33660
%33662 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%33663 = load float, float* %33662
%33664 = fmul float %33661, %33663
%33665 = fneg float %33664
%33666 = call float @llvm.fmuladd.f32(float %33657, float %33659, float %33665)
%33667 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %33666, float* %33667
%33668 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%33669 = load float, float* %33668
%33670 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%33671 = load float, float* %33670
%33672 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%33673 = load float, float* %33672
%33674 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%33675 = load float, float* %33674
%33676 = fmul float %33673, %33675
%33677 = fneg float %33676
%33678 = call float @llvm.fmuladd.f32(float %33669, float %33671, float %33677)
%33679 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %33678, float* %33679
%33680 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%33681 = load float, float* %33680
%33682 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%33683 = load float, float* %33682
%33684 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%33685 = load float, float* %33684
%33686 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%33687 = load float, float* %33686
%33688 = fmul float %33685, %33687
%33689 = fneg float %33688
%33690 = call float @llvm.fmuladd.f32(float %33681, float %33683, float %33689)
%33691 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %33690, float* %33691
%33692 = load float*, float** %13
%33693 = getelementptr inbounds float, float* %33692, i64 0
%33694 = load float, float* %33693
%33695 = load float*, float** %8
%33696 = getelementptr inbounds float, float* %33695, i64 0
%33697 = load float, float* %33696
%33698 = fsub float %33694, %33697
%33699 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %33698, float* %33699
%33700 = load float*, float** %13
%33701 = getelementptr inbounds float, float* %33700, i64 1
%33702 = load float, float* %33701
%33703 = load float*, float** %8
%33704 = getelementptr inbounds float, float* %33703, i64 1
%33705 = load float, float* %33704
%33706 = fsub float %33702, %33705
%33707 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %33706, float* %33707
%33708 = load float*, float** %13
%33709 = getelementptr inbounds float, float* %33708, i64 2
%33710 = load float, float* %33709
%33711 = load float*, float** %8
%33712 = getelementptr inbounds float, float* %33711, i64 2
%33713 = load float, float* %33712
%33714 = fsub float %33710, %33713
%33715 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %33714, float* %33715
%33716 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%33717 = load float, float* %33716
%33718 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%33719 = load float, float* %33718
%33720 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%33721 = load float, float* %33720
%33722 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%33723 = load float, float* %33722
%33724 = fmul float %33721, %33723
%33725 = call float @llvm.fmuladd.f32(float %33717, float %33719, float %33724)
%33726 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%33727 = load float, float* %33726
%33728 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%33729 = load float, float* %33728
%33730 = call float @llvm.fmuladd.f32(float %33727, float %33729, float %33725)
%33731 = fcmp ogt float %33730, 0.000000e+00
br i1 %33731, label %33732, label %33733
33732: ; preds = %33607
store i32 0, i32* %7
br label %37477
33733: ; preds = %33607
%33734 = load float*, float** %12
%33735 = getelementptr inbounds float, float* %33734, i64 0
%33736 = load float, float* %33735
%33737 = load float*, float** %10
%33738 = getelementptr inbounds float, float* %33737, i64 0
%33739 = load float, float* %33738
%33740 = fsub float %33736, %33739
%33741 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %33740, float* %33741
%33742 = load float*, float** %12
%33743 = getelementptr inbounds float, float* %33742, i64 1
%33744 = load float, float* %33743
%33745 = load float*, float** %10
%33746 = getelementptr inbounds float, float* %33745, i64 1
%33747 = load float, float* %33746
%33748 = fsub float %33744, %33747
%33749 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %33748, float* %33749
%33750 = load float*, float** %12
%33751 = getelementptr inbounds float, float* %33750, i64 2
%33752 = load float, float* %33751
%33753 = load float*, float** %10
%33754 = getelementptr inbounds float, float* %33753, i64 2
%33755 = load float, float* %33754
%33756 = fsub float %33752, %33755
%33757 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %33756, float* %33757
%33758 = load float*, float** %9
%33759 = getelementptr inbounds float, float* %33758, i64 0
%33760 = load float, float* %33759
%33761 = load float*, float** %10
%33762 = getelementptr inbounds float, float* %33761, i64 0
%33763 = load float, float* %33762
%33764 = fsub float %33760, %33763
%33765 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %33764, float* %33765
%33766 = load float*, float** %9
%33767 = getelementptr inbounds float, float* %33766, i64 1
%33768 = load float, float* %33767
%33769 = load float*, float** %10
%33770 = getelementptr inbounds float, float* %33769, i64 1
%33771 = load float, float* %33770
%33772 = fsub float %33768, %33771
%33773 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %33772, float* %33773
%33774 = load float*, float** %9
%33775 = getelementptr inbounds float, float* %33774, i64 2
%33776 = load float, float* %33775
%33777 = load float*, float** %10
%33778 = getelementptr inbounds float, float* %33777, i64 2
%33779 = load float, float* %33778
%33780 = fsub float %33776, %33779
%33781 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %33780, float* %33781
%33782 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%33783 = load float, float* %33782
%33784 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%33785 = load float, float* %33784
%33786 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%33787 = load float, float* %33786
%33788 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%33789 = load float, float* %33788
%33790 = fmul float %33787, %33789
%33791 = fneg float %33790
%33792 = call float @llvm.fmuladd.f32(float %33783, float %33785, float %33791)
%33793 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %33792, float* %33793
%33794 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%33795 = load float, float* %33794
%33796 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%33797 = load float, float* %33796
%33798 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%33799 = load float, float* %33798
%33800 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%33801 = load float, float* %33800
%33802 = fmul float %33799, %33801
%33803 = fneg float %33802
%33804 = call float @llvm.fmuladd.f32(float %33795, float %33797, float %33803)
%33805 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %33804, float* %33805
%33806 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%33807 = load float, float* %33806
%33808 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%33809 = load float, float* %33808
%33810 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%33811 = load float, float* %33810
%33812 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%33813 = load float, float* %33812
%33814 = fmul float %33811, %33813
%33815 = fneg float %33814
%33816 = call float @llvm.fmuladd.f32(float %33807, float %33809, float %33815)
%33817 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %33816, float* %33817
%33818 = load float*, float** %11
%33819 = getelementptr inbounds float, float* %33818, i64 0
%33820 = load float, float* %33819
%33821 = load float*, float** %10
%33822 = getelementptr inbounds float, float* %33821, i64 0
%33823 = load float, float* %33822
%33824 = fsub float %33820, %33823
%33825 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %33824, float* %33825
%33826 = load float*, float** %11
%33827 = getelementptr inbounds float, float* %33826, i64 1
%33828 = load float, float* %33827
%33829 = load float*, float** %10
%33830 = getelementptr inbounds float, float* %33829, i64 1
%33831 = load float, float* %33830
%33832 = fsub float %33828, %33831
%33833 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %33832, float* %33833
%33834 = load float*, float** %11
%33835 = getelementptr inbounds float, float* %33834, i64 2
%33836 = load float, float* %33835
%33837 = load float*, float** %10
%33838 = getelementptr inbounds float, float* %33837, i64 2
%33839 = load float, float* %33838
%33840 = fsub float %33836, %33839
%33841 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %33840, float* %33841
%33842 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%33843 = load float, float* %33842
%33844 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%33845 = load float, float* %33844
%33846 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%33847 = load float, float* %33846
%33848 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%33849 = load float, float* %33848
%33850 = fmul float %33847, %33849
%33851 = call float @llvm.fmuladd.f32(float %33843, float %33845, float %33850)
%33852 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%33853 = load float, float* %33852
%33854 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%33855 = load float, float* %33854
%33856 = call float @llvm.fmuladd.f32(float %33853, float %33855, float %33851)
%33857 = fcmp ogt float %33856, 0.000000e+00
br i1 %33857, label %33858, label %33859
33858: ; preds = %33733
store i32 0, i32* %7
br label %37477
33859: ; preds = %33733
store i32 1, i32* %7
br label %37477
33860: ; preds = %33348
%33861 = load float, float* %19
%33862 = fcmp ogt float %33861, 0.000000e+00
br i1 %33862, label %33863, label %34116
33863: ; preds = %33860
%33864 = load float*, float** %13
%33865 = getelementptr inbounds float, float* %33864, i64 0
%33866 = load float, float* %33865
%33867 = load float*, float** %8
%33868 = getelementptr inbounds float, float* %33867, i64 0
%33869 = load float, float* %33868
%33870 = fsub float %33866, %33869
%33871 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %33870, float* %33871
%33872 = load float*, float** %13
%33873 = getelementptr inbounds float, float* %33872, i64 1
%33874 = load float, float* %33873
%33875 = load float*, float** %8
%33876 = getelementptr inbounds float, float* %33875, i64 1
%33877 = load float, float* %33876
%33878 = fsub float %33874, %33877
%33879 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %33878, float* %33879
%33880 = load float*, float** %13
%33881 = getelementptr inbounds float, float* %33880, i64 2
%33882 = load float, float* %33881
%33883 = load float*, float** %8
%33884 = getelementptr inbounds float, float* %33883, i64 2
%33885 = load float, float* %33884
%33886 = fsub float %33882, %33885
%33887 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %33886, float* %33887
%33888 = load float*, float** %10
%33889 = getelementptr inbounds float, float* %33888, i64 0
%33890 = load float, float* %33889
%33891 = load float*, float** %8
%33892 = getelementptr inbounds float, float* %33891, i64 0
%33893 = load float, float* %33892
%33894 = fsub float %33890, %33893
%33895 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %33894, float* %33895
%33896 = load float*, float** %10
%33897 = getelementptr inbounds float, float* %33896, i64 1
%33898 = load float, float* %33897
%33899 = load float*, float** %8
%33900 = getelementptr inbounds float, float* %33899, i64 1
%33901 = load float, float* %33900
%33902 = fsub float %33898, %33901
%33903 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %33902, float* %33903
%33904 = load float*, float** %10
%33905 = getelementptr inbounds float, float* %33904, i64 2
%33906 = load float, float* %33905
%33907 = load float*, float** %8
%33908 = getelementptr inbounds float, float* %33907, i64 2
%33909 = load float, float* %33908
%33910 = fsub float %33906, %33909
%33911 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %33910, float* %33911
%33912 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%33913 = load float, float* %33912
%33914 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%33915 = load float, float* %33914
%33916 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%33917 = load float, float* %33916
%33918 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%33919 = load float, float* %33918
%33920 = fmul float %33917, %33919
%33921 = fneg float %33920
%33922 = call float @llvm.fmuladd.f32(float %33913, float %33915, float %33921)
%33923 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %33922, float* %33923
%33924 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%33925 = load float, float* %33924
%33926 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%33927 = load float, float* %33926
%33928 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%33929 = load float, float* %33928
%33930 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%33931 = load float, float* %33930
%33932 = fmul float %33929, %33931
%33933 = fneg float %33932
%33934 = call float @llvm.fmuladd.f32(float %33925, float %33927, float %33933)
%33935 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %33934, float* %33935
%33936 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%33937 = load float, float* %33936
%33938 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%33939 = load float, float* %33938
%33940 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%33941 = load float, float* %33940
%33942 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%33943 = load float, float* %33942
%33944 = fmul float %33941, %33943
%33945 = fneg float %33944
%33946 = call float @llvm.fmuladd.f32(float %33937, float %33939, float %33945)
%33947 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %33946, float* %33947
%33948 = load float*, float** %11
%33949 = getelementptr inbounds float, float* %33948, i64 0
%33950 = load float, float* %33949
%33951 = load float*, float** %8
%33952 = getelementptr inbounds float, float* %33951, i64 0
%33953 = load float, float* %33952
%33954 = fsub float %33950, %33953
%33955 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %33954, float* %33955
%33956 = load float*, float** %11
%33957 = getelementptr inbounds float, float* %33956, i64 1
%33958 = load float, float* %33957
%33959 = load float*, float** %8
%33960 = getelementptr inbounds float, float* %33959, i64 1
%33961 = load float, float* %33960
%33962 = fsub float %33958, %33961
%33963 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %33962, float* %33963
%33964 = load float*, float** %11
%33965 = getelementptr inbounds float, float* %33964, i64 2
%33966 = load float, float* %33965
%33967 = load float*, float** %8
%33968 = getelementptr inbounds float, float* %33967, i64 2
%33969 = load float, float* %33968
%33970 = fsub float %33966, %33969
%33971 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %33970, float* %33971
%33972 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%33973 = load float, float* %33972
%33974 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%33975 = load float, float* %33974
%33976 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%33977 = load float, float* %33976
%33978 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%33979 = load float, float* %33978
%33980 = fmul float %33977, %33979
%33981 = call float @llvm.fmuladd.f32(float %33973, float %33975, float %33980)
%33982 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%33983 = load float, float* %33982
%33984 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%33985 = load float, float* %33984
%33986 = call float @llvm.fmuladd.f32(float %33983, float %33985, float %33981)
%33987 = fcmp ogt float %33986, 0.000000e+00
br i1 %33987, label %33988, label %33989
33988: ; preds = %33863
store i32 0, i32* %7
br label %37477
33989: ; preds = %33863
%33990 = load float*, float** %13
%33991 = getelementptr inbounds float, float* %33990, i64 0
%33992 = load float, float* %33991
%33993 = load float*, float** %10
%33994 = getelementptr inbounds float, float* %33993, i64 0
%33995 = load float, float* %33994
%33996 = fsub float %33992, %33995
%33997 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %33996, float* %33997
%33998 = load float*, float** %13
%33999 = getelementptr inbounds float, float* %33998, i64 1
%34000 = load float, float* %33999
%34001 = load float*, float** %10
%34002 = getelementptr inbounds float, float* %34001, i64 1
%34003 = load float, float* %34002
%34004 = fsub float %34000, %34003
%34005 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %34004, float* %34005
%34006 = load float*, float** %13
%34007 = getelementptr inbounds float, float* %34006, i64 2
%34008 = load float, float* %34007
%34009 = load float*, float** %10
%34010 = getelementptr inbounds float, float* %34009, i64 2
%34011 = load float, float* %34010
%34012 = fsub float %34008, %34011
%34013 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %34012, float* %34013
%34014 = load float*, float** %9
%34015 = getelementptr inbounds float, float* %34014, i64 0
%34016 = load float, float* %34015
%34017 = load float*, float** %10
%34018 = getelementptr inbounds float, float* %34017, i64 0
%34019 = load float, float* %34018
%34020 = fsub float %34016, %34019
%34021 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %34020, float* %34021
%34022 = load float*, float** %9
%34023 = getelementptr inbounds float, float* %34022, i64 1
%34024 = load float, float* %34023
%34025 = load float*, float** %10
%34026 = getelementptr inbounds float, float* %34025, i64 1
%34027 = load float, float* %34026
%34028 = fsub float %34024, %34027
%34029 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %34028, float* %34029
%34030 = load float*, float** %9
%34031 = getelementptr inbounds float, float* %34030, i64 2
%34032 = load float, float* %34031
%34033 = load float*, float** %10
%34034 = getelementptr inbounds float, float* %34033, i64 2
%34035 = load float, float* %34034
%34036 = fsub float %34032, %34035
%34037 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %34036, float* %34037
%34038 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%34039 = load float, float* %34038
%34040 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%34041 = load float, float* %34040
%34042 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%34043 = load float, float* %34042
%34044 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%34045 = load float, float* %34044
%34046 = fmul float %34043, %34045
%34047 = fneg float %34046
%34048 = call float @llvm.fmuladd.f32(float %34039, float %34041, float %34047)
%34049 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %34048, float* %34049
%34050 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%34051 = load float, float* %34050
%34052 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%34053 = load float, float* %34052
%34054 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%34055 = load float, float* %34054
%34056 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%34057 = load float, float* %34056
%34058 = fmul float %34055, %34057
%34059 = fneg float %34058
%34060 = call float @llvm.fmuladd.f32(float %34051, float %34053, float %34059)
%34061 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %34060, float* %34061
%34062 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%34063 = load float, float* %34062
%34064 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%34065 = load float, float* %34064
%34066 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%34067 = load float, float* %34066
%34068 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%34069 = load float, float* %34068
%34070 = fmul float %34067, %34069
%34071 = fneg float %34070
%34072 = call float @llvm.fmuladd.f32(float %34063, float %34065, float %34071)
%34073 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %34072, float* %34073
%34074 = load float*, float** %12
%34075 = getelementptr inbounds float, float* %34074, i64 0
%34076 = load float, float* %34075
%34077 = load float*, float** %10
%34078 = getelementptr inbounds float, float* %34077, i64 0
%34079 = load float, float* %34078
%34080 = fsub float %34076, %34079
%34081 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %34080, float* %34081
%34082 = load float*, float** %12
%34083 = getelementptr inbounds float, float* %34082, i64 1
%34084 = load float, float* %34083
%34085 = load float*, float** %10
%34086 = getelementptr inbounds float, float* %34085, i64 1
%34087 = load float, float* %34086
%34088 = fsub float %34084, %34087
%34089 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %34088, float* %34089
%34090 = load float*, float** %12
%34091 = getelementptr inbounds float, float* %34090, i64 2
%34092 = load float, float* %34091
%34093 = load float*, float** %10
%34094 = getelementptr inbounds float, float* %34093, i64 2
%34095 = load float, float* %34094
%34096 = fsub float %34092, %34095
%34097 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %34096, float* %34097
%34098 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%34099 = load float, float* %34098
%34100 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%34101 = load float, float* %34100
%34102 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%34103 = load float, float* %34102
%34104 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%34105 = load float, float* %34104
%34106 = fmul float %34103, %34105
%34107 = call float @llvm.fmuladd.f32(float %34099, float %34101, float %34106)
%34108 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%34109 = load float, float* %34108
%34110 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%34111 = load float, float* %34110
%34112 = call float @llvm.fmuladd.f32(float %34109, float %34111, float %34107)
%34113 = fcmp ogt float %34112, 0.000000e+00
br i1 %34113, label %34114, label %34115
34114: ; preds = %33989
store i32 0, i32* %7
br label %37477
34115: ; preds = %33989
store i32 1, i32* %7
br label %37477
34116: ; preds = %33860
%34117 = load float, float* %19
%34118 = fcmp olt float %34117, 0.000000e+00
br i1 %34118, label %34119, label %34372
34119: ; preds = %34116
%34120 = load float*, float** %13
%34121 = getelementptr inbounds float, float* %34120, i64 0
%34122 = load float, float* %34121
%34123 = load float*, float** %9
%34124 = getelementptr inbounds float, float* %34123, i64 0
%34125 = load float, float* %34124
%34126 = fsub float %34122, %34125
%34127 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %34126, float* %34127
%34128 = load float*, float** %13
%34129 = getelementptr inbounds float, float* %34128, i64 1
%34130 = load float, float* %34129
%34131 = load float*, float** %9
%34132 = getelementptr inbounds float, float* %34131, i64 1
%34133 = load float, float* %34132
%34134 = fsub float %34130, %34133
%34135 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %34134, float* %34135
%34136 = load float*, float** %13
%34137 = getelementptr inbounds float, float* %34136, i64 2
%34138 = load float, float* %34137
%34139 = load float*, float** %9
%34140 = getelementptr inbounds float, float* %34139, i64 2
%34141 = load float, float* %34140
%34142 = fsub float %34138, %34141
%34143 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %34142, float* %34143
%34144 = load float*, float** %10
%34145 = getelementptr inbounds float, float* %34144, i64 0
%34146 = load float, float* %34145
%34147 = load float*, float** %9
%34148 = getelementptr inbounds float, float* %34147, i64 0
%34149 = load float, float* %34148
%34150 = fsub float %34146, %34149
%34151 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %34150, float* %34151
%34152 = load float*, float** %10
%34153 = getelementptr inbounds float, float* %34152, i64 1
%34154 = load float, float* %34153
%34155 = load float*, float** %9
%34156 = getelementptr inbounds float, float* %34155, i64 1
%34157 = load float, float* %34156
%34158 = fsub float %34154, %34157
%34159 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %34158, float* %34159
%34160 = load float*, float** %10
%34161 = getelementptr inbounds float, float* %34160, i64 2
%34162 = load float, float* %34161
%34163 = load float*, float** %9
%34164 = getelementptr inbounds float, float* %34163, i64 2
%34165 = load float, float* %34164
%34166 = fsub float %34162, %34165
%34167 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %34166, float* %34167
%34168 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%34169 = load float, float* %34168
%34170 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%34171 = load float, float* %34170
%34172 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%34173 = load float, float* %34172
%34174 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%34175 = load float, float* %34174
%34176 = fmul float %34173, %34175
%34177 = fneg float %34176
%34178 = call float @llvm.fmuladd.f32(float %34169, float %34171, float %34177)
%34179 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %34178, float* %34179
%34180 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%34181 = load float, float* %34180
%34182 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%34183 = load float, float* %34182
%34184 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%34185 = load float, float* %34184
%34186 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%34187 = load float, float* %34186
%34188 = fmul float %34185, %34187
%34189 = fneg float %34188
%34190 = call float @llvm.fmuladd.f32(float %34181, float %34183, float %34189)
%34191 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %34190, float* %34191
%34192 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%34193 = load float, float* %34192
%34194 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%34195 = load float, float* %34194
%34196 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%34197 = load float, float* %34196
%34198 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%34199 = load float, float* %34198
%34200 = fmul float %34197, %34199
%34201 = fneg float %34200
%34202 = call float @llvm.fmuladd.f32(float %34193, float %34195, float %34201)
%34203 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %34202, float* %34203
%34204 = load float*, float** %11
%34205 = getelementptr inbounds float, float* %34204, i64 0
%34206 = load float, float* %34205
%34207 = load float*, float** %9
%34208 = getelementptr inbounds float, float* %34207, i64 0
%34209 = load float, float* %34208
%34210 = fsub float %34206, %34209
%34211 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %34210, float* %34211
%34212 = load float*, float** %11
%34213 = getelementptr inbounds float, float* %34212, i64 1
%34214 = load float, float* %34213
%34215 = load float*, float** %9
%34216 = getelementptr inbounds float, float* %34215, i64 1
%34217 = load float, float* %34216
%34218 = fsub float %34214, %34217
%34219 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %34218, float* %34219
%34220 = load float*, float** %11
%34221 = getelementptr inbounds float, float* %34220, i64 2
%34222 = load float, float* %34221
%34223 = load float*, float** %9
%34224 = getelementptr inbounds float, float* %34223, i64 2
%34225 = load float, float* %34224
%34226 = fsub float %34222, %34225
%34227 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %34226, float* %34227
%34228 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%34229 = load float, float* %34228
%34230 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%34231 = load float, float* %34230
%34232 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%34233 = load float, float* %34232
%34234 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%34235 = load float, float* %34234
%34236 = fmul float %34233, %34235
%34237 = call float @llvm.fmuladd.f32(float %34229, float %34231, float %34236)
%34238 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%34239 = load float, float* %34238
%34240 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%34241 = load float, float* %34240
%34242 = call float @llvm.fmuladd.f32(float %34239, float %34241, float %34237)
%34243 = fcmp ogt float %34242, 0.000000e+00
br i1 %34243, label %34244, label %34245
34244: ; preds = %34119
store i32 0, i32* %7
br label %37477
34245: ; preds = %34119
%34246 = load float*, float** %13
%34247 = getelementptr inbounds float, float* %34246, i64 0
%34248 = load float, float* %34247
%34249 = load float*, float** %10
%34250 = getelementptr inbounds float, float* %34249, i64 0
%34251 = load float, float* %34250
%34252 = fsub float %34248, %34251
%34253 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %34252, float* %34253
%34254 = load float*, float** %13
%34255 = getelementptr inbounds float, float* %34254, i64 1
%34256 = load float, float* %34255
%34257 = load float*, float** %10
%34258 = getelementptr inbounds float, float* %34257, i64 1
%34259 = load float, float* %34258
%34260 = fsub float %34256, %34259
%34261 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %34260, float* %34261
%34262 = load float*, float** %13
%34263 = getelementptr inbounds float, float* %34262, i64 2
%34264 = load float, float* %34263
%34265 = load float*, float** %10
%34266 = getelementptr inbounds float, float* %34265, i64 2
%34267 = load float, float* %34266
%34268 = fsub float %34264, %34267
%34269 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %34268, float* %34269
%34270 = load float*, float** %8
%34271 = getelementptr inbounds float, float* %34270, i64 0
%34272 = load float, float* %34271
%34273 = load float*, float** %10
%34274 = getelementptr inbounds float, float* %34273, i64 0
%34275 = load float, float* %34274
%34276 = fsub float %34272, %34275
%34277 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %34276, float* %34277
%34278 = load float*, float** %8
%34279 = getelementptr inbounds float, float* %34278, i64 1
%34280 = load float, float* %34279
%34281 = load float*, float** %10
%34282 = getelementptr inbounds float, float* %34281, i64 1
%34283 = load float, float* %34282
%34284 = fsub float %34280, %34283
%34285 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %34284, float* %34285
%34286 = load float*, float** %8
%34287 = getelementptr inbounds float, float* %34286, i64 2
%34288 = load float, float* %34287
%34289 = load float*, float** %10
%34290 = getelementptr inbounds float, float* %34289, i64 2
%34291 = load float, float* %34290
%34292 = fsub float %34288, %34291
%34293 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %34292, float* %34293
%34294 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%34295 = load float, float* %34294
%34296 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%34297 = load float, float* %34296
%34298 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%34299 = load float, float* %34298
%34300 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%34301 = load float, float* %34300
%34302 = fmul float %34299, %34301
%34303 = fneg float %34302
%34304 = call float @llvm.fmuladd.f32(float %34295, float %34297, float %34303)
%34305 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %34304, float* %34305
%34306 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%34307 = load float, float* %34306
%34308 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%34309 = load float, float* %34308
%34310 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%34311 = load float, float* %34310
%34312 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%34313 = load float, float* %34312
%34314 = fmul float %34311, %34313
%34315 = fneg float %34314
%34316 = call float @llvm.fmuladd.f32(float %34307, float %34309, float %34315)
%34317 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %34316, float* %34317
%34318 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%34319 = load float, float* %34318
%34320 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%34321 = load float, float* %34320
%34322 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%34323 = load float, float* %34322
%34324 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%34325 = load float, float* %34324
%34326 = fmul float %34323, %34325
%34327 = fneg float %34326
%34328 = call float @llvm.fmuladd.f32(float %34319, float %34321, float %34327)
%34329 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %34328, float* %34329
%34330 = load float*, float** %12
%34331 = getelementptr inbounds float, float* %34330, i64 0
%34332 = load float, float* %34331
%34333 = load float*, float** %10
%34334 = getelementptr inbounds float, float* %34333, i64 0
%34335 = load float, float* %34334
%34336 = fsub float %34332, %34335
%34337 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %34336, float* %34337
%34338 = load float*, float** %12
%34339 = getelementptr inbounds float, float* %34338, i64 1
%34340 = load float, float* %34339
%34341 = load float*, float** %10
%34342 = getelementptr inbounds float, float* %34341, i64 1
%34343 = load float, float* %34342
%34344 = fsub float %34340, %34343
%34345 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %34344, float* %34345
%34346 = load float*, float** %12
%34347 = getelementptr inbounds float, float* %34346, i64 2
%34348 = load float, float* %34347
%34349 = load float*, float** %10
%34350 = getelementptr inbounds float, float* %34349, i64 2
%34351 = load float, float* %34350
%34352 = fsub float %34348, %34351
%34353 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %34352, float* %34353
%34354 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%34355 = load float, float* %34354
%34356 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%34357 = load float, float* %34356
%34358 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%34359 = load float, float* %34358
%34360 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%34361 = load float, float* %34360
%34362 = fmul float %34359, %34361
%34363 = call float @llvm.fmuladd.f32(float %34355, float %34357, float %34362)
%34364 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%34365 = load float, float* %34364
%34366 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%34367 = load float, float* %34366
%34368 = call float @llvm.fmuladd.f32(float %34365, float %34367, float %34363)
%34369 = fcmp ogt float %34368, 0.000000e+00
br i1 %34369, label %34370, label %34371
34370: ; preds = %34245
store i32 0, i32* %7
br label %37477
34371: ; preds = %34245
store i32 1, i32* %7
br label %37477
34372: ; preds = %34116
%34373 = load float*, float** %10
%34374 = load float*, float** %8
%34375 = load float*, float** %9
%34376 = load float*, float** %11
%34377 = load float*, float** %12
%34378 = load float*, float** %13
%34379 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%34380 = getelementptr inbounds [3 x float], [3 x float]* %23, i64 0, i64 0
%34381 = call i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...) bitcast (i32 (...)* @coplanar_tri_tri3d to i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...)*)(float* %34373, float* %34374, float* %34375, float* %34376, float* %34377, float* %34378, float* %34379, float* %34380)
store i32 %34381, i32* %7
br label %37477
34382: ; preds = %31297
%34383 = load float, float* %16
%34384 = fcmp olt float %34383, 0.000000e+00
br i1 %34384, label %34385, label %37467
34385: ; preds = %34382
%34386 = load float, float* %17
%34387 = fcmp ogt float %34386, 0.000000e+00
br i1 %34387, label %34388, label %35153
34388: ; preds = %34385
%34389 = load float, float* %19
%34390 = fcmp ogt float %34389, 0.000000e+00
br i1 %34390, label %34391, label %34644
34391: ; preds = %34388
%34392 = load float*, float** %12
%34393 = getelementptr inbounds float, float* %34392, i64 0
%34394 = load float, float* %34393
%34395 = load float*, float** %9
%34396 = getelementptr inbounds float, float* %34395, i64 0
%34397 = load float, float* %34396
%34398 = fsub float %34394, %34397
%34399 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %34398, float* %34399
%34400 = load float*, float** %12
%34401 = getelementptr inbounds float, float* %34400, i64 1
%34402 = load float, float* %34401
%34403 = load float*, float** %9
%34404 = getelementptr inbounds float, float* %34403, i64 1
%34405 = load float, float* %34404
%34406 = fsub float %34402, %34405
%34407 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %34406, float* %34407
%34408 = load float*, float** %12
%34409 = getelementptr inbounds float, float* %34408, i64 2
%34410 = load float, float* %34409
%34411 = load float*, float** %9
%34412 = getelementptr inbounds float, float* %34411, i64 2
%34413 = load float, float* %34412
%34414 = fsub float %34410, %34413
%34415 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %34414, float* %34415
%34416 = load float*, float** %10
%34417 = getelementptr inbounds float, float* %34416, i64 0
%34418 = load float, float* %34417
%34419 = load float*, float** %9
%34420 = getelementptr inbounds float, float* %34419, i64 0
%34421 = load float, float* %34420
%34422 = fsub float %34418, %34421
%34423 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %34422, float* %34423
%34424 = load float*, float** %10
%34425 = getelementptr inbounds float, float* %34424, i64 1
%34426 = load float, float* %34425
%34427 = load float*, float** %9
%34428 = getelementptr inbounds float, float* %34427, i64 1
%34429 = load float, float* %34428
%34430 = fsub float %34426, %34429
%34431 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %34430, float* %34431
%34432 = load float*, float** %10
%34433 = getelementptr inbounds float, float* %34432, i64 2
%34434 = load float, float* %34433
%34435 = load float*, float** %9
%34436 = getelementptr inbounds float, float* %34435, i64 2
%34437 = load float, float* %34436
%34438 = fsub float %34434, %34437
%34439 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %34438, float* %34439
%34440 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%34441 = load float, float* %34440
%34442 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%34443 = load float, float* %34442
%34444 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%34445 = load float, float* %34444
%34446 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%34447 = load float, float* %34446
%34448 = fmul float %34445, %34447
%34449 = fneg float %34448
%34450 = call float @llvm.fmuladd.f32(float %34441, float %34443, float %34449)
%34451 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %34450, float* %34451
%34452 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%34453 = load float, float* %34452
%34454 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%34455 = load float, float* %34454
%34456 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%34457 = load float, float* %34456
%34458 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%34459 = load float, float* %34458
%34460 = fmul float %34457, %34459
%34461 = fneg float %34460
%34462 = call float @llvm.fmuladd.f32(float %34453, float %34455, float %34461)
%34463 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %34462, float* %34463
%34464 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%34465 = load float, float* %34464
%34466 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%34467 = load float, float* %34466
%34468 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%34469 = load float, float* %34468
%34470 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%34471 = load float, float* %34470
%34472 = fmul float %34469, %34471
%34473 = fneg float %34472
%34474 = call float @llvm.fmuladd.f32(float %34465, float %34467, float %34473)
%34475 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %34474, float* %34475
%34476 = load float*, float** %11
%34477 = getelementptr inbounds float, float* %34476, i64 0
%34478 = load float, float* %34477
%34479 = load float*, float** %9
%34480 = getelementptr inbounds float, float* %34479, i64 0
%34481 = load float, float* %34480
%34482 = fsub float %34478, %34481
%34483 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %34482, float* %34483
%34484 = load float*, float** %11
%34485 = getelementptr inbounds float, float* %34484, i64 1
%34486 = load float, float* %34485
%34487 = load float*, float** %9
%34488 = getelementptr inbounds float, float* %34487, i64 1
%34489 = load float, float* %34488
%34490 = fsub float %34486, %34489
%34491 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %34490, float* %34491
%34492 = load float*, float** %11
%34493 = getelementptr inbounds float, float* %34492, i64 2
%34494 = load float, float* %34493
%34495 = load float*, float** %9
%34496 = getelementptr inbounds float, float* %34495, i64 2
%34497 = load float, float* %34496
%34498 = fsub float %34494, %34497
%34499 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %34498, float* %34499
%34500 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%34501 = load float, float* %34500
%34502 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%34503 = load float, float* %34502
%34504 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%34505 = load float, float* %34504
%34506 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%34507 = load float, float* %34506
%34508 = fmul float %34505, %34507
%34509 = call float @llvm.fmuladd.f32(float %34501, float %34503, float %34508)
%34510 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%34511 = load float, float* %34510
%34512 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%34513 = load float, float* %34512
%34514 = call float @llvm.fmuladd.f32(float %34511, float %34513, float %34509)
%34515 = fcmp ogt float %34514, 0.000000e+00
br i1 %34515, label %34516, label %34517
34516: ; preds = %34391
store i32 0, i32* %7
br label %37477
34517: ; preds = %34391
%34518 = load float*, float** %12
%34519 = getelementptr inbounds float, float* %34518, i64 0
%34520 = load float, float* %34519
%34521 = load float*, float** %10
%34522 = getelementptr inbounds float, float* %34521, i64 0
%34523 = load float, float* %34522
%34524 = fsub float %34520, %34523
%34525 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %34524, float* %34525
%34526 = load float*, float** %12
%34527 = getelementptr inbounds float, float* %34526, i64 1
%34528 = load float, float* %34527
%34529 = load float*, float** %10
%34530 = getelementptr inbounds float, float* %34529, i64 1
%34531 = load float, float* %34530
%34532 = fsub float %34528, %34531
%34533 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %34532, float* %34533
%34534 = load float*, float** %12
%34535 = getelementptr inbounds float, float* %34534, i64 2
%34536 = load float, float* %34535
%34537 = load float*, float** %10
%34538 = getelementptr inbounds float, float* %34537, i64 2
%34539 = load float, float* %34538
%34540 = fsub float %34536, %34539
%34541 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %34540, float* %34541
%34542 = load float*, float** %8
%34543 = getelementptr inbounds float, float* %34542, i64 0
%34544 = load float, float* %34543
%34545 = load float*, float** %10
%34546 = getelementptr inbounds float, float* %34545, i64 0
%34547 = load float, float* %34546
%34548 = fsub float %34544, %34547
%34549 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %34548, float* %34549
%34550 = load float*, float** %8
%34551 = getelementptr inbounds float, float* %34550, i64 1
%34552 = load float, float* %34551
%34553 = load float*, float** %10
%34554 = getelementptr inbounds float, float* %34553, i64 1
%34555 = load float, float* %34554
%34556 = fsub float %34552, %34555
%34557 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %34556, float* %34557
%34558 = load float*, float** %8
%34559 = getelementptr inbounds float, float* %34558, i64 2
%34560 = load float, float* %34559
%34561 = load float*, float** %10
%34562 = getelementptr inbounds float, float* %34561, i64 2
%34563 = load float, float* %34562
%34564 = fsub float %34560, %34563
%34565 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %34564, float* %34565
%34566 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%34567 = load float, float* %34566
%34568 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%34569 = load float, float* %34568
%34570 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%34571 = load float, float* %34570
%34572 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%34573 = load float, float* %34572
%34574 = fmul float %34571, %34573
%34575 = fneg float %34574
%34576 = call float @llvm.fmuladd.f32(float %34567, float %34569, float %34575)
%34577 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %34576, float* %34577
%34578 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%34579 = load float, float* %34578
%34580 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%34581 = load float, float* %34580
%34582 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%34583 = load float, float* %34582
%34584 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%34585 = load float, float* %34584
%34586 = fmul float %34583, %34585
%34587 = fneg float %34586
%34588 = call float @llvm.fmuladd.f32(float %34579, float %34581, float %34587)
%34589 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %34588, float* %34589
%34590 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%34591 = load float, float* %34590
%34592 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%34593 = load float, float* %34592
%34594 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%34595 = load float, float* %34594
%34596 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%34597 = load float, float* %34596
%34598 = fmul float %34595, %34597
%34599 = fneg float %34598
%34600 = call float @llvm.fmuladd.f32(float %34591, float %34593, float %34599)
%34601 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %34600, float* %34601
%34602 = load float*, float** %13
%34603 = getelementptr inbounds float, float* %34602, i64 0
%34604 = load float, float* %34603
%34605 = load float*, float** %10
%34606 = getelementptr inbounds float, float* %34605, i64 0
%34607 = load float, float* %34606
%34608 = fsub float %34604, %34607
%34609 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %34608, float* %34609
%34610 = load float*, float** %13
%34611 = getelementptr inbounds float, float* %34610, i64 1
%34612 = load float, float* %34611
%34613 = load float*, float** %10
%34614 = getelementptr inbounds float, float* %34613, i64 1
%34615 = load float, float* %34614
%34616 = fsub float %34612, %34615
%34617 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %34616, float* %34617
%34618 = load float*, float** %13
%34619 = getelementptr inbounds float, float* %34618, i64 2
%34620 = load float, float* %34619
%34621 = load float*, float** %10
%34622 = getelementptr inbounds float, float* %34621, i64 2
%34623 = load float, float* %34622
%34624 = fsub float %34620, %34623
%34625 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %34624, float* %34625
%34626 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%34627 = load float, float* %34626
%34628 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%34629 = load float, float* %34628
%34630 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%34631 = load float, float* %34630
%34632 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%34633 = load float, float* %34632
%34634 = fmul float %34631, %34633
%34635 = call float @llvm.fmuladd.f32(float %34627, float %34629, float %34634)
%34636 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%34637 = load float, float* %34636
%34638 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%34639 = load float, float* %34638
%34640 = call float @llvm.fmuladd.f32(float %34637, float %34639, float %34635)
%34641 = fcmp ogt float %34640, 0.000000e+00
br i1 %34641, label %34642, label %34643
34642: ; preds = %34517
store i32 0, i32* %7
br label %37477
34643: ; preds = %34517
store i32 1, i32* %7
br label %37477
34644: ; preds = %34388
%34645 = load float, float* %18
%34646 = fcmp ogt float %34645, 0.000000e+00
br i1 %34646, label %34647, label %34900
34647: ; preds = %34644
%34648 = load float*, float** %13
%34649 = getelementptr inbounds float, float* %34648, i64 0
%34650 = load float, float* %34649
%34651 = load float*, float** %9
%34652 = getelementptr inbounds float, float* %34651, i64 0
%34653 = load float, float* %34652
%34654 = fsub float %34650, %34653
%34655 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %34654, float* %34655
%34656 = load float*, float** %13
%34657 = getelementptr inbounds float, float* %34656, i64 1
%34658 = load float, float* %34657
%34659 = load float*, float** %9
%34660 = getelementptr inbounds float, float* %34659, i64 1
%34661 = load float, float* %34660
%34662 = fsub float %34658, %34661
%34663 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %34662, float* %34663
%34664 = load float*, float** %13
%34665 = getelementptr inbounds float, float* %34664, i64 2
%34666 = load float, float* %34665
%34667 = load float*, float** %9
%34668 = getelementptr inbounds float, float* %34667, i64 2
%34669 = load float, float* %34668
%34670 = fsub float %34666, %34669
%34671 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %34670, float* %34671
%34672 = load float*, float** %10
%34673 = getelementptr inbounds float, float* %34672, i64 0
%34674 = load float, float* %34673
%34675 = load float*, float** %9
%34676 = getelementptr inbounds float, float* %34675, i64 0
%34677 = load float, float* %34676
%34678 = fsub float %34674, %34677
%34679 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %34678, float* %34679
%34680 = load float*, float** %10
%34681 = getelementptr inbounds float, float* %34680, i64 1
%34682 = load float, float* %34681
%34683 = load float*, float** %9
%34684 = getelementptr inbounds float, float* %34683, i64 1
%34685 = load float, float* %34684
%34686 = fsub float %34682, %34685
%34687 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %34686, float* %34687
%34688 = load float*, float** %10
%34689 = getelementptr inbounds float, float* %34688, i64 2
%34690 = load float, float* %34689
%34691 = load float*, float** %9
%34692 = getelementptr inbounds float, float* %34691, i64 2
%34693 = load float, float* %34692
%34694 = fsub float %34690, %34693
%34695 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %34694, float* %34695
%34696 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%34697 = load float, float* %34696
%34698 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%34699 = load float, float* %34698
%34700 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%34701 = load float, float* %34700
%34702 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%34703 = load float, float* %34702
%34704 = fmul float %34701, %34703
%34705 = fneg float %34704
%34706 = call float @llvm.fmuladd.f32(float %34697, float %34699, float %34705)
%34707 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %34706, float* %34707
%34708 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%34709 = load float, float* %34708
%34710 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%34711 = load float, float* %34710
%34712 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%34713 = load float, float* %34712
%34714 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%34715 = load float, float* %34714
%34716 = fmul float %34713, %34715
%34717 = fneg float %34716
%34718 = call float @llvm.fmuladd.f32(float %34709, float %34711, float %34717)
%34719 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %34718, float* %34719
%34720 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%34721 = load float, float* %34720
%34722 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%34723 = load float, float* %34722
%34724 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%34725 = load float, float* %34724
%34726 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%34727 = load float, float* %34726
%34728 = fmul float %34725, %34727
%34729 = fneg float %34728
%34730 = call float @llvm.fmuladd.f32(float %34721, float %34723, float %34729)
%34731 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %34730, float* %34731
%34732 = load float*, float** %12
%34733 = getelementptr inbounds float, float* %34732, i64 0
%34734 = load float, float* %34733
%34735 = load float*, float** %9
%34736 = getelementptr inbounds float, float* %34735, i64 0
%34737 = load float, float* %34736
%34738 = fsub float %34734, %34737
%34739 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %34738, float* %34739
%34740 = load float*, float** %12
%34741 = getelementptr inbounds float, float* %34740, i64 1
%34742 = load float, float* %34741
%34743 = load float*, float** %9
%34744 = getelementptr inbounds float, float* %34743, i64 1
%34745 = load float, float* %34744
%34746 = fsub float %34742, %34745
%34747 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %34746, float* %34747
%34748 = load float*, float** %12
%34749 = getelementptr inbounds float, float* %34748, i64 2
%34750 = load float, float* %34749
%34751 = load float*, float** %9
%34752 = getelementptr inbounds float, float* %34751, i64 2
%34753 = load float, float* %34752
%34754 = fsub float %34750, %34753
%34755 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %34754, float* %34755
%34756 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%34757 = load float, float* %34756
%34758 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%34759 = load float, float* %34758
%34760 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%34761 = load float, float* %34760
%34762 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%34763 = load float, float* %34762
%34764 = fmul float %34761, %34763
%34765 = call float @llvm.fmuladd.f32(float %34757, float %34759, float %34764)
%34766 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%34767 = load float, float* %34766
%34768 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%34769 = load float, float* %34768
%34770 = call float @llvm.fmuladd.f32(float %34767, float %34769, float %34765)
%34771 = fcmp ogt float %34770, 0.000000e+00
br i1 %34771, label %34772, label %34773
34772: ; preds = %34647
store i32 0, i32* %7
br label %37477
34773: ; preds = %34647
%34774 = load float*, float** %13
%34775 = getelementptr inbounds float, float* %34774, i64 0
%34776 = load float, float* %34775
%34777 = load float*, float** %10
%34778 = getelementptr inbounds float, float* %34777, i64 0
%34779 = load float, float* %34778
%34780 = fsub float %34776, %34779
%34781 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %34780, float* %34781
%34782 = load float*, float** %13
%34783 = getelementptr inbounds float, float* %34782, i64 1
%34784 = load float, float* %34783
%34785 = load float*, float** %10
%34786 = getelementptr inbounds float, float* %34785, i64 1
%34787 = load float, float* %34786
%34788 = fsub float %34784, %34787
%34789 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %34788, float* %34789
%34790 = load float*, float** %13
%34791 = getelementptr inbounds float, float* %34790, i64 2
%34792 = load float, float* %34791
%34793 = load float*, float** %10
%34794 = getelementptr inbounds float, float* %34793, i64 2
%34795 = load float, float* %34794
%34796 = fsub float %34792, %34795
%34797 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %34796, float* %34797
%34798 = load float*, float** %8
%34799 = getelementptr inbounds float, float* %34798, i64 0
%34800 = load float, float* %34799
%34801 = load float*, float** %10
%34802 = getelementptr inbounds float, float* %34801, i64 0
%34803 = load float, float* %34802
%34804 = fsub float %34800, %34803
%34805 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %34804, float* %34805
%34806 = load float*, float** %8
%34807 = getelementptr inbounds float, float* %34806, i64 1
%34808 = load float, float* %34807
%34809 = load float*, float** %10
%34810 = getelementptr inbounds float, float* %34809, i64 1
%34811 = load float, float* %34810
%34812 = fsub float %34808, %34811
%34813 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %34812, float* %34813
%34814 = load float*, float** %8
%34815 = getelementptr inbounds float, float* %34814, i64 2
%34816 = load float, float* %34815
%34817 = load float*, float** %10
%34818 = getelementptr inbounds float, float* %34817, i64 2
%34819 = load float, float* %34818
%34820 = fsub float %34816, %34819
%34821 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %34820, float* %34821
%34822 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%34823 = load float, float* %34822
%34824 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%34825 = load float, float* %34824
%34826 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%34827 = load float, float* %34826
%34828 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%34829 = load float, float* %34828
%34830 = fmul float %34827, %34829
%34831 = fneg float %34830
%34832 = call float @llvm.fmuladd.f32(float %34823, float %34825, float %34831)
%34833 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %34832, float* %34833
%34834 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%34835 = load float, float* %34834
%34836 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%34837 = load float, float* %34836
%34838 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%34839 = load float, float* %34838
%34840 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%34841 = load float, float* %34840
%34842 = fmul float %34839, %34841
%34843 = fneg float %34842
%34844 = call float @llvm.fmuladd.f32(float %34835, float %34837, float %34843)
%34845 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %34844, float* %34845
%34846 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%34847 = load float, float* %34846
%34848 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%34849 = load float, float* %34848
%34850 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%34851 = load float, float* %34850
%34852 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%34853 = load float, float* %34852
%34854 = fmul float %34851, %34853
%34855 = fneg float %34854
%34856 = call float @llvm.fmuladd.f32(float %34847, float %34849, float %34855)
%34857 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %34856, float* %34857
%34858 = load float*, float** %11
%34859 = getelementptr inbounds float, float* %34858, i64 0
%34860 = load float, float* %34859
%34861 = load float*, float** %10
%34862 = getelementptr inbounds float, float* %34861, i64 0
%34863 = load float, float* %34862
%34864 = fsub float %34860, %34863
%34865 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %34864, float* %34865
%34866 = load float*, float** %11
%34867 = getelementptr inbounds float, float* %34866, i64 1
%34868 = load float, float* %34867
%34869 = load float*, float** %10
%34870 = getelementptr inbounds float, float* %34869, i64 1
%34871 = load float, float* %34870
%34872 = fsub float %34868, %34871
%34873 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %34872, float* %34873
%34874 = load float*, float** %11
%34875 = getelementptr inbounds float, float* %34874, i64 2
%34876 = load float, float* %34875
%34877 = load float*, float** %10
%34878 = getelementptr inbounds float, float* %34877, i64 2
%34879 = load float, float* %34878
%34880 = fsub float %34876, %34879
%34881 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %34880, float* %34881
%34882 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%34883 = load float, float* %34882
%34884 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%34885 = load float, float* %34884
%34886 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%34887 = load float, float* %34886
%34888 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%34889 = load float, float* %34888
%34890 = fmul float %34887, %34889
%34891 = call float @llvm.fmuladd.f32(float %34883, float %34885, float %34890)
%34892 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%34893 = load float, float* %34892
%34894 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%34895 = load float, float* %34894
%34896 = call float @llvm.fmuladd.f32(float %34893, float %34895, float %34891)
%34897 = fcmp ogt float %34896, 0.000000e+00
br i1 %34897, label %34898, label %34899
34898: ; preds = %34773
store i32 0, i32* %7
br label %37477
34899: ; preds = %34773
store i32 1, i32* %7
br label %37477
34900: ; preds = %34644
%34901 = load float*, float** %11
%34902 = getelementptr inbounds float, float* %34901, i64 0
%34903 = load float, float* %34902
%34904 = load float*, float** %8
%34905 = getelementptr inbounds float, float* %34904, i64 0
%34906 = load float, float* %34905
%34907 = fsub float %34903, %34906
%34908 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %34907, float* %34908
%34909 = load float*, float** %11
%34910 = getelementptr inbounds float, float* %34909, i64 1
%34911 = load float, float* %34910
%34912 = load float*, float** %8
%34913 = getelementptr inbounds float, float* %34912, i64 1
%34914 = load float, float* %34913
%34915 = fsub float %34911, %34914
%34916 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %34915, float* %34916
%34917 = load float*, float** %11
%34918 = getelementptr inbounds float, float* %34917, i64 2
%34919 = load float, float* %34918
%34920 = load float*, float** %8
%34921 = getelementptr inbounds float, float* %34920, i64 2
%34922 = load float, float* %34921
%34923 = fsub float %34919, %34922
%34924 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %34923, float* %34924
%34925 = load float*, float** %10
%34926 = getelementptr inbounds float, float* %34925, i64 0
%34927 = load float, float* %34926
%34928 = load float*, float** %8
%34929 = getelementptr inbounds float, float* %34928, i64 0
%34930 = load float, float* %34929
%34931 = fsub float %34927, %34930
%34932 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %34931, float* %34932
%34933 = load float*, float** %10
%34934 = getelementptr inbounds float, float* %34933, i64 1
%34935 = load float, float* %34934
%34936 = load float*, float** %8
%34937 = getelementptr inbounds float, float* %34936, i64 1
%34938 = load float, float* %34937
%34939 = fsub float %34935, %34938
%34940 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %34939, float* %34940
%34941 = load float*, float** %10
%34942 = getelementptr inbounds float, float* %34941, i64 2
%34943 = load float, float* %34942
%34944 = load float*, float** %8
%34945 = getelementptr inbounds float, float* %34944, i64 2
%34946 = load float, float* %34945
%34947 = fsub float %34943, %34946
%34948 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %34947, float* %34948
%34949 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%34950 = load float, float* %34949
%34951 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%34952 = load float, float* %34951
%34953 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%34954 = load float, float* %34953
%34955 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%34956 = load float, float* %34955
%34957 = fmul float %34954, %34956
%34958 = fneg float %34957
%34959 = call float @llvm.fmuladd.f32(float %34950, float %34952, float %34958)
%34960 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %34959, float* %34960
%34961 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%34962 = load float, float* %34961
%34963 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%34964 = load float, float* %34963
%34965 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%34966 = load float, float* %34965
%34967 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%34968 = load float, float* %34967
%34969 = fmul float %34966, %34968
%34970 = fneg float %34969
%34971 = call float @llvm.fmuladd.f32(float %34962, float %34964, float %34970)
%34972 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %34971, float* %34972
%34973 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%34974 = load float, float* %34973
%34975 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%34976 = load float, float* %34975
%34977 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%34978 = load float, float* %34977
%34979 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%34980 = load float, float* %34979
%34981 = fmul float %34978, %34980
%34982 = fneg float %34981
%34983 = call float @llvm.fmuladd.f32(float %34974, float %34976, float %34982)
%34984 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %34983, float* %34984
%34985 = load float*, float** %13
%34986 = getelementptr inbounds float, float* %34985, i64 0
%34987 = load float, float* %34986
%34988 = load float*, float** %8
%34989 = getelementptr inbounds float, float* %34988, i64 0
%34990 = load float, float* %34989
%34991 = fsub float %34987, %34990
%34992 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %34991, float* %34992
%34993 = load float*, float** %13
%34994 = getelementptr inbounds float, float* %34993, i64 1
%34995 = load float, float* %34994
%34996 = load float*, float** %8
%34997 = getelementptr inbounds float, float* %34996, i64 1
%34998 = load float, float* %34997
%34999 = fsub float %34995, %34998
%35000 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %34999, float* %35000
%35001 = load float*, float** %13
%35002 = getelementptr inbounds float, float* %35001, i64 2
%35003 = load float, float* %35002
%35004 = load float*, float** %8
%35005 = getelementptr inbounds float, float* %35004, i64 2
%35006 = load float, float* %35005
%35007 = fsub float %35003, %35006
%35008 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %35007, float* %35008
%35009 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%35010 = load float, float* %35009
%35011 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%35012 = load float, float* %35011
%35013 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%35014 = load float, float* %35013
%35015 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%35016 = load float, float* %35015
%35017 = fmul float %35014, %35016
%35018 = call float @llvm.fmuladd.f32(float %35010, float %35012, float %35017)
%35019 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%35020 = load float, float* %35019
%35021 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%35022 = load float, float* %35021
%35023 = call float @llvm.fmuladd.f32(float %35020, float %35022, float %35018)
%35024 = fcmp ogt float %35023, 0.000000e+00
br i1 %35024, label %35025, label %35026
35025: ; preds = %34900
store i32 0, i32* %7
br label %37477
35026: ; preds = %34900
%35027 = load float*, float** %11
%35028 = getelementptr inbounds float, float* %35027, i64 0
%35029 = load float, float* %35028
%35030 = load float*, float** %10
%35031 = getelementptr inbounds float, float* %35030, i64 0
%35032 = load float, float* %35031
%35033 = fsub float %35029, %35032
%35034 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %35033, float* %35034
%35035 = load float*, float** %11
%35036 = getelementptr inbounds float, float* %35035, i64 1
%35037 = load float, float* %35036
%35038 = load float*, float** %10
%35039 = getelementptr inbounds float, float* %35038, i64 1
%35040 = load float, float* %35039
%35041 = fsub float %35037, %35040
%35042 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %35041, float* %35042
%35043 = load float*, float** %11
%35044 = getelementptr inbounds float, float* %35043, i64 2
%35045 = load float, float* %35044
%35046 = load float*, float** %10
%35047 = getelementptr inbounds float, float* %35046, i64 2
%35048 = load float, float* %35047
%35049 = fsub float %35045, %35048
%35050 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %35049, float* %35050
%35051 = load float*, float** %9
%35052 = getelementptr inbounds float, float* %35051, i64 0
%35053 = load float, float* %35052
%35054 = load float*, float** %10
%35055 = getelementptr inbounds float, float* %35054, i64 0
%35056 = load float, float* %35055
%35057 = fsub float %35053, %35056
%35058 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %35057, float* %35058
%35059 = load float*, float** %9
%35060 = getelementptr inbounds float, float* %35059, i64 1
%35061 = load float, float* %35060
%35062 = load float*, float** %10
%35063 = getelementptr inbounds float, float* %35062, i64 1
%35064 = load float, float* %35063
%35065 = fsub float %35061, %35064
%35066 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %35065, float* %35066
%35067 = load float*, float** %9
%35068 = getelementptr inbounds float, float* %35067, i64 2
%35069 = load float, float* %35068
%35070 = load float*, float** %10
%35071 = getelementptr inbounds float, float* %35070, i64 2
%35072 = load float, float* %35071
%35073 = fsub float %35069, %35072
%35074 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %35073, float* %35074
%35075 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%35076 = load float, float* %35075
%35077 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%35078 = load float, float* %35077
%35079 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%35080 = load float, float* %35079
%35081 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%35082 = load float, float* %35081
%35083 = fmul float %35080, %35082
%35084 = fneg float %35083
%35085 = call float @llvm.fmuladd.f32(float %35076, float %35078, float %35084)
%35086 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %35085, float* %35086
%35087 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%35088 = load float, float* %35087
%35089 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%35090 = load float, float* %35089
%35091 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%35092 = load float, float* %35091
%35093 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%35094 = load float, float* %35093
%35095 = fmul float %35092, %35094
%35096 = fneg float %35095
%35097 = call float @llvm.fmuladd.f32(float %35088, float %35090, float %35096)
%35098 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %35097, float* %35098
%35099 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%35100 = load float, float* %35099
%35101 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%35102 = load float, float* %35101
%35103 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%35104 = load float, float* %35103
%35105 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%35106 = load float, float* %35105
%35107 = fmul float %35104, %35106
%35108 = fneg float %35107
%35109 = call float @llvm.fmuladd.f32(float %35100, float %35102, float %35108)
%35110 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %35109, float* %35110
%35111 = load float*, float** %12
%35112 = getelementptr inbounds float, float* %35111, i64 0
%35113 = load float, float* %35112
%35114 = load float*, float** %10
%35115 = getelementptr inbounds float, float* %35114, i64 0
%35116 = load float, float* %35115
%35117 = fsub float %35113, %35116
%35118 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %35117, float* %35118
%35119 = load float*, float** %12
%35120 = getelementptr inbounds float, float* %35119, i64 1
%35121 = load float, float* %35120
%35122 = load float*, float** %10
%35123 = getelementptr inbounds float, float* %35122, i64 1
%35124 = load float, float* %35123
%35125 = fsub float %35121, %35124
%35126 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %35125, float* %35126
%35127 = load float*, float** %12
%35128 = getelementptr inbounds float, float* %35127, i64 2
%35129 = load float, float* %35128
%35130 = load float*, float** %10
%35131 = getelementptr inbounds float, float* %35130, i64 2
%35132 = load float, float* %35131
%35133 = fsub float %35129, %35132
%35134 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %35133, float* %35134
%35135 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%35136 = load float, float* %35135
%35137 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%35138 = load float, float* %35137
%35139 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%35140 = load float, float* %35139
%35141 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%35142 = load float, float* %35141
%35143 = fmul float %35140, %35142
%35144 = call float @llvm.fmuladd.f32(float %35136, float %35138, float %35143)
%35145 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%35146 = load float, float* %35145
%35147 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%35148 = load float, float* %35147
%35149 = call float @llvm.fmuladd.f32(float %35146, float %35148, float %35144)
%35150 = fcmp ogt float %35149, 0.000000e+00
br i1 %35150, label %35151, label %35152
35151: ; preds = %35026
store i32 0, i32* %7
br label %37477
35152: ; preds = %35026
store i32 1, i32* %7
br label %37477
35153: ; preds = %34385
%35154 = load float, float* %17
%35155 = fcmp olt float %35154, 0.000000e+00
br i1 %35155, label %35156, label %35921
35156: ; preds = %35153
%35157 = load float, float* %19
%35158 = fcmp olt float %35157, 0.000000e+00
br i1 %35158, label %35159, label %35412
35159: ; preds = %35156
%35160 = load float*, float** %12
%35161 = getelementptr inbounds float, float* %35160, i64 0
%35162 = load float, float* %35161
%35163 = load float*, float** %8
%35164 = getelementptr inbounds float, float* %35163, i64 0
%35165 = load float, float* %35164
%35166 = fsub float %35162, %35165
%35167 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %35166, float* %35167
%35168 = load float*, float** %12
%35169 = getelementptr inbounds float, float* %35168, i64 1
%35170 = load float, float* %35169
%35171 = load float*, float** %8
%35172 = getelementptr inbounds float, float* %35171, i64 1
%35173 = load float, float* %35172
%35174 = fsub float %35170, %35173
%35175 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %35174, float* %35175
%35176 = load float*, float** %12
%35177 = getelementptr inbounds float, float* %35176, i64 2
%35178 = load float, float* %35177
%35179 = load float*, float** %8
%35180 = getelementptr inbounds float, float* %35179, i64 2
%35181 = load float, float* %35180
%35182 = fsub float %35178, %35181
%35183 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %35182, float* %35183
%35184 = load float*, float** %10
%35185 = getelementptr inbounds float, float* %35184, i64 0
%35186 = load float, float* %35185
%35187 = load float*, float** %8
%35188 = getelementptr inbounds float, float* %35187, i64 0
%35189 = load float, float* %35188
%35190 = fsub float %35186, %35189
%35191 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %35190, float* %35191
%35192 = load float*, float** %10
%35193 = getelementptr inbounds float, float* %35192, i64 1
%35194 = load float, float* %35193
%35195 = load float*, float** %8
%35196 = getelementptr inbounds float, float* %35195, i64 1
%35197 = load float, float* %35196
%35198 = fsub float %35194, %35197
%35199 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %35198, float* %35199
%35200 = load float*, float** %10
%35201 = getelementptr inbounds float, float* %35200, i64 2
%35202 = load float, float* %35201
%35203 = load float*, float** %8
%35204 = getelementptr inbounds float, float* %35203, i64 2
%35205 = load float, float* %35204
%35206 = fsub float %35202, %35205
%35207 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %35206, float* %35207
%35208 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%35209 = load float, float* %35208
%35210 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%35211 = load float, float* %35210
%35212 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%35213 = load float, float* %35212
%35214 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%35215 = load float, float* %35214
%35216 = fmul float %35213, %35215
%35217 = fneg float %35216
%35218 = call float @llvm.fmuladd.f32(float %35209, float %35211, float %35217)
%35219 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %35218, float* %35219
%35220 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%35221 = load float, float* %35220
%35222 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%35223 = load float, float* %35222
%35224 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%35225 = load float, float* %35224
%35226 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%35227 = load float, float* %35226
%35228 = fmul float %35225, %35227
%35229 = fneg float %35228
%35230 = call float @llvm.fmuladd.f32(float %35221, float %35223, float %35229)
%35231 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %35230, float* %35231
%35232 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%35233 = load float, float* %35232
%35234 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%35235 = load float, float* %35234
%35236 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%35237 = load float, float* %35236
%35238 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%35239 = load float, float* %35238
%35240 = fmul float %35237, %35239
%35241 = fneg float %35240
%35242 = call float @llvm.fmuladd.f32(float %35233, float %35235, float %35241)
%35243 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %35242, float* %35243
%35244 = load float*, float** %11
%35245 = getelementptr inbounds float, float* %35244, i64 0
%35246 = load float, float* %35245
%35247 = load float*, float** %8
%35248 = getelementptr inbounds float, float* %35247, i64 0
%35249 = load float, float* %35248
%35250 = fsub float %35246, %35249
%35251 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %35250, float* %35251
%35252 = load float*, float** %11
%35253 = getelementptr inbounds float, float* %35252, i64 1
%35254 = load float, float* %35253
%35255 = load float*, float** %8
%35256 = getelementptr inbounds float, float* %35255, i64 1
%35257 = load float, float* %35256
%35258 = fsub float %35254, %35257
%35259 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %35258, float* %35259
%35260 = load float*, float** %11
%35261 = getelementptr inbounds float, float* %35260, i64 2
%35262 = load float, float* %35261
%35263 = load float*, float** %8
%35264 = getelementptr inbounds float, float* %35263, i64 2
%35265 = load float, float* %35264
%35266 = fsub float %35262, %35265
%35267 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %35266, float* %35267
%35268 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%35269 = load float, float* %35268
%35270 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%35271 = load float, float* %35270
%35272 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%35273 = load float, float* %35272
%35274 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%35275 = load float, float* %35274
%35276 = fmul float %35273, %35275
%35277 = call float @llvm.fmuladd.f32(float %35269, float %35271, float %35276)
%35278 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%35279 = load float, float* %35278
%35280 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%35281 = load float, float* %35280
%35282 = call float @llvm.fmuladd.f32(float %35279, float %35281, float %35277)
%35283 = fcmp ogt float %35282, 0.000000e+00
br i1 %35283, label %35284, label %35285
35284: ; preds = %35159
store i32 0, i32* %7
br label %37477
35285: ; preds = %35159
%35286 = load float*, float** %12
%35287 = getelementptr inbounds float, float* %35286, i64 0
%35288 = load float, float* %35287
%35289 = load float*, float** %10
%35290 = getelementptr inbounds float, float* %35289, i64 0
%35291 = load float, float* %35290
%35292 = fsub float %35288, %35291
%35293 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %35292, float* %35293
%35294 = load float*, float** %12
%35295 = getelementptr inbounds float, float* %35294, i64 1
%35296 = load float, float* %35295
%35297 = load float*, float** %10
%35298 = getelementptr inbounds float, float* %35297, i64 1
%35299 = load float, float* %35298
%35300 = fsub float %35296, %35299
%35301 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %35300, float* %35301
%35302 = load float*, float** %12
%35303 = getelementptr inbounds float, float* %35302, i64 2
%35304 = load float, float* %35303
%35305 = load float*, float** %10
%35306 = getelementptr inbounds float, float* %35305, i64 2
%35307 = load float, float* %35306
%35308 = fsub float %35304, %35307
%35309 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %35308, float* %35309
%35310 = load float*, float** %9
%35311 = getelementptr inbounds float, float* %35310, i64 0
%35312 = load float, float* %35311
%35313 = load float*, float** %10
%35314 = getelementptr inbounds float, float* %35313, i64 0
%35315 = load float, float* %35314
%35316 = fsub float %35312, %35315
%35317 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %35316, float* %35317
%35318 = load float*, float** %9
%35319 = getelementptr inbounds float, float* %35318, i64 1
%35320 = load float, float* %35319
%35321 = load float*, float** %10
%35322 = getelementptr inbounds float, float* %35321, i64 1
%35323 = load float, float* %35322
%35324 = fsub float %35320, %35323
%35325 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %35324, float* %35325
%35326 = load float*, float** %9
%35327 = getelementptr inbounds float, float* %35326, i64 2
%35328 = load float, float* %35327
%35329 = load float*, float** %10
%35330 = getelementptr inbounds float, float* %35329, i64 2
%35331 = load float, float* %35330
%35332 = fsub float %35328, %35331
%35333 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %35332, float* %35333
%35334 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%35335 = load float, float* %35334
%35336 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%35337 = load float, float* %35336
%35338 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%35339 = load float, float* %35338
%35340 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%35341 = load float, float* %35340
%35342 = fmul float %35339, %35341
%35343 = fneg float %35342
%35344 = call float @llvm.fmuladd.f32(float %35335, float %35337, float %35343)
%35345 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %35344, float* %35345
%35346 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%35347 = load float, float* %35346
%35348 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%35349 = load float, float* %35348
%35350 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%35351 = load float, float* %35350
%35352 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%35353 = load float, float* %35352
%35354 = fmul float %35351, %35353
%35355 = fneg float %35354
%35356 = call float @llvm.fmuladd.f32(float %35347, float %35349, float %35355)
%35357 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %35356, float* %35357
%35358 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%35359 = load float, float* %35358
%35360 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%35361 = load float, float* %35360
%35362 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%35363 = load float, float* %35362
%35364 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%35365 = load float, float* %35364
%35366 = fmul float %35363, %35365
%35367 = fneg float %35366
%35368 = call float @llvm.fmuladd.f32(float %35359, float %35361, float %35367)
%35369 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %35368, float* %35369
%35370 = load float*, float** %13
%35371 = getelementptr inbounds float, float* %35370, i64 0
%35372 = load float, float* %35371
%35373 = load float*, float** %10
%35374 = getelementptr inbounds float, float* %35373, i64 0
%35375 = load float, float* %35374
%35376 = fsub float %35372, %35375
%35377 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %35376, float* %35377
%35378 = load float*, float** %13
%35379 = getelementptr inbounds float, float* %35378, i64 1
%35380 = load float, float* %35379
%35381 = load float*, float** %10
%35382 = getelementptr inbounds float, float* %35381, i64 1
%35383 = load float, float* %35382
%35384 = fsub float %35380, %35383
%35385 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %35384, float* %35385
%35386 = load float*, float** %13
%35387 = getelementptr inbounds float, float* %35386, i64 2
%35388 = load float, float* %35387
%35389 = load float*, float** %10
%35390 = getelementptr inbounds float, float* %35389, i64 2
%35391 = load float, float* %35390
%35392 = fsub float %35388, %35391
%35393 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %35392, float* %35393
%35394 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%35395 = load float, float* %35394
%35396 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%35397 = load float, float* %35396
%35398 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%35399 = load float, float* %35398
%35400 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%35401 = load float, float* %35400
%35402 = fmul float %35399, %35401
%35403 = call float @llvm.fmuladd.f32(float %35395, float %35397, float %35402)
%35404 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%35405 = load float, float* %35404
%35406 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%35407 = load float, float* %35406
%35408 = call float @llvm.fmuladd.f32(float %35405, float %35407, float %35403)
%35409 = fcmp ogt float %35408, 0.000000e+00
br i1 %35409, label %35410, label %35411
35410: ; preds = %35285
store i32 0, i32* %7
br label %37477
35411: ; preds = %35285
store i32 1, i32* %7
br label %37477
35412: ; preds = %35156
%35413 = load float, float* %18
%35414 = fcmp olt float %35413, 0.000000e+00
br i1 %35414, label %35415, label %35668
35415: ; preds = %35412
%35416 = load float*, float** %13
%35417 = getelementptr inbounds float, float* %35416, i64 0
%35418 = load float, float* %35417
%35419 = load float*, float** %8
%35420 = getelementptr inbounds float, float* %35419, i64 0
%35421 = load float, float* %35420
%35422 = fsub float %35418, %35421
%35423 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %35422, float* %35423
%35424 = load float*, float** %13
%35425 = getelementptr inbounds float, float* %35424, i64 1
%35426 = load float, float* %35425
%35427 = load float*, float** %8
%35428 = getelementptr inbounds float, float* %35427, i64 1
%35429 = load float, float* %35428
%35430 = fsub float %35426, %35429
%35431 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %35430, float* %35431
%35432 = load float*, float** %13
%35433 = getelementptr inbounds float, float* %35432, i64 2
%35434 = load float, float* %35433
%35435 = load float*, float** %8
%35436 = getelementptr inbounds float, float* %35435, i64 2
%35437 = load float, float* %35436
%35438 = fsub float %35434, %35437
%35439 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %35438, float* %35439
%35440 = load float*, float** %10
%35441 = getelementptr inbounds float, float* %35440, i64 0
%35442 = load float, float* %35441
%35443 = load float*, float** %8
%35444 = getelementptr inbounds float, float* %35443, i64 0
%35445 = load float, float* %35444
%35446 = fsub float %35442, %35445
%35447 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %35446, float* %35447
%35448 = load float*, float** %10
%35449 = getelementptr inbounds float, float* %35448, i64 1
%35450 = load float, float* %35449
%35451 = load float*, float** %8
%35452 = getelementptr inbounds float, float* %35451, i64 1
%35453 = load float, float* %35452
%35454 = fsub float %35450, %35453
%35455 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %35454, float* %35455
%35456 = load float*, float** %10
%35457 = getelementptr inbounds float, float* %35456, i64 2
%35458 = load float, float* %35457
%35459 = load float*, float** %8
%35460 = getelementptr inbounds float, float* %35459, i64 2
%35461 = load float, float* %35460
%35462 = fsub float %35458, %35461
%35463 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %35462, float* %35463
%35464 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%35465 = load float, float* %35464
%35466 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%35467 = load float, float* %35466
%35468 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%35469 = load float, float* %35468
%35470 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%35471 = load float, float* %35470
%35472 = fmul float %35469, %35471
%35473 = fneg float %35472
%35474 = call float @llvm.fmuladd.f32(float %35465, float %35467, float %35473)
%35475 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %35474, float* %35475
%35476 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%35477 = load float, float* %35476
%35478 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%35479 = load float, float* %35478
%35480 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%35481 = load float, float* %35480
%35482 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%35483 = load float, float* %35482
%35484 = fmul float %35481, %35483
%35485 = fneg float %35484
%35486 = call float @llvm.fmuladd.f32(float %35477, float %35479, float %35485)
%35487 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %35486, float* %35487
%35488 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%35489 = load float, float* %35488
%35490 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%35491 = load float, float* %35490
%35492 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%35493 = load float, float* %35492
%35494 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%35495 = load float, float* %35494
%35496 = fmul float %35493, %35495
%35497 = fneg float %35496
%35498 = call float @llvm.fmuladd.f32(float %35489, float %35491, float %35497)
%35499 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %35498, float* %35499
%35500 = load float*, float** %12
%35501 = getelementptr inbounds float, float* %35500, i64 0
%35502 = load float, float* %35501
%35503 = load float*, float** %8
%35504 = getelementptr inbounds float, float* %35503, i64 0
%35505 = load float, float* %35504
%35506 = fsub float %35502, %35505
%35507 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %35506, float* %35507
%35508 = load float*, float** %12
%35509 = getelementptr inbounds float, float* %35508, i64 1
%35510 = load float, float* %35509
%35511 = load float*, float** %8
%35512 = getelementptr inbounds float, float* %35511, i64 1
%35513 = load float, float* %35512
%35514 = fsub float %35510, %35513
%35515 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %35514, float* %35515
%35516 = load float*, float** %12
%35517 = getelementptr inbounds float, float* %35516, i64 2
%35518 = load float, float* %35517
%35519 = load float*, float** %8
%35520 = getelementptr inbounds float, float* %35519, i64 2
%35521 = load float, float* %35520
%35522 = fsub float %35518, %35521
%35523 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %35522, float* %35523
%35524 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%35525 = load float, float* %35524
%35526 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%35527 = load float, float* %35526
%35528 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%35529 = load float, float* %35528
%35530 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%35531 = load float, float* %35530
%35532 = fmul float %35529, %35531
%35533 = call float @llvm.fmuladd.f32(float %35525, float %35527, float %35532)
%35534 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%35535 = load float, float* %35534
%35536 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%35537 = load float, float* %35536
%35538 = call float @llvm.fmuladd.f32(float %35535, float %35537, float %35533)
%35539 = fcmp ogt float %35538, 0.000000e+00
br i1 %35539, label %35540, label %35541
35540: ; preds = %35415
store i32 0, i32* %7
br label %37477
35541: ; preds = %35415
%35542 = load float*, float** %13
%35543 = getelementptr inbounds float, float* %35542, i64 0
%35544 = load float, float* %35543
%35545 = load float*, float** %10
%35546 = getelementptr inbounds float, float* %35545, i64 0
%35547 = load float, float* %35546
%35548 = fsub float %35544, %35547
%35549 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %35548, float* %35549
%35550 = load float*, float** %13
%35551 = getelementptr inbounds float, float* %35550, i64 1
%35552 = load float, float* %35551
%35553 = load float*, float** %10
%35554 = getelementptr inbounds float, float* %35553, i64 1
%35555 = load float, float* %35554
%35556 = fsub float %35552, %35555
%35557 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %35556, float* %35557
%35558 = load float*, float** %13
%35559 = getelementptr inbounds float, float* %35558, i64 2
%35560 = load float, float* %35559
%35561 = load float*, float** %10
%35562 = getelementptr inbounds float, float* %35561, i64 2
%35563 = load float, float* %35562
%35564 = fsub float %35560, %35563
%35565 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %35564, float* %35565
%35566 = load float*, float** %9
%35567 = getelementptr inbounds float, float* %35566, i64 0
%35568 = load float, float* %35567
%35569 = load float*, float** %10
%35570 = getelementptr inbounds float, float* %35569, i64 0
%35571 = load float, float* %35570
%35572 = fsub float %35568, %35571
%35573 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %35572, float* %35573
%35574 = load float*, float** %9
%35575 = getelementptr inbounds float, float* %35574, i64 1
%35576 = load float, float* %35575
%35577 = load float*, float** %10
%35578 = getelementptr inbounds float, float* %35577, i64 1
%35579 = load float, float* %35578
%35580 = fsub float %35576, %35579
%35581 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %35580, float* %35581
%35582 = load float*, float** %9
%35583 = getelementptr inbounds float, float* %35582, i64 2
%35584 = load float, float* %35583
%35585 = load float*, float** %10
%35586 = getelementptr inbounds float, float* %35585, i64 2
%35587 = load float, float* %35586
%35588 = fsub float %35584, %35587
%35589 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %35588, float* %35589
%35590 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%35591 = load float, float* %35590
%35592 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%35593 = load float, float* %35592
%35594 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%35595 = load float, float* %35594
%35596 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%35597 = load float, float* %35596
%35598 = fmul float %35595, %35597
%35599 = fneg float %35598
%35600 = call float @llvm.fmuladd.f32(float %35591, float %35593, float %35599)
%35601 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %35600, float* %35601
%35602 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%35603 = load float, float* %35602
%35604 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%35605 = load float, float* %35604
%35606 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%35607 = load float, float* %35606
%35608 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%35609 = load float, float* %35608
%35610 = fmul float %35607, %35609
%35611 = fneg float %35610
%35612 = call float @llvm.fmuladd.f32(float %35603, float %35605, float %35611)
%35613 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %35612, float* %35613
%35614 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%35615 = load float, float* %35614
%35616 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%35617 = load float, float* %35616
%35618 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%35619 = load float, float* %35618
%35620 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%35621 = load float, float* %35620
%35622 = fmul float %35619, %35621
%35623 = fneg float %35622
%35624 = call float @llvm.fmuladd.f32(float %35615, float %35617, float %35623)
%35625 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %35624, float* %35625
%35626 = load float*, float** %11
%35627 = getelementptr inbounds float, float* %35626, i64 0
%35628 = load float, float* %35627
%35629 = load float*, float** %10
%35630 = getelementptr inbounds float, float* %35629, i64 0
%35631 = load float, float* %35630
%35632 = fsub float %35628, %35631
%35633 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %35632, float* %35633
%35634 = load float*, float** %11
%35635 = getelementptr inbounds float, float* %35634, i64 1
%35636 = load float, float* %35635
%35637 = load float*, float** %10
%35638 = getelementptr inbounds float, float* %35637, i64 1
%35639 = load float, float* %35638
%35640 = fsub float %35636, %35639
%35641 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %35640, float* %35641
%35642 = load float*, float** %11
%35643 = getelementptr inbounds float, float* %35642, i64 2
%35644 = load float, float* %35643
%35645 = load float*, float** %10
%35646 = getelementptr inbounds float, float* %35645, i64 2
%35647 = load float, float* %35646
%35648 = fsub float %35644, %35647
%35649 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %35648, float* %35649
%35650 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%35651 = load float, float* %35650
%35652 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%35653 = load float, float* %35652
%35654 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%35655 = load float, float* %35654
%35656 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%35657 = load float, float* %35656
%35658 = fmul float %35655, %35657
%35659 = call float @llvm.fmuladd.f32(float %35651, float %35653, float %35658)
%35660 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%35661 = load float, float* %35660
%35662 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%35663 = load float, float* %35662
%35664 = call float @llvm.fmuladd.f32(float %35661, float %35663, float %35659)
%35665 = fcmp ogt float %35664, 0.000000e+00
br i1 %35665, label %35666, label %35667
35666: ; preds = %35541
store i32 0, i32* %7
br label %37477
35667: ; preds = %35541
store i32 1, i32* %7
br label %37477
35668: ; preds = %35412
%35669 = load float*, float** %11
%35670 = getelementptr inbounds float, float* %35669, i64 0
%35671 = load float, float* %35670
%35672 = load float*, float** %9
%35673 = getelementptr inbounds float, float* %35672, i64 0
%35674 = load float, float* %35673
%35675 = fsub float %35671, %35674
%35676 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %35675, float* %35676
%35677 = load float*, float** %11
%35678 = getelementptr inbounds float, float* %35677, i64 1
%35679 = load float, float* %35678
%35680 = load float*, float** %9
%35681 = getelementptr inbounds float, float* %35680, i64 1
%35682 = load float, float* %35681
%35683 = fsub float %35679, %35682
%35684 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %35683, float* %35684
%35685 = load float*, float** %11
%35686 = getelementptr inbounds float, float* %35685, i64 2
%35687 = load float, float* %35686
%35688 = load float*, float** %9
%35689 = getelementptr inbounds float, float* %35688, i64 2
%35690 = load float, float* %35689
%35691 = fsub float %35687, %35690
%35692 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %35691, float* %35692
%35693 = load float*, float** %10
%35694 = getelementptr inbounds float, float* %35693, i64 0
%35695 = load float, float* %35694
%35696 = load float*, float** %9
%35697 = getelementptr inbounds float, float* %35696, i64 0
%35698 = load float, float* %35697
%35699 = fsub float %35695, %35698
%35700 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %35699, float* %35700
%35701 = load float*, float** %10
%35702 = getelementptr inbounds float, float* %35701, i64 1
%35703 = load float, float* %35702
%35704 = load float*, float** %9
%35705 = getelementptr inbounds float, float* %35704, i64 1
%35706 = load float, float* %35705
%35707 = fsub float %35703, %35706
%35708 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %35707, float* %35708
%35709 = load float*, float** %10
%35710 = getelementptr inbounds float, float* %35709, i64 2
%35711 = load float, float* %35710
%35712 = load float*, float** %9
%35713 = getelementptr inbounds float, float* %35712, i64 2
%35714 = load float, float* %35713
%35715 = fsub float %35711, %35714
%35716 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %35715, float* %35716
%35717 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%35718 = load float, float* %35717
%35719 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%35720 = load float, float* %35719
%35721 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%35722 = load float, float* %35721
%35723 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%35724 = load float, float* %35723
%35725 = fmul float %35722, %35724
%35726 = fneg float %35725
%35727 = call float @llvm.fmuladd.f32(float %35718, float %35720, float %35726)
%35728 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %35727, float* %35728
%35729 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%35730 = load float, float* %35729
%35731 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%35732 = load float, float* %35731
%35733 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%35734 = load float, float* %35733
%35735 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%35736 = load float, float* %35735
%35737 = fmul float %35734, %35736
%35738 = fneg float %35737
%35739 = call float @llvm.fmuladd.f32(float %35730, float %35732, float %35738)
%35740 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %35739, float* %35740
%35741 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%35742 = load float, float* %35741
%35743 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%35744 = load float, float* %35743
%35745 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%35746 = load float, float* %35745
%35747 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%35748 = load float, float* %35747
%35749 = fmul float %35746, %35748
%35750 = fneg float %35749
%35751 = call float @llvm.fmuladd.f32(float %35742, float %35744, float %35750)
%35752 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %35751, float* %35752
%35753 = load float*, float** %13
%35754 = getelementptr inbounds float, float* %35753, i64 0
%35755 = load float, float* %35754
%35756 = load float*, float** %9
%35757 = getelementptr inbounds float, float* %35756, i64 0
%35758 = load float, float* %35757
%35759 = fsub float %35755, %35758
%35760 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %35759, float* %35760
%35761 = load float*, float** %13
%35762 = getelementptr inbounds float, float* %35761, i64 1
%35763 = load float, float* %35762
%35764 = load float*, float** %9
%35765 = getelementptr inbounds float, float* %35764, i64 1
%35766 = load float, float* %35765
%35767 = fsub float %35763, %35766
%35768 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %35767, float* %35768
%35769 = load float*, float** %13
%35770 = getelementptr inbounds float, float* %35769, i64 2
%35771 = load float, float* %35770
%35772 = load float*, float** %9
%35773 = getelementptr inbounds float, float* %35772, i64 2
%35774 = load float, float* %35773
%35775 = fsub float %35771, %35774
%35776 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %35775, float* %35776
%35777 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%35778 = load float, float* %35777
%35779 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%35780 = load float, float* %35779
%35781 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%35782 = load float, float* %35781
%35783 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%35784 = load float, float* %35783
%35785 = fmul float %35782, %35784
%35786 = call float @llvm.fmuladd.f32(float %35778, float %35780, float %35785)
%35787 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%35788 = load float, float* %35787
%35789 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%35790 = load float, float* %35789
%35791 = call float @llvm.fmuladd.f32(float %35788, float %35790, float %35786)
%35792 = fcmp ogt float %35791, 0.000000e+00
br i1 %35792, label %35793, label %35794
35793: ; preds = %35668
store i32 0, i32* %7
br label %37477
35794: ; preds = %35668
%35795 = load float*, float** %11
%35796 = getelementptr inbounds float, float* %35795, i64 0
%35797 = load float, float* %35796
%35798 = load float*, float** %10
%35799 = getelementptr inbounds float, float* %35798, i64 0
%35800 = load float, float* %35799
%35801 = fsub float %35797, %35800
%35802 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %35801, float* %35802
%35803 = load float*, float** %11
%35804 = getelementptr inbounds float, float* %35803, i64 1
%35805 = load float, float* %35804
%35806 = load float*, float** %10
%35807 = getelementptr inbounds float, float* %35806, i64 1
%35808 = load float, float* %35807
%35809 = fsub float %35805, %35808
%35810 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %35809, float* %35810
%35811 = load float*, float** %11
%35812 = getelementptr inbounds float, float* %35811, i64 2
%35813 = load float, float* %35812
%35814 = load float*, float** %10
%35815 = getelementptr inbounds float, float* %35814, i64 2
%35816 = load float, float* %35815
%35817 = fsub float %35813, %35816
%35818 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %35817, float* %35818
%35819 = load float*, float** %8
%35820 = getelementptr inbounds float, float* %35819, i64 0
%35821 = load float, float* %35820
%35822 = load float*, float** %10
%35823 = getelementptr inbounds float, float* %35822, i64 0
%35824 = load float, float* %35823
%35825 = fsub float %35821, %35824
%35826 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %35825, float* %35826
%35827 = load float*, float** %8
%35828 = getelementptr inbounds float, float* %35827, i64 1
%35829 = load float, float* %35828
%35830 = load float*, float** %10
%35831 = getelementptr inbounds float, float* %35830, i64 1
%35832 = load float, float* %35831
%35833 = fsub float %35829, %35832
%35834 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %35833, float* %35834
%35835 = load float*, float** %8
%35836 = getelementptr inbounds float, float* %35835, i64 2
%35837 = load float, float* %35836
%35838 = load float*, float** %10
%35839 = getelementptr inbounds float, float* %35838, i64 2
%35840 = load float, float* %35839
%35841 = fsub float %35837, %35840
%35842 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %35841, float* %35842
%35843 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%35844 = load float, float* %35843
%35845 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%35846 = load float, float* %35845
%35847 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%35848 = load float, float* %35847
%35849 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%35850 = load float, float* %35849
%35851 = fmul float %35848, %35850
%35852 = fneg float %35851
%35853 = call float @llvm.fmuladd.f32(float %35844, float %35846, float %35852)
%35854 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %35853, float* %35854
%35855 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%35856 = load float, float* %35855
%35857 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%35858 = load float, float* %35857
%35859 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%35860 = load float, float* %35859
%35861 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%35862 = load float, float* %35861
%35863 = fmul float %35860, %35862
%35864 = fneg float %35863
%35865 = call float @llvm.fmuladd.f32(float %35856, float %35858, float %35864)
%35866 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %35865, float* %35866
%35867 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%35868 = load float, float* %35867
%35869 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%35870 = load float, float* %35869
%35871 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%35872 = load float, float* %35871
%35873 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%35874 = load float, float* %35873
%35875 = fmul float %35872, %35874
%35876 = fneg float %35875
%35877 = call float @llvm.fmuladd.f32(float %35868, float %35870, float %35876)
%35878 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %35877, float* %35878
%35879 = load float*, float** %12
%35880 = getelementptr inbounds float, float* %35879, i64 0
%35881 = load float, float* %35880
%35882 = load float*, float** %10
%35883 = getelementptr inbounds float, float* %35882, i64 0
%35884 = load float, float* %35883
%35885 = fsub float %35881, %35884
%35886 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %35885, float* %35886
%35887 = load float*, float** %12
%35888 = getelementptr inbounds float, float* %35887, i64 1
%35889 = load float, float* %35888
%35890 = load float*, float** %10
%35891 = getelementptr inbounds float, float* %35890, i64 1
%35892 = load float, float* %35891
%35893 = fsub float %35889, %35892
%35894 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %35893, float* %35894
%35895 = load float*, float** %12
%35896 = getelementptr inbounds float, float* %35895, i64 2
%35897 = load float, float* %35896
%35898 = load float*, float** %10
%35899 = getelementptr inbounds float, float* %35898, i64 2
%35900 = load float, float* %35899
%35901 = fsub float %35897, %35900
%35902 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %35901, float* %35902
%35903 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%35904 = load float, float* %35903
%35905 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%35906 = load float, float* %35905
%35907 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%35908 = load float, float* %35907
%35909 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%35910 = load float, float* %35909
%35911 = fmul float %35908, %35910
%35912 = call float @llvm.fmuladd.f32(float %35904, float %35906, float %35911)
%35913 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%35914 = load float, float* %35913
%35915 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%35916 = load float, float* %35915
%35917 = call float @llvm.fmuladd.f32(float %35914, float %35916, float %35912)
%35918 = fcmp ogt float %35917, 0.000000e+00
br i1 %35918, label %35919, label %35920
35919: ; preds = %35794
store i32 0, i32* %7
br label %37477
35920: ; preds = %35794
store i32 1, i32* %7
br label %37477
35921: ; preds = %35153
%35922 = load float, float* %19
%35923 = fcmp olt float %35922, 0.000000e+00
br i1 %35923, label %35924, label %36433
35924: ; preds = %35921
%35925 = load float, float* %18
%35926 = fcmp oge float %35925, 0.000000e+00
br i1 %35926, label %35927, label %36180
35927: ; preds = %35924
%35928 = load float*, float** %13
%35929 = getelementptr inbounds float, float* %35928, i64 0
%35930 = load float, float* %35929
%35931 = load float*, float** %9
%35932 = getelementptr inbounds float, float* %35931, i64 0
%35933 = load float, float* %35932
%35934 = fsub float %35930, %35933
%35935 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %35934, float* %35935
%35936 = load float*, float** %13
%35937 = getelementptr inbounds float, float* %35936, i64 1
%35938 = load float, float* %35937
%35939 = load float*, float** %9
%35940 = getelementptr inbounds float, float* %35939, i64 1
%35941 = load float, float* %35940
%35942 = fsub float %35938, %35941
%35943 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %35942, float* %35943
%35944 = load float*, float** %13
%35945 = getelementptr inbounds float, float* %35944, i64 2
%35946 = load float, float* %35945
%35947 = load float*, float** %9
%35948 = getelementptr inbounds float, float* %35947, i64 2
%35949 = load float, float* %35948
%35950 = fsub float %35946, %35949
%35951 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %35950, float* %35951
%35952 = load float*, float** %10
%35953 = getelementptr inbounds float, float* %35952, i64 0
%35954 = load float, float* %35953
%35955 = load float*, float** %9
%35956 = getelementptr inbounds float, float* %35955, i64 0
%35957 = load float, float* %35956
%35958 = fsub float %35954, %35957
%35959 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %35958, float* %35959
%35960 = load float*, float** %10
%35961 = getelementptr inbounds float, float* %35960, i64 1
%35962 = load float, float* %35961
%35963 = load float*, float** %9
%35964 = getelementptr inbounds float, float* %35963, i64 1
%35965 = load float, float* %35964
%35966 = fsub float %35962, %35965
%35967 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %35966, float* %35967
%35968 = load float*, float** %10
%35969 = getelementptr inbounds float, float* %35968, i64 2
%35970 = load float, float* %35969
%35971 = load float*, float** %9
%35972 = getelementptr inbounds float, float* %35971, i64 2
%35973 = load float, float* %35972
%35974 = fsub float %35970, %35973
%35975 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %35974, float* %35975
%35976 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%35977 = load float, float* %35976
%35978 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%35979 = load float, float* %35978
%35980 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%35981 = load float, float* %35980
%35982 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%35983 = load float, float* %35982
%35984 = fmul float %35981, %35983
%35985 = fneg float %35984
%35986 = call float @llvm.fmuladd.f32(float %35977, float %35979, float %35985)
%35987 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %35986, float* %35987
%35988 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%35989 = load float, float* %35988
%35990 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%35991 = load float, float* %35990
%35992 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%35993 = load float, float* %35992
%35994 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%35995 = load float, float* %35994
%35996 = fmul float %35993, %35995
%35997 = fneg float %35996
%35998 = call float @llvm.fmuladd.f32(float %35989, float %35991, float %35997)
%35999 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %35998, float* %35999
%36000 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%36001 = load float, float* %36000
%36002 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%36003 = load float, float* %36002
%36004 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%36005 = load float, float* %36004
%36006 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%36007 = load float, float* %36006
%36008 = fmul float %36005, %36007
%36009 = fneg float %36008
%36010 = call float @llvm.fmuladd.f32(float %36001, float %36003, float %36009)
%36011 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %36010, float* %36011
%36012 = load float*, float** %12
%36013 = getelementptr inbounds float, float* %36012, i64 0
%36014 = load float, float* %36013
%36015 = load float*, float** %9
%36016 = getelementptr inbounds float, float* %36015, i64 0
%36017 = load float, float* %36016
%36018 = fsub float %36014, %36017
%36019 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %36018, float* %36019
%36020 = load float*, float** %12
%36021 = getelementptr inbounds float, float* %36020, i64 1
%36022 = load float, float* %36021
%36023 = load float*, float** %9
%36024 = getelementptr inbounds float, float* %36023, i64 1
%36025 = load float, float* %36024
%36026 = fsub float %36022, %36025
%36027 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %36026, float* %36027
%36028 = load float*, float** %12
%36029 = getelementptr inbounds float, float* %36028, i64 2
%36030 = load float, float* %36029
%36031 = load float*, float** %9
%36032 = getelementptr inbounds float, float* %36031, i64 2
%36033 = load float, float* %36032
%36034 = fsub float %36030, %36033
%36035 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %36034, float* %36035
%36036 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%36037 = load float, float* %36036
%36038 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%36039 = load float, float* %36038
%36040 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%36041 = load float, float* %36040
%36042 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%36043 = load float, float* %36042
%36044 = fmul float %36041, %36043
%36045 = call float @llvm.fmuladd.f32(float %36037, float %36039, float %36044)
%36046 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%36047 = load float, float* %36046
%36048 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%36049 = load float, float* %36048
%36050 = call float @llvm.fmuladd.f32(float %36047, float %36049, float %36045)
%36051 = fcmp ogt float %36050, 0.000000e+00
br i1 %36051, label %36052, label %36053
36052: ; preds = %35927
store i32 0, i32* %7
br label %37477
36053: ; preds = %35927
%36054 = load float*, float** %13
%36055 = getelementptr inbounds float, float* %36054, i64 0
%36056 = load float, float* %36055
%36057 = load float*, float** %10
%36058 = getelementptr inbounds float, float* %36057, i64 0
%36059 = load float, float* %36058
%36060 = fsub float %36056, %36059
%36061 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %36060, float* %36061
%36062 = load float*, float** %13
%36063 = getelementptr inbounds float, float* %36062, i64 1
%36064 = load float, float* %36063
%36065 = load float*, float** %10
%36066 = getelementptr inbounds float, float* %36065, i64 1
%36067 = load float, float* %36066
%36068 = fsub float %36064, %36067
%36069 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %36068, float* %36069
%36070 = load float*, float** %13
%36071 = getelementptr inbounds float, float* %36070, i64 2
%36072 = load float, float* %36071
%36073 = load float*, float** %10
%36074 = getelementptr inbounds float, float* %36073, i64 2
%36075 = load float, float* %36074
%36076 = fsub float %36072, %36075
%36077 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %36076, float* %36077
%36078 = load float*, float** %8
%36079 = getelementptr inbounds float, float* %36078, i64 0
%36080 = load float, float* %36079
%36081 = load float*, float** %10
%36082 = getelementptr inbounds float, float* %36081, i64 0
%36083 = load float, float* %36082
%36084 = fsub float %36080, %36083
%36085 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %36084, float* %36085
%36086 = load float*, float** %8
%36087 = getelementptr inbounds float, float* %36086, i64 1
%36088 = load float, float* %36087
%36089 = load float*, float** %10
%36090 = getelementptr inbounds float, float* %36089, i64 1
%36091 = load float, float* %36090
%36092 = fsub float %36088, %36091
%36093 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %36092, float* %36093
%36094 = load float*, float** %8
%36095 = getelementptr inbounds float, float* %36094, i64 2
%36096 = load float, float* %36095
%36097 = load float*, float** %10
%36098 = getelementptr inbounds float, float* %36097, i64 2
%36099 = load float, float* %36098
%36100 = fsub float %36096, %36099
%36101 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %36100, float* %36101
%36102 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%36103 = load float, float* %36102
%36104 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%36105 = load float, float* %36104
%36106 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%36107 = load float, float* %36106
%36108 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%36109 = load float, float* %36108
%36110 = fmul float %36107, %36109
%36111 = fneg float %36110
%36112 = call float @llvm.fmuladd.f32(float %36103, float %36105, float %36111)
%36113 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %36112, float* %36113
%36114 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%36115 = load float, float* %36114
%36116 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%36117 = load float, float* %36116
%36118 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%36119 = load float, float* %36118
%36120 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%36121 = load float, float* %36120
%36122 = fmul float %36119, %36121
%36123 = fneg float %36122
%36124 = call float @llvm.fmuladd.f32(float %36115, float %36117, float %36123)
%36125 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %36124, float* %36125
%36126 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%36127 = load float, float* %36126
%36128 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%36129 = load float, float* %36128
%36130 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%36131 = load float, float* %36130
%36132 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%36133 = load float, float* %36132
%36134 = fmul float %36131, %36133
%36135 = fneg float %36134
%36136 = call float @llvm.fmuladd.f32(float %36127, float %36129, float %36135)
%36137 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %36136, float* %36137
%36138 = load float*, float** %11
%36139 = getelementptr inbounds float, float* %36138, i64 0
%36140 = load float, float* %36139
%36141 = load float*, float** %10
%36142 = getelementptr inbounds float, float* %36141, i64 0
%36143 = load float, float* %36142
%36144 = fsub float %36140, %36143
%36145 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %36144, float* %36145
%36146 = load float*, float** %11
%36147 = getelementptr inbounds float, float* %36146, i64 1
%36148 = load float, float* %36147
%36149 = load float*, float** %10
%36150 = getelementptr inbounds float, float* %36149, i64 1
%36151 = load float, float* %36150
%36152 = fsub float %36148, %36151
%36153 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %36152, float* %36153
%36154 = load float*, float** %11
%36155 = getelementptr inbounds float, float* %36154, i64 2
%36156 = load float, float* %36155
%36157 = load float*, float** %10
%36158 = getelementptr inbounds float, float* %36157, i64 2
%36159 = load float, float* %36158
%36160 = fsub float %36156, %36159
%36161 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %36160, float* %36161
%36162 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%36163 = load float, float* %36162
%36164 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%36165 = load float, float* %36164
%36166 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%36167 = load float, float* %36166
%36168 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%36169 = load float, float* %36168
%36170 = fmul float %36167, %36169
%36171 = call float @llvm.fmuladd.f32(float %36163, float %36165, float %36170)
%36172 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%36173 = load float, float* %36172
%36174 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%36175 = load float, float* %36174
%36176 = call float @llvm.fmuladd.f32(float %36173, float %36175, float %36171)
%36177 = fcmp ogt float %36176, 0.000000e+00
br i1 %36177, label %36178, label %36179
36178: ; preds = %36053
store i32 0, i32* %7
br label %37477
36179: ; preds = %36053
store i32 1, i32* %7
br label %37477
36180: ; preds = %35924
%36181 = load float*, float** %11
%36182 = getelementptr inbounds float, float* %36181, i64 0
%36183 = load float, float* %36182
%36184 = load float*, float** %8
%36185 = getelementptr inbounds float, float* %36184, i64 0
%36186 = load float, float* %36185
%36187 = fsub float %36183, %36186
%36188 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %36187, float* %36188
%36189 = load float*, float** %11
%36190 = getelementptr inbounds float, float* %36189, i64 1
%36191 = load float, float* %36190
%36192 = load float*, float** %8
%36193 = getelementptr inbounds float, float* %36192, i64 1
%36194 = load float, float* %36193
%36195 = fsub float %36191, %36194
%36196 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %36195, float* %36196
%36197 = load float*, float** %11
%36198 = getelementptr inbounds float, float* %36197, i64 2
%36199 = load float, float* %36198
%36200 = load float*, float** %8
%36201 = getelementptr inbounds float, float* %36200, i64 2
%36202 = load float, float* %36201
%36203 = fsub float %36199, %36202
%36204 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %36203, float* %36204
%36205 = load float*, float** %10
%36206 = getelementptr inbounds float, float* %36205, i64 0
%36207 = load float, float* %36206
%36208 = load float*, float** %8
%36209 = getelementptr inbounds float, float* %36208, i64 0
%36210 = load float, float* %36209
%36211 = fsub float %36207, %36210
%36212 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %36211, float* %36212
%36213 = load float*, float** %10
%36214 = getelementptr inbounds float, float* %36213, i64 1
%36215 = load float, float* %36214
%36216 = load float*, float** %8
%36217 = getelementptr inbounds float, float* %36216, i64 1
%36218 = load float, float* %36217
%36219 = fsub float %36215, %36218
%36220 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %36219, float* %36220
%36221 = load float*, float** %10
%36222 = getelementptr inbounds float, float* %36221, i64 2
%36223 = load float, float* %36222
%36224 = load float*, float** %8
%36225 = getelementptr inbounds float, float* %36224, i64 2
%36226 = load float, float* %36225
%36227 = fsub float %36223, %36226
%36228 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %36227, float* %36228
%36229 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%36230 = load float, float* %36229
%36231 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%36232 = load float, float* %36231
%36233 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%36234 = load float, float* %36233
%36235 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%36236 = load float, float* %36235
%36237 = fmul float %36234, %36236
%36238 = fneg float %36237
%36239 = call float @llvm.fmuladd.f32(float %36230, float %36232, float %36238)
%36240 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %36239, float* %36240
%36241 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%36242 = load float, float* %36241
%36243 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%36244 = load float, float* %36243
%36245 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%36246 = load float, float* %36245
%36247 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%36248 = load float, float* %36247
%36249 = fmul float %36246, %36248
%36250 = fneg float %36249
%36251 = call float @llvm.fmuladd.f32(float %36242, float %36244, float %36250)
%36252 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %36251, float* %36252
%36253 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%36254 = load float, float* %36253
%36255 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%36256 = load float, float* %36255
%36257 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%36258 = load float, float* %36257
%36259 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%36260 = load float, float* %36259
%36261 = fmul float %36258, %36260
%36262 = fneg float %36261
%36263 = call float @llvm.fmuladd.f32(float %36254, float %36256, float %36262)
%36264 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %36263, float* %36264
%36265 = load float*, float** %13
%36266 = getelementptr inbounds float, float* %36265, i64 0
%36267 = load float, float* %36266
%36268 = load float*, float** %8
%36269 = getelementptr inbounds float, float* %36268, i64 0
%36270 = load float, float* %36269
%36271 = fsub float %36267, %36270
%36272 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %36271, float* %36272
%36273 = load float*, float** %13
%36274 = getelementptr inbounds float, float* %36273, i64 1
%36275 = load float, float* %36274
%36276 = load float*, float** %8
%36277 = getelementptr inbounds float, float* %36276, i64 1
%36278 = load float, float* %36277
%36279 = fsub float %36275, %36278
%36280 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %36279, float* %36280
%36281 = load float*, float** %13
%36282 = getelementptr inbounds float, float* %36281, i64 2
%36283 = load float, float* %36282
%36284 = load float*, float** %8
%36285 = getelementptr inbounds float, float* %36284, i64 2
%36286 = load float, float* %36285
%36287 = fsub float %36283, %36286
%36288 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %36287, float* %36288
%36289 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%36290 = load float, float* %36289
%36291 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%36292 = load float, float* %36291
%36293 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%36294 = load float, float* %36293
%36295 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%36296 = load float, float* %36295
%36297 = fmul float %36294, %36296
%36298 = call float @llvm.fmuladd.f32(float %36290, float %36292, float %36297)
%36299 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%36300 = load float, float* %36299
%36301 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%36302 = load float, float* %36301
%36303 = call float @llvm.fmuladd.f32(float %36300, float %36302, float %36298)
%36304 = fcmp ogt float %36303, 0.000000e+00
br i1 %36304, label %36305, label %36306
36305: ; preds = %36180
store i32 0, i32* %7
br label %37477
36306: ; preds = %36180
%36307 = load float*, float** %11
%36308 = getelementptr inbounds float, float* %36307, i64 0
%36309 = load float, float* %36308
%36310 = load float*, float** %10
%36311 = getelementptr inbounds float, float* %36310, i64 0
%36312 = load float, float* %36311
%36313 = fsub float %36309, %36312
%36314 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %36313, float* %36314
%36315 = load float*, float** %11
%36316 = getelementptr inbounds float, float* %36315, i64 1
%36317 = load float, float* %36316
%36318 = load float*, float** %10
%36319 = getelementptr inbounds float, float* %36318, i64 1
%36320 = load float, float* %36319
%36321 = fsub float %36317, %36320
%36322 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %36321, float* %36322
%36323 = load float*, float** %11
%36324 = getelementptr inbounds float, float* %36323, i64 2
%36325 = load float, float* %36324
%36326 = load float*, float** %10
%36327 = getelementptr inbounds float, float* %36326, i64 2
%36328 = load float, float* %36327
%36329 = fsub float %36325, %36328
%36330 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %36329, float* %36330
%36331 = load float*, float** %9
%36332 = getelementptr inbounds float, float* %36331, i64 0
%36333 = load float, float* %36332
%36334 = load float*, float** %10
%36335 = getelementptr inbounds float, float* %36334, i64 0
%36336 = load float, float* %36335
%36337 = fsub float %36333, %36336
%36338 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %36337, float* %36338
%36339 = load float*, float** %9
%36340 = getelementptr inbounds float, float* %36339, i64 1
%36341 = load float, float* %36340
%36342 = load float*, float** %10
%36343 = getelementptr inbounds float, float* %36342, i64 1
%36344 = load float, float* %36343
%36345 = fsub float %36341, %36344
%36346 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %36345, float* %36346
%36347 = load float*, float** %9
%36348 = getelementptr inbounds float, float* %36347, i64 2
%36349 = load float, float* %36348
%36350 = load float*, float** %10
%36351 = getelementptr inbounds float, float* %36350, i64 2
%36352 = load float, float* %36351
%36353 = fsub float %36349, %36352
%36354 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %36353, float* %36354
%36355 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%36356 = load float, float* %36355
%36357 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%36358 = load float, float* %36357
%36359 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%36360 = load float, float* %36359
%36361 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%36362 = load float, float* %36361
%36363 = fmul float %36360, %36362
%36364 = fneg float %36363
%36365 = call float @llvm.fmuladd.f32(float %36356, float %36358, float %36364)
%36366 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %36365, float* %36366
%36367 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%36368 = load float, float* %36367
%36369 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%36370 = load float, float* %36369
%36371 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%36372 = load float, float* %36371
%36373 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%36374 = load float, float* %36373
%36375 = fmul float %36372, %36374
%36376 = fneg float %36375
%36377 = call float @llvm.fmuladd.f32(float %36368, float %36370, float %36376)
%36378 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %36377, float* %36378
%36379 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%36380 = load float, float* %36379
%36381 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%36382 = load float, float* %36381
%36383 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%36384 = load float, float* %36383
%36385 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%36386 = load float, float* %36385
%36387 = fmul float %36384, %36386
%36388 = fneg float %36387
%36389 = call float @llvm.fmuladd.f32(float %36380, float %36382, float %36388)
%36390 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %36389, float* %36390
%36391 = load float*, float** %12
%36392 = getelementptr inbounds float, float* %36391, i64 0
%36393 = load float, float* %36392
%36394 = load float*, float** %10
%36395 = getelementptr inbounds float, float* %36394, i64 0
%36396 = load float, float* %36395
%36397 = fsub float %36393, %36396
%36398 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %36397, float* %36398
%36399 = load float*, float** %12
%36400 = getelementptr inbounds float, float* %36399, i64 1
%36401 = load float, float* %36400
%36402 = load float*, float** %10
%36403 = getelementptr inbounds float, float* %36402, i64 1
%36404 = load float, float* %36403
%36405 = fsub float %36401, %36404
%36406 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %36405, float* %36406
%36407 = load float*, float** %12
%36408 = getelementptr inbounds float, float* %36407, i64 2
%36409 = load float, float* %36408
%36410 = load float*, float** %10
%36411 = getelementptr inbounds float, float* %36410, i64 2
%36412 = load float, float* %36411
%36413 = fsub float %36409, %36412
%36414 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %36413, float* %36414
%36415 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%36416 = load float, float* %36415
%36417 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%36418 = load float, float* %36417
%36419 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%36420 = load float, float* %36419
%36421 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%36422 = load float, float* %36421
%36423 = fmul float %36420, %36422
%36424 = call float @llvm.fmuladd.f32(float %36416, float %36418, float %36423)
%36425 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%36426 = load float, float* %36425
%36427 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%36428 = load float, float* %36427
%36429 = call float @llvm.fmuladd.f32(float %36426, float %36428, float %36424)
%36430 = fcmp ogt float %36429, 0.000000e+00
br i1 %36430, label %36431, label %36432
36431: ; preds = %36306
store i32 0, i32* %7
br label %37477
36432: ; preds = %36306
store i32 1, i32* %7
br label %37477
36433: ; preds = %35921
%36434 = load float, float* %19
%36435 = fcmp ogt float %36434, 0.000000e+00
br i1 %36435, label %36436, label %36945
36436: ; preds = %36433
%36437 = load float, float* %18
%36438 = fcmp ogt float %36437, 0.000000e+00
br i1 %36438, label %36439, label %36692
36439: ; preds = %36436
%36440 = load float*, float** %11
%36441 = getelementptr inbounds float, float* %36440, i64 0
%36442 = load float, float* %36441
%36443 = load float*, float** %9
%36444 = getelementptr inbounds float, float* %36443, i64 0
%36445 = load float, float* %36444
%36446 = fsub float %36442, %36445
%36447 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %36446, float* %36447
%36448 = load float*, float** %11
%36449 = getelementptr inbounds float, float* %36448, i64 1
%36450 = load float, float* %36449
%36451 = load float*, float** %9
%36452 = getelementptr inbounds float, float* %36451, i64 1
%36453 = load float, float* %36452
%36454 = fsub float %36450, %36453
%36455 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %36454, float* %36455
%36456 = load float*, float** %11
%36457 = getelementptr inbounds float, float* %36456, i64 2
%36458 = load float, float* %36457
%36459 = load float*, float** %9
%36460 = getelementptr inbounds float, float* %36459, i64 2
%36461 = load float, float* %36460
%36462 = fsub float %36458, %36461
%36463 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %36462, float* %36463
%36464 = load float*, float** %10
%36465 = getelementptr inbounds float, float* %36464, i64 0
%36466 = load float, float* %36465
%36467 = load float*, float** %9
%36468 = getelementptr inbounds float, float* %36467, i64 0
%36469 = load float, float* %36468
%36470 = fsub float %36466, %36469
%36471 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %36470, float* %36471
%36472 = load float*, float** %10
%36473 = getelementptr inbounds float, float* %36472, i64 1
%36474 = load float, float* %36473
%36475 = load float*, float** %9
%36476 = getelementptr inbounds float, float* %36475, i64 1
%36477 = load float, float* %36476
%36478 = fsub float %36474, %36477
%36479 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %36478, float* %36479
%36480 = load float*, float** %10
%36481 = getelementptr inbounds float, float* %36480, i64 2
%36482 = load float, float* %36481
%36483 = load float*, float** %9
%36484 = getelementptr inbounds float, float* %36483, i64 2
%36485 = load float, float* %36484
%36486 = fsub float %36482, %36485
%36487 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %36486, float* %36487
%36488 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%36489 = load float, float* %36488
%36490 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%36491 = load float, float* %36490
%36492 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%36493 = load float, float* %36492
%36494 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%36495 = load float, float* %36494
%36496 = fmul float %36493, %36495
%36497 = fneg float %36496
%36498 = call float @llvm.fmuladd.f32(float %36489, float %36491, float %36497)
%36499 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %36498, float* %36499
%36500 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%36501 = load float, float* %36500
%36502 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%36503 = load float, float* %36502
%36504 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%36505 = load float, float* %36504
%36506 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%36507 = load float, float* %36506
%36508 = fmul float %36505, %36507
%36509 = fneg float %36508
%36510 = call float @llvm.fmuladd.f32(float %36501, float %36503, float %36509)
%36511 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %36510, float* %36511
%36512 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%36513 = load float, float* %36512
%36514 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%36515 = load float, float* %36514
%36516 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%36517 = load float, float* %36516
%36518 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%36519 = load float, float* %36518
%36520 = fmul float %36517, %36519
%36521 = fneg float %36520
%36522 = call float @llvm.fmuladd.f32(float %36513, float %36515, float %36521)
%36523 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %36522, float* %36523
%36524 = load float*, float** %13
%36525 = getelementptr inbounds float, float* %36524, i64 0
%36526 = load float, float* %36525
%36527 = load float*, float** %9
%36528 = getelementptr inbounds float, float* %36527, i64 0
%36529 = load float, float* %36528
%36530 = fsub float %36526, %36529
%36531 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %36530, float* %36531
%36532 = load float*, float** %13
%36533 = getelementptr inbounds float, float* %36532, i64 1
%36534 = load float, float* %36533
%36535 = load float*, float** %9
%36536 = getelementptr inbounds float, float* %36535, i64 1
%36537 = load float, float* %36536
%36538 = fsub float %36534, %36537
%36539 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %36538, float* %36539
%36540 = load float*, float** %13
%36541 = getelementptr inbounds float, float* %36540, i64 2
%36542 = load float, float* %36541
%36543 = load float*, float** %9
%36544 = getelementptr inbounds float, float* %36543, i64 2
%36545 = load float, float* %36544
%36546 = fsub float %36542, %36545
%36547 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %36546, float* %36547
%36548 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%36549 = load float, float* %36548
%36550 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%36551 = load float, float* %36550
%36552 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%36553 = load float, float* %36552
%36554 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%36555 = load float, float* %36554
%36556 = fmul float %36553, %36555
%36557 = call float @llvm.fmuladd.f32(float %36549, float %36551, float %36556)
%36558 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%36559 = load float, float* %36558
%36560 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%36561 = load float, float* %36560
%36562 = call float @llvm.fmuladd.f32(float %36559, float %36561, float %36557)
%36563 = fcmp ogt float %36562, 0.000000e+00
br i1 %36563, label %36564, label %36565
36564: ; preds = %36439
store i32 0, i32* %7
br label %37477
36565: ; preds = %36439
%36566 = load float*, float** %11
%36567 = getelementptr inbounds float, float* %36566, i64 0
%36568 = load float, float* %36567
%36569 = load float*, float** %10
%36570 = getelementptr inbounds float, float* %36569, i64 0
%36571 = load float, float* %36570
%36572 = fsub float %36568, %36571
%36573 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %36572, float* %36573
%36574 = load float*, float** %11
%36575 = getelementptr inbounds float, float* %36574, i64 1
%36576 = load float, float* %36575
%36577 = load float*, float** %10
%36578 = getelementptr inbounds float, float* %36577, i64 1
%36579 = load float, float* %36578
%36580 = fsub float %36576, %36579
%36581 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %36580, float* %36581
%36582 = load float*, float** %11
%36583 = getelementptr inbounds float, float* %36582, i64 2
%36584 = load float, float* %36583
%36585 = load float*, float** %10
%36586 = getelementptr inbounds float, float* %36585, i64 2
%36587 = load float, float* %36586
%36588 = fsub float %36584, %36587
%36589 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %36588, float* %36589
%36590 = load float*, float** %8
%36591 = getelementptr inbounds float, float* %36590, i64 0
%36592 = load float, float* %36591
%36593 = load float*, float** %10
%36594 = getelementptr inbounds float, float* %36593, i64 0
%36595 = load float, float* %36594
%36596 = fsub float %36592, %36595
%36597 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %36596, float* %36597
%36598 = load float*, float** %8
%36599 = getelementptr inbounds float, float* %36598, i64 1
%36600 = load float, float* %36599
%36601 = load float*, float** %10
%36602 = getelementptr inbounds float, float* %36601, i64 1
%36603 = load float, float* %36602
%36604 = fsub float %36600, %36603
%36605 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %36604, float* %36605
%36606 = load float*, float** %8
%36607 = getelementptr inbounds float, float* %36606, i64 2
%36608 = load float, float* %36607
%36609 = load float*, float** %10
%36610 = getelementptr inbounds float, float* %36609, i64 2
%36611 = load float, float* %36610
%36612 = fsub float %36608, %36611
%36613 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %36612, float* %36613
%36614 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%36615 = load float, float* %36614
%36616 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%36617 = load float, float* %36616
%36618 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%36619 = load float, float* %36618
%36620 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%36621 = load float, float* %36620
%36622 = fmul float %36619, %36621
%36623 = fneg float %36622
%36624 = call float @llvm.fmuladd.f32(float %36615, float %36617, float %36623)
%36625 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %36624, float* %36625
%36626 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%36627 = load float, float* %36626
%36628 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%36629 = load float, float* %36628
%36630 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%36631 = load float, float* %36630
%36632 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%36633 = load float, float* %36632
%36634 = fmul float %36631, %36633
%36635 = fneg float %36634
%36636 = call float @llvm.fmuladd.f32(float %36627, float %36629, float %36635)
%36637 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %36636, float* %36637
%36638 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%36639 = load float, float* %36638
%36640 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%36641 = load float, float* %36640
%36642 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%36643 = load float, float* %36642
%36644 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%36645 = load float, float* %36644
%36646 = fmul float %36643, %36645
%36647 = fneg float %36646
%36648 = call float @llvm.fmuladd.f32(float %36639, float %36641, float %36647)
%36649 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %36648, float* %36649
%36650 = load float*, float** %12
%36651 = getelementptr inbounds float, float* %36650, i64 0
%36652 = load float, float* %36651
%36653 = load float*, float** %10
%36654 = getelementptr inbounds float, float* %36653, i64 0
%36655 = load float, float* %36654
%36656 = fsub float %36652, %36655
%36657 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %36656, float* %36657
%36658 = load float*, float** %12
%36659 = getelementptr inbounds float, float* %36658, i64 1
%36660 = load float, float* %36659
%36661 = load float*, float** %10
%36662 = getelementptr inbounds float, float* %36661, i64 1
%36663 = load float, float* %36662
%36664 = fsub float %36660, %36663
%36665 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %36664, float* %36665
%36666 = load float*, float** %12
%36667 = getelementptr inbounds float, float* %36666, i64 2
%36668 = load float, float* %36667
%36669 = load float*, float** %10
%36670 = getelementptr inbounds float, float* %36669, i64 2
%36671 = load float, float* %36670
%36672 = fsub float %36668, %36671
%36673 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %36672, float* %36673
%36674 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%36675 = load float, float* %36674
%36676 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%36677 = load float, float* %36676
%36678 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%36679 = load float, float* %36678
%36680 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%36681 = load float, float* %36680
%36682 = fmul float %36679, %36681
%36683 = call float @llvm.fmuladd.f32(float %36675, float %36677, float %36682)
%36684 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%36685 = load float, float* %36684
%36686 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%36687 = load float, float* %36686
%36688 = call float @llvm.fmuladd.f32(float %36685, float %36687, float %36683)
%36689 = fcmp ogt float %36688, 0.000000e+00
br i1 %36689, label %36690, label %36691
36690: ; preds = %36565
store i32 0, i32* %7
br label %37477
36691: ; preds = %36565
store i32 1, i32* %7
br label %37477
36692: ; preds = %36436
%36693 = load float*, float** %13
%36694 = getelementptr inbounds float, float* %36693, i64 0
%36695 = load float, float* %36694
%36696 = load float*, float** %8
%36697 = getelementptr inbounds float, float* %36696, i64 0
%36698 = load float, float* %36697
%36699 = fsub float %36695, %36698
%36700 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %36699, float* %36700
%36701 = load float*, float** %13
%36702 = getelementptr inbounds float, float* %36701, i64 1
%36703 = load float, float* %36702
%36704 = load float*, float** %8
%36705 = getelementptr inbounds float, float* %36704, i64 1
%36706 = load float, float* %36705
%36707 = fsub float %36703, %36706
%36708 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %36707, float* %36708
%36709 = load float*, float** %13
%36710 = getelementptr inbounds float, float* %36709, i64 2
%36711 = load float, float* %36710
%36712 = load float*, float** %8
%36713 = getelementptr inbounds float, float* %36712, i64 2
%36714 = load float, float* %36713
%36715 = fsub float %36711, %36714
%36716 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %36715, float* %36716
%36717 = load float*, float** %10
%36718 = getelementptr inbounds float, float* %36717, i64 0
%36719 = load float, float* %36718
%36720 = load float*, float** %8
%36721 = getelementptr inbounds float, float* %36720, i64 0
%36722 = load float, float* %36721
%36723 = fsub float %36719, %36722
%36724 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %36723, float* %36724
%36725 = load float*, float** %10
%36726 = getelementptr inbounds float, float* %36725, i64 1
%36727 = load float, float* %36726
%36728 = load float*, float** %8
%36729 = getelementptr inbounds float, float* %36728, i64 1
%36730 = load float, float* %36729
%36731 = fsub float %36727, %36730
%36732 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %36731, float* %36732
%36733 = load float*, float** %10
%36734 = getelementptr inbounds float, float* %36733, i64 2
%36735 = load float, float* %36734
%36736 = load float*, float** %8
%36737 = getelementptr inbounds float, float* %36736, i64 2
%36738 = load float, float* %36737
%36739 = fsub float %36735, %36738
%36740 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %36739, float* %36740
%36741 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%36742 = load float, float* %36741
%36743 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%36744 = load float, float* %36743
%36745 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%36746 = load float, float* %36745
%36747 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%36748 = load float, float* %36747
%36749 = fmul float %36746, %36748
%36750 = fneg float %36749
%36751 = call float @llvm.fmuladd.f32(float %36742, float %36744, float %36750)
%36752 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %36751, float* %36752
%36753 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%36754 = load float, float* %36753
%36755 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%36756 = load float, float* %36755
%36757 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%36758 = load float, float* %36757
%36759 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%36760 = load float, float* %36759
%36761 = fmul float %36758, %36760
%36762 = fneg float %36761
%36763 = call float @llvm.fmuladd.f32(float %36754, float %36756, float %36762)
%36764 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %36763, float* %36764
%36765 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%36766 = load float, float* %36765
%36767 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%36768 = load float, float* %36767
%36769 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%36770 = load float, float* %36769
%36771 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%36772 = load float, float* %36771
%36773 = fmul float %36770, %36772
%36774 = fneg float %36773
%36775 = call float @llvm.fmuladd.f32(float %36766, float %36768, float %36774)
%36776 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %36775, float* %36776
%36777 = load float*, float** %12
%36778 = getelementptr inbounds float, float* %36777, i64 0
%36779 = load float, float* %36778
%36780 = load float*, float** %8
%36781 = getelementptr inbounds float, float* %36780, i64 0
%36782 = load float, float* %36781
%36783 = fsub float %36779, %36782
%36784 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %36783, float* %36784
%36785 = load float*, float** %12
%36786 = getelementptr inbounds float, float* %36785, i64 1
%36787 = load float, float* %36786
%36788 = load float*, float** %8
%36789 = getelementptr inbounds float, float* %36788, i64 1
%36790 = load float, float* %36789
%36791 = fsub float %36787, %36790
%36792 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %36791, float* %36792
%36793 = load float*, float** %12
%36794 = getelementptr inbounds float, float* %36793, i64 2
%36795 = load float, float* %36794
%36796 = load float*, float** %8
%36797 = getelementptr inbounds float, float* %36796, i64 2
%36798 = load float, float* %36797
%36799 = fsub float %36795, %36798
%36800 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %36799, float* %36800
%36801 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%36802 = load float, float* %36801
%36803 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%36804 = load float, float* %36803
%36805 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%36806 = load float, float* %36805
%36807 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%36808 = load float, float* %36807
%36809 = fmul float %36806, %36808
%36810 = call float @llvm.fmuladd.f32(float %36802, float %36804, float %36809)
%36811 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%36812 = load float, float* %36811
%36813 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%36814 = load float, float* %36813
%36815 = call float @llvm.fmuladd.f32(float %36812, float %36814, float %36810)
%36816 = fcmp ogt float %36815, 0.000000e+00
br i1 %36816, label %36817, label %36818
36817: ; preds = %36692
store i32 0, i32* %7
br label %37477
36818: ; preds = %36692
%36819 = load float*, float** %13
%36820 = getelementptr inbounds float, float* %36819, i64 0
%36821 = load float, float* %36820
%36822 = load float*, float** %10
%36823 = getelementptr inbounds float, float* %36822, i64 0
%36824 = load float, float* %36823
%36825 = fsub float %36821, %36824
%36826 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %36825, float* %36826
%36827 = load float*, float** %13
%36828 = getelementptr inbounds float, float* %36827, i64 1
%36829 = load float, float* %36828
%36830 = load float*, float** %10
%36831 = getelementptr inbounds float, float* %36830, i64 1
%36832 = load float, float* %36831
%36833 = fsub float %36829, %36832
%36834 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %36833, float* %36834
%36835 = load float*, float** %13
%36836 = getelementptr inbounds float, float* %36835, i64 2
%36837 = load float, float* %36836
%36838 = load float*, float** %10
%36839 = getelementptr inbounds float, float* %36838, i64 2
%36840 = load float, float* %36839
%36841 = fsub float %36837, %36840
%36842 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %36841, float* %36842
%36843 = load float*, float** %9
%36844 = getelementptr inbounds float, float* %36843, i64 0
%36845 = load float, float* %36844
%36846 = load float*, float** %10
%36847 = getelementptr inbounds float, float* %36846, i64 0
%36848 = load float, float* %36847
%36849 = fsub float %36845, %36848
%36850 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %36849, float* %36850
%36851 = load float*, float** %9
%36852 = getelementptr inbounds float, float* %36851, i64 1
%36853 = load float, float* %36852
%36854 = load float*, float** %10
%36855 = getelementptr inbounds float, float* %36854, i64 1
%36856 = load float, float* %36855
%36857 = fsub float %36853, %36856
%36858 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %36857, float* %36858
%36859 = load float*, float** %9
%36860 = getelementptr inbounds float, float* %36859, i64 2
%36861 = load float, float* %36860
%36862 = load float*, float** %10
%36863 = getelementptr inbounds float, float* %36862, i64 2
%36864 = load float, float* %36863
%36865 = fsub float %36861, %36864
%36866 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %36865, float* %36866
%36867 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%36868 = load float, float* %36867
%36869 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%36870 = load float, float* %36869
%36871 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%36872 = load float, float* %36871
%36873 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%36874 = load float, float* %36873
%36875 = fmul float %36872, %36874
%36876 = fneg float %36875
%36877 = call float @llvm.fmuladd.f32(float %36868, float %36870, float %36876)
%36878 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %36877, float* %36878
%36879 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%36880 = load float, float* %36879
%36881 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%36882 = load float, float* %36881
%36883 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%36884 = load float, float* %36883
%36885 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%36886 = load float, float* %36885
%36887 = fmul float %36884, %36886
%36888 = fneg float %36887
%36889 = call float @llvm.fmuladd.f32(float %36880, float %36882, float %36888)
%36890 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %36889, float* %36890
%36891 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%36892 = load float, float* %36891
%36893 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%36894 = load float, float* %36893
%36895 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%36896 = load float, float* %36895
%36897 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%36898 = load float, float* %36897
%36899 = fmul float %36896, %36898
%36900 = fneg float %36899
%36901 = call float @llvm.fmuladd.f32(float %36892, float %36894, float %36900)
%36902 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %36901, float* %36902
%36903 = load float*, float** %11
%36904 = getelementptr inbounds float, float* %36903, i64 0
%36905 = load float, float* %36904
%36906 = load float*, float** %10
%36907 = getelementptr inbounds float, float* %36906, i64 0
%36908 = load float, float* %36907
%36909 = fsub float %36905, %36908
%36910 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %36909, float* %36910
%36911 = load float*, float** %11
%36912 = getelementptr inbounds float, float* %36911, i64 1
%36913 = load float, float* %36912
%36914 = load float*, float** %10
%36915 = getelementptr inbounds float, float* %36914, i64 1
%36916 = load float, float* %36915
%36917 = fsub float %36913, %36916
%36918 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %36917, float* %36918
%36919 = load float*, float** %11
%36920 = getelementptr inbounds float, float* %36919, i64 2
%36921 = load float, float* %36920
%36922 = load float*, float** %10
%36923 = getelementptr inbounds float, float* %36922, i64 2
%36924 = load float, float* %36923
%36925 = fsub float %36921, %36924
%36926 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %36925, float* %36926
%36927 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%36928 = load float, float* %36927
%36929 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%36930 = load float, float* %36929
%36931 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%36932 = load float, float* %36931
%36933 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%36934 = load float, float* %36933
%36935 = fmul float %36932, %36934
%36936 = call float @llvm.fmuladd.f32(float %36928, float %36930, float %36935)
%36937 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%36938 = load float, float* %36937
%36939 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%36940 = load float, float* %36939
%36941 = call float @llvm.fmuladd.f32(float %36938, float %36940, float %36936)
%36942 = fcmp ogt float %36941, 0.000000e+00
br i1 %36942, label %36943, label %36944
36943: ; preds = %36818
store i32 0, i32* %7
br label %37477
36944: ; preds = %36818
store i32 1, i32* %7
br label %37477
36945: ; preds = %36433
%36946 = load float, float* %18
%36947 = fcmp ogt float %36946, 0.000000e+00
br i1 %36947, label %36948, label %37201
36948: ; preds = %36945
%36949 = load float*, float** %12
%36950 = getelementptr inbounds float, float* %36949, i64 0
%36951 = load float, float* %36950
%36952 = load float*, float** %8
%36953 = getelementptr inbounds float, float* %36952, i64 0
%36954 = load float, float* %36953
%36955 = fsub float %36951, %36954
%36956 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %36955, float* %36956
%36957 = load float*, float** %12
%36958 = getelementptr inbounds float, float* %36957, i64 1
%36959 = load float, float* %36958
%36960 = load float*, float** %8
%36961 = getelementptr inbounds float, float* %36960, i64 1
%36962 = load float, float* %36961
%36963 = fsub float %36959, %36962
%36964 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %36963, float* %36964
%36965 = load float*, float** %12
%36966 = getelementptr inbounds float, float* %36965, i64 2
%36967 = load float, float* %36966
%36968 = load float*, float** %8
%36969 = getelementptr inbounds float, float* %36968, i64 2
%36970 = load float, float* %36969
%36971 = fsub float %36967, %36970
%36972 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %36971, float* %36972
%36973 = load float*, float** %10
%36974 = getelementptr inbounds float, float* %36973, i64 0
%36975 = load float, float* %36974
%36976 = load float*, float** %8
%36977 = getelementptr inbounds float, float* %36976, i64 0
%36978 = load float, float* %36977
%36979 = fsub float %36975, %36978
%36980 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %36979, float* %36980
%36981 = load float*, float** %10
%36982 = getelementptr inbounds float, float* %36981, i64 1
%36983 = load float, float* %36982
%36984 = load float*, float** %8
%36985 = getelementptr inbounds float, float* %36984, i64 1
%36986 = load float, float* %36985
%36987 = fsub float %36983, %36986
%36988 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %36987, float* %36988
%36989 = load float*, float** %10
%36990 = getelementptr inbounds float, float* %36989, i64 2
%36991 = load float, float* %36990
%36992 = load float*, float** %8
%36993 = getelementptr inbounds float, float* %36992, i64 2
%36994 = load float, float* %36993
%36995 = fsub float %36991, %36994
%36996 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %36995, float* %36996
%36997 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%36998 = load float, float* %36997
%36999 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%37000 = load float, float* %36999
%37001 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%37002 = load float, float* %37001
%37003 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%37004 = load float, float* %37003
%37005 = fmul float %37002, %37004
%37006 = fneg float %37005
%37007 = call float @llvm.fmuladd.f32(float %36998, float %37000, float %37006)
%37008 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %37007, float* %37008
%37009 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%37010 = load float, float* %37009
%37011 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%37012 = load float, float* %37011
%37013 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%37014 = load float, float* %37013
%37015 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%37016 = load float, float* %37015
%37017 = fmul float %37014, %37016
%37018 = fneg float %37017
%37019 = call float @llvm.fmuladd.f32(float %37010, float %37012, float %37018)
%37020 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %37019, float* %37020
%37021 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%37022 = load float, float* %37021
%37023 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%37024 = load float, float* %37023
%37025 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%37026 = load float, float* %37025
%37027 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%37028 = load float, float* %37027
%37029 = fmul float %37026, %37028
%37030 = fneg float %37029
%37031 = call float @llvm.fmuladd.f32(float %37022, float %37024, float %37030)
%37032 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %37031, float* %37032
%37033 = load float*, float** %11
%37034 = getelementptr inbounds float, float* %37033, i64 0
%37035 = load float, float* %37034
%37036 = load float*, float** %8
%37037 = getelementptr inbounds float, float* %37036, i64 0
%37038 = load float, float* %37037
%37039 = fsub float %37035, %37038
%37040 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %37039, float* %37040
%37041 = load float*, float** %11
%37042 = getelementptr inbounds float, float* %37041, i64 1
%37043 = load float, float* %37042
%37044 = load float*, float** %8
%37045 = getelementptr inbounds float, float* %37044, i64 1
%37046 = load float, float* %37045
%37047 = fsub float %37043, %37046
%37048 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %37047, float* %37048
%37049 = load float*, float** %11
%37050 = getelementptr inbounds float, float* %37049, i64 2
%37051 = load float, float* %37050
%37052 = load float*, float** %8
%37053 = getelementptr inbounds float, float* %37052, i64 2
%37054 = load float, float* %37053
%37055 = fsub float %37051, %37054
%37056 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %37055, float* %37056
%37057 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%37058 = load float, float* %37057
%37059 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%37060 = load float, float* %37059
%37061 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%37062 = load float, float* %37061
%37063 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%37064 = load float, float* %37063
%37065 = fmul float %37062, %37064
%37066 = call float @llvm.fmuladd.f32(float %37058, float %37060, float %37065)
%37067 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%37068 = load float, float* %37067
%37069 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%37070 = load float, float* %37069
%37071 = call float @llvm.fmuladd.f32(float %37068, float %37070, float %37066)
%37072 = fcmp ogt float %37071, 0.000000e+00
br i1 %37072, label %37073, label %37074
37073: ; preds = %36948
store i32 0, i32* %7
br label %37477
37074: ; preds = %36948
%37075 = load float*, float** %12
%37076 = getelementptr inbounds float, float* %37075, i64 0
%37077 = load float, float* %37076
%37078 = load float*, float** %10
%37079 = getelementptr inbounds float, float* %37078, i64 0
%37080 = load float, float* %37079
%37081 = fsub float %37077, %37080
%37082 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %37081, float* %37082
%37083 = load float*, float** %12
%37084 = getelementptr inbounds float, float* %37083, i64 1
%37085 = load float, float* %37084
%37086 = load float*, float** %10
%37087 = getelementptr inbounds float, float* %37086, i64 1
%37088 = load float, float* %37087
%37089 = fsub float %37085, %37088
%37090 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %37089, float* %37090
%37091 = load float*, float** %12
%37092 = getelementptr inbounds float, float* %37091, i64 2
%37093 = load float, float* %37092
%37094 = load float*, float** %10
%37095 = getelementptr inbounds float, float* %37094, i64 2
%37096 = load float, float* %37095
%37097 = fsub float %37093, %37096
%37098 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %37097, float* %37098
%37099 = load float*, float** %9
%37100 = getelementptr inbounds float, float* %37099, i64 0
%37101 = load float, float* %37100
%37102 = load float*, float** %10
%37103 = getelementptr inbounds float, float* %37102, i64 0
%37104 = load float, float* %37103
%37105 = fsub float %37101, %37104
%37106 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %37105, float* %37106
%37107 = load float*, float** %9
%37108 = getelementptr inbounds float, float* %37107, i64 1
%37109 = load float, float* %37108
%37110 = load float*, float** %10
%37111 = getelementptr inbounds float, float* %37110, i64 1
%37112 = load float, float* %37111
%37113 = fsub float %37109, %37112
%37114 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %37113, float* %37114
%37115 = load float*, float** %9
%37116 = getelementptr inbounds float, float* %37115, i64 2
%37117 = load float, float* %37116
%37118 = load float*, float** %10
%37119 = getelementptr inbounds float, float* %37118, i64 2
%37120 = load float, float* %37119
%37121 = fsub float %37117, %37120
%37122 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %37121, float* %37122
%37123 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%37124 = load float, float* %37123
%37125 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%37126 = load float, float* %37125
%37127 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%37128 = load float, float* %37127
%37129 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%37130 = load float, float* %37129
%37131 = fmul float %37128, %37130
%37132 = fneg float %37131
%37133 = call float @llvm.fmuladd.f32(float %37124, float %37126, float %37132)
%37134 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %37133, float* %37134
%37135 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%37136 = load float, float* %37135
%37137 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%37138 = load float, float* %37137
%37139 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%37140 = load float, float* %37139
%37141 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%37142 = load float, float* %37141
%37143 = fmul float %37140, %37142
%37144 = fneg float %37143
%37145 = call float @llvm.fmuladd.f32(float %37136, float %37138, float %37144)
%37146 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %37145, float* %37146
%37147 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%37148 = load float, float* %37147
%37149 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%37150 = load float, float* %37149
%37151 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%37152 = load float, float* %37151
%37153 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%37154 = load float, float* %37153
%37155 = fmul float %37152, %37154
%37156 = fneg float %37155
%37157 = call float @llvm.fmuladd.f32(float %37148, float %37150, float %37156)
%37158 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %37157, float* %37158
%37159 = load float*, float** %13
%37160 = getelementptr inbounds float, float* %37159, i64 0
%37161 = load float, float* %37160
%37162 = load float*, float** %10
%37163 = getelementptr inbounds float, float* %37162, i64 0
%37164 = load float, float* %37163
%37165 = fsub float %37161, %37164
%37166 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %37165, float* %37166
%37167 = load float*, float** %13
%37168 = getelementptr inbounds float, float* %37167, i64 1
%37169 = load float, float* %37168
%37170 = load float*, float** %10
%37171 = getelementptr inbounds float, float* %37170, i64 1
%37172 = load float, float* %37171
%37173 = fsub float %37169, %37172
%37174 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %37173, float* %37174
%37175 = load float*, float** %13
%37176 = getelementptr inbounds float, float* %37175, i64 2
%37177 = load float, float* %37176
%37178 = load float*, float** %10
%37179 = getelementptr inbounds float, float* %37178, i64 2
%37180 = load float, float* %37179
%37181 = fsub float %37177, %37180
%37182 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %37181, float* %37182
%37183 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%37184 = load float, float* %37183
%37185 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%37186 = load float, float* %37185
%37187 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%37188 = load float, float* %37187
%37189 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%37190 = load float, float* %37189
%37191 = fmul float %37188, %37190
%37192 = call float @llvm.fmuladd.f32(float %37184, float %37186, float %37191)
%37193 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%37194 = load float, float* %37193
%37195 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%37196 = load float, float* %37195
%37197 = call float @llvm.fmuladd.f32(float %37194, float %37196, float %37192)
%37198 = fcmp ogt float %37197, 0.000000e+00
br i1 %37198, label %37199, label %37200
37199: ; preds = %37074
store i32 0, i32* %7
br label %37477
37200: ; preds = %37074
store i32 1, i32* %7
br label %37477
37201: ; preds = %36945
%37202 = load float, float* %18
%37203 = fcmp olt float %37202, 0.000000e+00
br i1 %37203, label %37204, label %37457
37204: ; preds = %37201
%37205 = load float*, float** %12
%37206 = getelementptr inbounds float, float* %37205, i64 0
%37207 = load float, float* %37206
%37208 = load float*, float** %9
%37209 = getelementptr inbounds float, float* %37208, i64 0
%37210 = load float, float* %37209
%37211 = fsub float %37207, %37210
%37212 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %37211, float* %37212
%37213 = load float*, float** %12
%37214 = getelementptr inbounds float, float* %37213, i64 1
%37215 = load float, float* %37214
%37216 = load float*, float** %9
%37217 = getelementptr inbounds float, float* %37216, i64 1
%37218 = load float, float* %37217
%37219 = fsub float %37215, %37218
%37220 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %37219, float* %37220
%37221 = load float*, float** %12
%37222 = getelementptr inbounds float, float* %37221, i64 2
%37223 = load float, float* %37222
%37224 = load float*, float** %9
%37225 = getelementptr inbounds float, float* %37224, i64 2
%37226 = load float, float* %37225
%37227 = fsub float %37223, %37226
%37228 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %37227, float* %37228
%37229 = load float*, float** %10
%37230 = getelementptr inbounds float, float* %37229, i64 0
%37231 = load float, float* %37230
%37232 = load float*, float** %9
%37233 = getelementptr inbounds float, float* %37232, i64 0
%37234 = load float, float* %37233
%37235 = fsub float %37231, %37234
%37236 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %37235, float* %37236
%37237 = load float*, float** %10
%37238 = getelementptr inbounds float, float* %37237, i64 1
%37239 = load float, float* %37238
%37240 = load float*, float** %9
%37241 = getelementptr inbounds float, float* %37240, i64 1
%37242 = load float, float* %37241
%37243 = fsub float %37239, %37242
%37244 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %37243, float* %37244
%37245 = load float*, float** %10
%37246 = getelementptr inbounds float, float* %37245, i64 2
%37247 = load float, float* %37246
%37248 = load float*, float** %9
%37249 = getelementptr inbounds float, float* %37248, i64 2
%37250 = load float, float* %37249
%37251 = fsub float %37247, %37250
%37252 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %37251, float* %37252
%37253 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%37254 = load float, float* %37253
%37255 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%37256 = load float, float* %37255
%37257 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%37258 = load float, float* %37257
%37259 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%37260 = load float, float* %37259
%37261 = fmul float %37258, %37260
%37262 = fneg float %37261
%37263 = call float @llvm.fmuladd.f32(float %37254, float %37256, float %37262)
%37264 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %37263, float* %37264
%37265 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%37266 = load float, float* %37265
%37267 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%37268 = load float, float* %37267
%37269 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%37270 = load float, float* %37269
%37271 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%37272 = load float, float* %37271
%37273 = fmul float %37270, %37272
%37274 = fneg float %37273
%37275 = call float @llvm.fmuladd.f32(float %37266, float %37268, float %37274)
%37276 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %37275, float* %37276
%37277 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%37278 = load float, float* %37277
%37279 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%37280 = load float, float* %37279
%37281 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%37282 = load float, float* %37281
%37283 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%37284 = load float, float* %37283
%37285 = fmul float %37282, %37284
%37286 = fneg float %37285
%37287 = call float @llvm.fmuladd.f32(float %37278, float %37280, float %37286)
%37288 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %37287, float* %37288
%37289 = load float*, float** %11
%37290 = getelementptr inbounds float, float* %37289, i64 0
%37291 = load float, float* %37290
%37292 = load float*, float** %9
%37293 = getelementptr inbounds float, float* %37292, i64 0
%37294 = load float, float* %37293
%37295 = fsub float %37291, %37294
%37296 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %37295, float* %37296
%37297 = load float*, float** %11
%37298 = getelementptr inbounds float, float* %37297, i64 1
%37299 = load float, float* %37298
%37300 = load float*, float** %9
%37301 = getelementptr inbounds float, float* %37300, i64 1
%37302 = load float, float* %37301
%37303 = fsub float %37299, %37302
%37304 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %37303, float* %37304
%37305 = load float*, float** %11
%37306 = getelementptr inbounds float, float* %37305, i64 2
%37307 = load float, float* %37306
%37308 = load float*, float** %9
%37309 = getelementptr inbounds float, float* %37308, i64 2
%37310 = load float, float* %37309
%37311 = fsub float %37307, %37310
%37312 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %37311, float* %37312
%37313 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%37314 = load float, float* %37313
%37315 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%37316 = load float, float* %37315
%37317 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%37318 = load float, float* %37317
%37319 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%37320 = load float, float* %37319
%37321 = fmul float %37318, %37320
%37322 = call float @llvm.fmuladd.f32(float %37314, float %37316, float %37321)
%37323 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%37324 = load float, float* %37323
%37325 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%37326 = load float, float* %37325
%37327 = call float @llvm.fmuladd.f32(float %37324, float %37326, float %37322)
%37328 = fcmp ogt float %37327, 0.000000e+00
br i1 %37328, label %37329, label %37330
37329: ; preds = %37204
store i32 0, i32* %7
br label %37477
37330: ; preds = %37204
%37331 = load float*, float** %12
%37332 = getelementptr inbounds float, float* %37331, i64 0
%37333 = load float, float* %37332
%37334 = load float*, float** %10
%37335 = getelementptr inbounds float, float* %37334, i64 0
%37336 = load float, float* %37335
%37337 = fsub float %37333, %37336
%37338 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %37337, float* %37338
%37339 = load float*, float** %12
%37340 = getelementptr inbounds float, float* %37339, i64 1
%37341 = load float, float* %37340
%37342 = load float*, float** %10
%37343 = getelementptr inbounds float, float* %37342, i64 1
%37344 = load float, float* %37343
%37345 = fsub float %37341, %37344
%37346 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %37345, float* %37346
%37347 = load float*, float** %12
%37348 = getelementptr inbounds float, float* %37347, i64 2
%37349 = load float, float* %37348
%37350 = load float*, float** %10
%37351 = getelementptr inbounds float, float* %37350, i64 2
%37352 = load float, float* %37351
%37353 = fsub float %37349, %37352
%37354 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %37353, float* %37354
%37355 = load float*, float** %8
%37356 = getelementptr inbounds float, float* %37355, i64 0
%37357 = load float, float* %37356
%37358 = load float*, float** %10
%37359 = getelementptr inbounds float, float* %37358, i64 0
%37360 = load float, float* %37359
%37361 = fsub float %37357, %37360
%37362 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
store float %37361, float* %37362
%37363 = load float*, float** %8
%37364 = getelementptr inbounds float, float* %37363, i64 1
%37365 = load float, float* %37364
%37366 = load float*, float** %10
%37367 = getelementptr inbounds float, float* %37366, i64 1
%37368 = load float, float* %37367
%37369 = fsub float %37365, %37368
%37370 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
store float %37369, float* %37370
%37371 = load float*, float** %8
%37372 = getelementptr inbounds float, float* %37371, i64 2
%37373 = load float, float* %37372
%37374 = load float*, float** %10
%37375 = getelementptr inbounds float, float* %37374, i64 2
%37376 = load float, float* %37375
%37377 = fsub float %37373, %37376
%37378 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
store float %37377, float* %37378
%37379 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%37380 = load float, float* %37379
%37381 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%37382 = load float, float* %37381
%37383 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%37384 = load float, float* %37383
%37385 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%37386 = load float, float* %37385
%37387 = fmul float %37384, %37386
%37388 = fneg float %37387
%37389 = call float @llvm.fmuladd.f32(float %37380, float %37382, float %37388)
%37390 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
store float %37389, float* %37390
%37391 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%37392 = load float, float* %37391
%37393 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%37394 = load float, float* %37393
%37395 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%37396 = load float, float* %37395
%37397 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 2
%37398 = load float, float* %37397
%37399 = fmul float %37396, %37398
%37400 = fneg float %37399
%37401 = call float @llvm.fmuladd.f32(float %37392, float %37394, float %37400)
%37402 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
store float %37401, float* %37402
%37403 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%37404 = load float, float* %37403
%37405 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 1
%37406 = load float, float* %37405
%37407 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%37408 = load float, float* %37407
%37409 = getelementptr inbounds [3 x float], [3 x float]* %21, i64 0, i64 0
%37410 = load float, float* %37409
%37411 = fmul float %37408, %37410
%37412 = fneg float %37411
%37413 = call float @llvm.fmuladd.f32(float %37404, float %37406, float %37412)
%37414 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
store float %37413, float* %37414
%37415 = load float*, float** %13
%37416 = getelementptr inbounds float, float* %37415, i64 0
%37417 = load float, float* %37416
%37418 = load float*, float** %10
%37419 = getelementptr inbounds float, float* %37418, i64 0
%37420 = load float, float* %37419
%37421 = fsub float %37417, %37420
%37422 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
store float %37421, float* %37422
%37423 = load float*, float** %13
%37424 = getelementptr inbounds float, float* %37423, i64 1
%37425 = load float, float* %37424
%37426 = load float*, float** %10
%37427 = getelementptr inbounds float, float* %37426, i64 1
%37428 = load float, float* %37427
%37429 = fsub float %37425, %37428
%37430 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
store float %37429, float* %37430
%37431 = load float*, float** %13
%37432 = getelementptr inbounds float, float* %37431, i64 2
%37433 = load float, float* %37432
%37434 = load float*, float** %10
%37435 = getelementptr inbounds float, float* %37434, i64 2
%37436 = load float, float* %37435
%37437 = fsub float %37433, %37436
%37438 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
store float %37437, float* %37438
%37439 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 0
%37440 = load float, float* %37439
%37441 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%37442 = load float, float* %37441
%37443 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 1
%37444 = load float, float* %37443
%37445 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 1
%37446 = load float, float* %37445
%37447 = fmul float %37444, %37446
%37448 = call float @llvm.fmuladd.f32(float %37440, float %37442, float %37447)
%37449 = getelementptr inbounds [3 x float], [3 x float]* %20, i64 0, i64 2
%37450 = load float, float* %37449
%37451 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 2
%37452 = load float, float* %37451
%37453 = call float @llvm.fmuladd.f32(float %37450, float %37452, float %37448)
%37454 = fcmp ogt float %37453, 0.000000e+00
br i1 %37454, label %37455, label %37456
37455: ; preds = %37330
store i32 0, i32* %7
br label %37477
37456: ; preds = %37330
store i32 1, i32* %7
br label %37477
37457: ; preds = %37201
%37458 = load float*, float** %10
%37459 = load float*, float** %8
%37460 = load float*, float** %9
%37461 = load float*, float** %11
%37462 = load float*, float** %13
%37463 = load float*, float** %12
%37464 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%37465 = getelementptr inbounds [3 x float], [3 x float]* %23, i64 0, i64 0
%37466 = call i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...) bitcast (i32 (...)* @coplanar_tri_tri3d to i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...)*)(float* %37458, float* %37459, float* %37460, float* %37461, float* %37462, float* %37463, float* %37464, float* %37465)
store i32 %37466, i32* %7
br label %37477
37467: ; preds = %34382
%37468 = load float*, float** %8
%37469 = load float*, float** %9
%37470 = load float*, float** %10
%37471 = load float*, float** %11
%37472 = load float*, float** %12
%37473 = load float*, float** %13
%37474 = getelementptr inbounds [3 x float], [3 x float]* %22, i64 0, i64 0
%37475 = getelementptr inbounds [3 x float], [3 x float]* %23, i64 0, i64 0
%37476 = call i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...) bitcast (i32 (...)* @coplanar_tri_tri3d to i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...)*)(float* %37468, float* %37469, float* %37470, float* %37471, float* %37472, float* %37473, float* %37474, float* %37475)
store i32 %37476, i32* %7
br label %37477
37477: ; preds = %37467, %37457, %37456, %37455, %37329, %37200, %37199, %37073, %36944, %36943, %36817, %36691, %36690, %36564, %36432, %36431, %36305, %36179, %36178, %36052, %35920, %35919, %35793, %35667, %35666, %35540, %35411, %35410, %35284, %35152, %35151, %35025, %34899, %34898, %34772, %34643, %34642, %34516, %34372, %34371, %34370, %34244, %34115, %34114, %33988, %33859, %33858, %33732, %33606, %33605, %33479, %33347, %33346, %33220, %33094, %33093, %32967, %32835, %32834, %32708, %32582, %32581, %32455, %32326, %32325, %32199, %32067, %32066, %31940, %31814, %31813, %31687, %31558, %31557, %31431, %31287, %31286, %31285, %31159, %31030, %31029, %30903, %30774, %30773, %30647, %30521, %30520, %30394, %30262, %30261, %30135, %30009, %30008, %29882, %29750, %29749, %29623, %29497, %29496, %29370, %29241, %29240, %29114, %28982, %28981, %28855, %28729, %28728, %28602, %28473, %28472, %28346, %28205, %28204, %28203, %28077, %27948, %27947, %27821, %27692, %27691, %27565, %27439, %27438, %27312, %27180, %27179, %27053, %26927, %26926, %26800, %26668, %26667, %26541, %26415, %26414, %26288, %26159, %26158, %26032, %25900, %25899, %25773, %25647, %25646, %25520, %25391, %25390, %25264, %25117, %25116, %25115, %24989, %24860, %24859, %24733, %24604, %24603, %24477, %24351, %24350, %24224, %24092, %24091, %23965, %23839, %23838, %23712, %23580, %23579, %23453, %23327, %23326, %23200, %23071, %23070, %22944, %22812, %22811, %22685, %22559, %22558, %22432, %22303, %22302, %22176, %22035, %22034, %22033, %21907, %21778, %21777, %21651, %21522, %21521, %21395, %21269, %21268, %21142, %21010, %21009, %20883, %20757, %20756, %20630, %20498, %20497, %20371, %20245, %20244, %20118, %19989, %19988, %19862, %19730, %19729, %19603, %19477, %19476, %19350, %19221, %19220, %19094, %18947, %18946, %18945, %18819, %18690, %18689, %18563, %18434, %18433, %18307, %18181, %18180, %18054, %17922, %17921, %17795, %17669, %17668, %17542, %17410, %17409, %17283, %17157, %17156, %17030, %16901, %16900, %16774, %16642, %16641, %16515, %16389, %16388, %16262, %16133, %16132, %16006, %15865, %15864, %15863, %15737, %15608, %15607, %15481, %15352, %15351, %15225, %15099, %15098, %14972, %14840, %14839, %14713, %14587, %14586, %14460, %14328, %14327, %14201, %14075, %14074, %13948, %13819, %13818, %13692, %13560, %13559, %13433, %13307, %13306, %13180, %13051, %13050, %12924, %12780, %12779, %12778, %12652, %12523, %12522, %12396, %12267, %12266, %12140, %12014, %12013, %11887, %11755, %11754, %11628, %11502, %11501, %11375, %11243, %11242, %11116, %10990, %10989, %10863, %10734, %10733, %10607, %10475, %10474, %10348, %10222, %10221, %10095, %9966, %9965, %9839, %9692, %9691, %9690, %9564, %9435, %9434, %9308, %9179, %9178, %9052, %8926, %8925, %8799, %8667, %8666, %8540, %8414, %8413, %8287, %8155, %8154, %8028, %7902, %7901, %7775, %7646, %7645, %7519, %7387, %7386, %7260, %7134, %7133, %7007, %6878, %6877, %6751, %6610, %6609, %6608, %6482, %6353, %6352, %6226, %6097, %6096, %5970, %5844, %5843, %5717, %5585, %5584, %5458, %5332, %5331, %5205, %5073, %5072, %4946, %4820, %4819, %4693, %4564, %4563, %4437, %4305, %4304, %4178, %4052, %4051, %3925, %3796, %3795, %3669, %3525, %3524, %3523, %3397, %3268, %3267, %3141, %3012, %3011, %2885, %2759, %2758, %2632, %2500, %2499, %2373, %2247, %2246, %2120, %1988, %1987, %1861, %1735, %1734, %1608, %1479, %1478, %1352, %1220, %1219, %1093, %967, %966, %840, %711, %710, %584, %446, %234
%37478 = load i32, i32* %7
ret i32 %37478
}

LLVM IR (-O2):
define i32 @tri_tri_overlap_test_3d(float* %0, float* %1, float* %2, float* %3, float* %4, float* %5) {
%7 = alloca [3 x float]
%8 = alloca [3 x float]
%9 = bitcast [3 x float]* %7 to i8*
%10 = bitcast [3 x float]* %8 to i8*
%11 = load float, float* %3
%12 = load float, float* %5
%13 = fsub float %11, %12
%14 = getelementptr inbounds float, float* %3, i64 1
%15 = load float, float* %14
%16 = getelementptr inbounds float, float* %5, i64 1
%17 = load float, float* %16
%18 = fsub float %15, %17
%19 = getelementptr inbounds float, float* %3, i64 2
%20 = load float, float* %19
%21 = getelementptr inbounds float, float* %5, i64 2
%22 = load float, float* %21
%23 = fsub float %20, %22
%24 = load float, float* %4
%25 = fsub float %24, %12
%26 = getelementptr inbounds float, float* %4, i64 1
%27 = load float, float* %26
%28 = fsub float %27, %17
%29 = getelementptr inbounds float, float* %4, i64 2
%30 = load float, float* %29
%31 = fsub float %30, %22
%32 = fneg float %23
%33 = fmul float %28, %32
%34 = tail call float @llvm.fmuladd.f32(float %18, float %31, float %33)
%35 = getelementptr inbounds [3 x float], [3 x float]* %8, i64 0, i64 0
store float %34, float* %35
%36 = fneg float %13
%37 = fmul float %31, %36
%38 = tail call float @llvm.fmuladd.f32(float %23, float %25, float %37)
%39 = getelementptr inbounds [3 x float], [3 x float]* %8, i64 0, i64 1
store float %38, float* %39
%40 = fneg float %18
%41 = fmul float %25, %40
%42 = tail call float @llvm.fmuladd.f32(float %13, float %28, float %41)
%43 = getelementptr inbounds [3 x float], [3 x float]* %8, i64 0, i64 2
store float %42, float* %43
%44 = load float, float* %0
%45 = fsub float %44, %12
%46 = getelementptr inbounds float, float* %0, i64 1
%47 = load float, float* %46
%48 = fsub float %47, %17
%49 = getelementptr inbounds float, float* %0, i64 2
%50 = load float, float* %49
%51 = fsub float %50, %22
%52 = fmul float %38, %48
%53 = tail call float @llvm.fmuladd.f32(float %45, float %34, float %52)
%54 = tail call float @llvm.fmuladd.f32(float %51, float %42, float %53)
%55 = load float, float* %1
%56 = getelementptr inbounds float, float* %1, i64 1
%57 = load float, float* %56
%58 = getelementptr inbounds float, float* %1, i64 2
%59 = load float, float* %58
%60 = load float, float* %2
%61 = insertelement <2 x float> poison, float %60, i64 0
%62 = insertelement <2 x float> %61, float %55, i64 1
%63 = insertelement <2 x float> poison, float %12, i64 0
%64 = shufflevector <2 x float> %63, <2 x float> poison, <2 x i32> zeroinitializer
%65 = fsub <2 x float> %62, %64
%66 = getelementptr inbounds float, float* %2, i64 1
%67 = load float, float* %66
%68 = insertelement <2 x float> poison, float %67, i64 0
%69 = insertelement <2 x float> %68, float %57, i64 1
%70 = insertelement <2 x float> poison, float %17, i64 0
%71 = shufflevector <2 x float> %70, <2 x float> poison, <2 x i32> zeroinitializer
%72 = fsub <2 x float> %69, %71
%73 = getelementptr inbounds float, float* %2, i64 2
%74 = load float, float* %73
%75 = insertelement <2 x float> poison, float %74, i64 0
%76 = insertelement <2 x float> %75, float %59, i64 1
%77 = insertelement <2 x float> poison, float %22, i64 0
%78 = shufflevector <2 x float> %77, <2 x float> poison, <2 x i32> zeroinitializer
%79 = fsub <2 x float> %76, %78
%80 = insertelement <2 x float> poison, float %38, i64 0
%81 = shufflevector <2 x float> %80, <2 x float> poison, <2 x i32> zeroinitializer
%82 = fmul <2 x float> %81, %72
%83 = insertelement <2 x float> poison, float %34, i64 0
%84 = shufflevector <2 x float> %83, <2 x float> poison, <2 x i32> zeroinitializer
%85 = call <2 x float> @llvm.fmuladd.v2f32(<2 x float> %65, <2 x float> %84, <2 x float> %82)
%86 = insertelement <2 x float> poison, float %42, i64 0
%87 = shufflevector <2 x float> %86, <2 x float> poison, <2 x i32> zeroinitializer
%88 = call <2 x float> @llvm.fmuladd.v2f32(<2 x float> %79, <2 x float> %87, <2 x float> %85)
%89 = extractelement <2 x float> %88, i64 1
%90 = fmul float %54, %89
%91 = fcmp ogt float %90, 0.000000e+00
%92 = extractelement <2 x float> %88, i64 0
%93 = fmul float %54, %92
%94 = fcmp ogt float %93, 0.000000e+00
%95 = select i1 %91, i1 %94, i1 false
br i1 %95, label %6747, label %96
96: ; preds = %6
%97 = fsub float %55, %44
%98 = fsub float %57, %47
%99 = fsub float %59, %50
%100 = fsub float %60, %44
%101 = fsub float %67, %47
%102 = fsub float %74, %50
%103 = fneg float %99
%104 = fmul float %101, %103
%105 = tail call float @llvm.fmuladd.f32(float %98, float %102, float %104)
%106 = getelementptr inbounds [3 x float], [3 x float]* %7, i64 0, i64 0
store float %105, float* %106
%107 = fneg float %97
%108 = fmul float %102, %107
%109 = tail call float @llvm.fmuladd.f32(float %99, float %100, float %108)
%110 = getelementptr inbounds [3 x float], [3 x float]* %7, i64 0, i64 1
store float %109, float* %110
%111 = fneg float %98
%112 = fmul float %100, %111
%113 = tail call float @llvm.fmuladd.f32(float %97, float %101, float %112)
%114 = getelementptr inbounds [3 x float], [3 x float]* %7, i64 0, i64 2
store float %113, float* %114
%115 = fsub float %24, %60
%116 = fsub float %27, %67
%117 = fsub float %30, %74
%118 = fmul float %116, %109
%119 = tail call float @llvm.fmuladd.f32(float %115, float %105, float %118)
%120 = tail call float @llvm.fmuladd.f32(float %117, float %113, float %119)
%121 = insertelement <2 x float> poison, float %11, i64 0
%122 = insertelement <2 x float> %121, float %12, i64 1
%123 = shufflevector <2 x float> %61, <2 x float> poison, <2 x i32> zeroinitializer
%124 = fsub <2 x float> %122, %123
%125 = insertelement <2 x float> poison, float %15, i64 0
%126 = insertelement <2 x float> %125, float %17, i64 1
%127 = shufflevector <2 x float> %68, <2 x float> poison, <2 x i32> zeroinitializer
%128 = fsub <2 x float> %126, %127
%129 = insertelement <2 x float> poison, float %20, i64 0
%130 = insertelement <2 x float> %129, float %22, i64 1
%131 = shufflevector <2 x float> %75, <2 x float> poison, <2 x i32> zeroinitializer
%132 = fsub <2 x float> %130, %131
%133 = insertelement <2 x float> poison, float %109, i64 0
%134 = shufflevector <2 x float> %133, <2 x float> poison, <2 x i32> zeroinitializer
%135 = fmul <2 x float> %128, %134
%136 = insertelement <2 x float> poison, float %105, i64 0
%137 = shufflevector <2 x float> %136, <2 x float> poison, <2 x i32> zeroinitializer
%138 = call <2 x float> @llvm.fmuladd.v2f32(<2 x float> %124, <2 x float> %137, <2 x float> %135)
%139 = insertelement <2 x float> poison, float %113, i64 0
%140 = shufflevector <2 x float> %139, <2 x float> poison, <2 x i32> zeroinitializer
%141 = call <2 x float> @llvm.fmuladd.v2f32(<2 x float> %132, <2 x float> %140, <2 x float> %138)
%142 = extractelement <2 x float> %141, i64 0
%143 = fmul float %142, %120
%144 = fcmp ogt float %143, 0.000000e+00
%145 = extractelement <2 x float> %141, i64 1
%146 = fmul float %142, %145
%147 = fcmp ogt float %146, 0.000000e+00
%148 = select i1 %144, i1 %147, i1 false
br i1 %148, label %6747, label %149
149: ; preds = %96
%150 = fcmp ogt float %54, 0.000000e+00
br i1 %150, label %151, label %1798
151: ; preds = %149
%152 = fcmp ogt float %89, 0.000000e+00
br i1 %152, label %153, label %699
153: ; preds = %151
%154 = fcmp ogt float %142, 0.000000e+00
br i1 %154, label %155, label %291
155: ; preds = %153
%156 = fcmp ogt float %145, 0.000000e+00
br i1 %156, label %157, label %201
157: ; preds = %155
%158 = fsub float %24, %55
%159 = fsub float %27, %57
%160 = fsub float %30, %59
%161 = fsub float %60, %55
%162 = fsub float %67, %57
%163 = fsub float %74, %59
%164 = fneg float %160
%165 = fmul float %162, %164
%166 = tail call float @llvm.fmuladd.f32(float %159, float %163, float %165)
%167 = fneg float %158
%168 = fmul float %163, %167
%169 = tail call float @llvm.fmuladd.f32(float %160, float %161, float %168)
%170 = fneg float %159
%171 = fmul float %161, %170
%172 = tail call float @llvm.fmuladd.f32(float %158, float %162, float %171)
%173 = fsub float %11, %55
%174 = fsub float %15, %57
%175 = fsub float %20, %59
%176 = fmul float %174, %169
%177 = tail call float @llvm.fmuladd.f32(float %173, float %166, float %176)
%178 = tail call float @llvm.fmuladd.f32(float %175, float %172, float %177)
%179 = fcmp ogt float %178, 0.000000e+00
br i1 %179, label %6747, label %180
180: ; preds = %157
%181 = fsub float %44, %60
%182 = fsub float %47, %67
%183 = fsub float %50, %74
%184 = fneg float %117
%185 = fmul float %182, %184
%186 = tail call float @llvm.fmuladd.f32(float %116, float %183, float %185)
store float %186, float* %106
%187 = fneg float %115
%188 = fmul float %183, %187
%189 = tail call float @llvm.fmuladd.f32(float %117, float %181, float %188)
store float %189, float* %110
%190 = fneg float %116
%191 = fmul float %181, %190
%192 = tail call float @llvm.fmuladd.f32(float %115, float %182, float %191)
%193 = extractelement <2 x float> %128, i64 1
%194 = fmul float %193, %189
%195 = extractelement <2 x float> %124, i64 1
%196 = tail call float @llvm.fmuladd.f32(float %195, float %186, float %194)
%197 = extractelement <2 x float> %132, i64 1
%198 = tail call float @llvm.fmuladd.f32(float %197, float %192, float %196)
%199 = fcmp ule float %198, 0.000000e+00
%200 = zext i1 %199 to i32
br label %6747
201: ; preds = %155
%202 = fcmp ogt float %120, 0.000000e+00
br i1 %202, label %203, label %250
203: ; preds = %201
%204 = fsub float %12, %55
%205 = fsub float %17, %57
%206 = fsub float %22, %59
%207 = fsub float %60, %55
%208 = fsub float %67, %57
%209 = fsub float %74, %59
%210 = fneg float %206
%211 = fmul float %208, %210
%212 = tail call float @llvm.fmuladd.f32(float %205, float %209, float %211)
%213 = fneg float %204
%214 = fmul float %209, %213
%215 = tail call float @llvm.fmuladd.f32(float %206, float %207, float %214)
%216 = fneg float %205
%217 = fmul float %207, %216
%218 = tail call float @llvm.fmuladd.f32(float %204, float %208, float %217)
%219 = fsub float %24, %55
%220 = fsub float %27, %57
%221 = fsub float %30, %59
%222 = fmul float %220, %215
%223 = tail call float @llvm.fmuladd.f32(float %219, float %212, float %222)
%224 = tail call float @llvm.fmuladd.f32(float %221, float %218, float %223)
%225 = fcmp ogt float %224, 0.000000e+00
br i1 %225, label %6747, label %226
226: ; preds = %203
%227 = fsub float %44, %60
%228 = fsub float %47, %67
%229 = fsub float %50, %74
%230 = extractelement <2 x float> %132, i64 1
%231 = fneg float %230
%232 = fmul float %228, %231
%233 = extractelement <2 x float> %128, i64 1
%234 = tail call float @llvm.fmuladd.f32(float %233, float %229, float %232)
store float %234, float* %106
%235 = extractelement <2 x float> %124, i64 1
%236 = fneg float %235
%237 = fmul float %229, %236
%238 = tail call float @llvm.fmuladd.f32(float %230, float %227, float %237)
store float %238, float* %110
%239 = fneg float %233
%240 = fmul float %227, %239
%241 = tail call float @llvm.fmuladd.f32(float %235, float %228, float %240)
%242 = extractelement <2 x float> %128, i64 0
%243 = fmul float %242, %238
%244 = extractelement <2 x float> %124, i64 0
%245 = tail call float @llvm.fmuladd.f32(float %244, float %234, float %243)
%246 = extractelement <2 x float> %132, i64 0
%247 = tail call float @llvm.fmuladd.f32(float %246, float %241, float %245)
%248 = fcmp ule float %247, 0.000000e+00
%249 = zext i1 %248 to i32
br label %6747
250: ; preds = %201
%251 = fsub float %11, %44
%252 = fsub float %15, %47
%253 = fsub float %20, %50
%254 = fneg float %253
%255 = fmul float %101, %254
%256 = tail call float @llvm.fmuladd.f32(float %252, float %102, float %255)
%257 = fneg float %251
%258 = fmul float %102, %257
%259 = tail call float @llvm.fmuladd.f32(float %253, float %100, float %258)
%260 = fneg float %252
%261 = fmul float %100, %260
%262 = tail call float @llvm.fmuladd.f32(float %251, float %101, float %261)
%263 = fsub float %12, %44
%264 = fsub float %17, %47
%265 = fsub float %22, %50
%266 = fmul float %264, %259
%267 = tail call float @llvm.fmuladd.f32(float %263, float %256, float %266)
%268 = tail call float @llvm.fmuladd.f32(float %265, float %262, float %267)
%269 = fcmp ogt float %268, 0.000000e+00
br i1 %269, label %6747, label %270
270: ; preds = %250
%271 = fsub float %55, %60
%272 = fsub float %57, %67
%273 = fsub float %59, %74
%274 = extractelement <2 x float> %132, i64 0
%275 = fneg float %274
%276 = fmul float %272, %275
%277 = extractelement <2 x float> %128, i64 0
%278 = tail call float @llvm.fmuladd.f32(float %277, float %273, float %276)
store float %278, float* %106
%279 = extractelement <2 x float> %124, i64 0
%280 = fneg float %279
%281 = fmul float %273, %280
%282 = tail call float @llvm.fmuladd.f32(float %274, float %271, float %281)
store float %282, float* %110
%283 = fneg float %277
%284 = fmul float %271, %283
%285 = tail call float @llvm.fmuladd.f32(float %279, float %272, float %284)
%286 = fmul float %116, %282
%287 = tail call float @llvm.fmuladd.f32(float %115, float %278, float %286)
%288 = tail call float @llvm.fmuladd.f32(float %117, float %285, float %287)
%289 = fcmp ule float %288, 0.000000e+00
%290 = zext i1 %289 to i32
br label %6747
291: ; preds = %153
%292 = fcmp olt float %142, 0.000000e+00
%293 = fcmp olt float %145, 0.000000e+00
br i1 %292, label %294, label %426
294: ; preds = %291
br i1 %293, label %295, label %336
295: ; preds = %294
%296 = fsub float %24, %44
%297 = fsub float %27, %47
%298 = fsub float %30, %50
%299 = fneg float %298
%300 = fmul float %101, %299
%301 = tail call float @llvm.fmuladd.f32(float %297, float %102, float %300)
%302 = fneg float %296
%303 = fmul float %102, %302
%304 = tail call float @llvm.fmuladd.f32(float %298, float %100, float %303)
%305 = fneg float %297
%306 = fmul float %100, %305
%307 = tail call float @llvm.fmuladd.f32(float %296, float %101, float %306)
%308 = fsub float %11, %44
%309 = fsub float %15, %47
%310 = fsub float %20, %50
%311 = fmul float %309, %304
%312 = tail call float @llvm.fmuladd.f32(float %308, float %301, float %311)
%313 = tail call float @llvm.fmuladd.f32(float %310, float %307, float %312)
%314 = fcmp ogt float %313, 0.000000e+00
br i1 %314, label %6747, label %315
315: ; preds = %295
%316 = fsub float %55, %60
%317 = fsub float %57, %67
%318 = fsub float %59, %74
%319 = fneg float %117
%320 = fmul float %317, %319
%321 = tail call float @llvm.fmuladd.f32(float %116, float %318, float %320)
store float %321, float* %106
%322 = fneg float %115
%323 = fmul float %318, %322
%324 = tail call float @llvm.fmuladd.f32(float %117, float %316, float %323)
store float %324, float* %110
%325 = fneg float %116
%326 = fmul float %316, %325
%327 = tail call float @llvm.fmuladd.f32(float %115, float %317, float %326)
%328 = extractelement <2 x float> %128, i64 1
%329 = fmul float %328, %324
%330 = extractelement <2 x float> %124, i64 1
%331 = tail call float @llvm.fmuladd.f32(float %330, float %321, float %329)
%332 = extractelement <2 x float> %132, i64 1
%333 = tail call float @llvm.fmuladd.f32(float %332, float %327, float %331)
%334 = fcmp ule float %333, 0.000000e+00
%335 = zext i1 %334 to i32
br label %6747
336: ; preds = %294
%337 = fcmp olt float %120, 0.000000e+00
br i1 %337, label %338, label %382
338: ; preds = %336
%339 = fsub float %12, %44
%340 = fsub float %17, %47
%341 = fsub float %22, %50
%342 = fneg float %341
%343 = fmul float %101, %342
%344 = tail call float @llvm.fmuladd.f32(float %340, float %102, float %343)
%345 = fneg float %339
%346 = fmul float %102, %345
%347 = tail call float @llvm.fmuladd.f32(float %341, float %100, float %346)
%348 = fneg float %340
%349 = fmul float %100, %348
%350 = tail call float @llvm.fmuladd.f32(float %339, float %101, float %349)
%351 = fsub float %24, %44
%352 = fsub float %27, %47
%353 = fsub float %30, %50
%354 = fmul float %352, %347
%355 = tail call float @llvm.fmuladd.f32(float %351, float %344, float %354)
%356 = tail call float @llvm.fmuladd.f32(float %353, float %350, float %355)
%357 = fcmp ogt float %356, 0.000000e+00
br i1 %357, label %6747, label %358
358: ; preds = %338
%359 = fsub float %55, %60
%360 = fsub float %57, %67
%361 = fsub float %59, %74
%362 = extractelement <2 x float> %132, i64 1
%363 = fneg float %362
%364 = fmul float %360, %363
%365 = extractelement <2 x float> %128, i64 1
%366 = tail call float @llvm.fmuladd.f32(float %365, float %361, float %364)
store float %366, float* %106
%367 = extractelement <2 x float> %124, i64 1
%368 = fneg float %367
%369 = fmul float %361, %368
%370 = tail call float @llvm.fmuladd.f32(float %362, float %359, float %369)
store float %370, float* %110
%371 = fneg float %365
%372 = fmul float %359, %371
%373 = tail call float @llvm.fmuladd.f32(float %367, float %360, float %372)
%374 = extractelement <2 x float> %128, i64 0
%375 = fmul float %374, %370
%376 = extractelement <2 x float> %124, i64 0
%377 = tail call float @llvm.fmuladd.f32(float %376, float %366, float %375)
%378 = extractelement <2 x float> %132, i64 0
%379 = tail call float @llvm.fmuladd.f32(float %378, float %373, float %377)
%380 = fcmp ule float %379, 0.000000e+00
%381 = zext i1 %380 to i32
br label %6747
382: ; preds = %336
%383 = fsub float %11, %55
%384 = fsub float %15, %57
%385 = fsub float %20, %59
%386 = fsub float %60, %55
%387 = fsub float %67, %57
%388 = fsub float %74, %59
%389 = fneg float %385
%390 = fmul float %387, %389
%391 = tail call float @llvm.fmuladd.f32(float %384, float %388, float %390)
%392 = fneg float %383
%393 = fmul float %388, %392
%394 = tail call float @llvm.fmuladd.f32(float %385, float %386, float %393)
%395 = fneg float %384
%396 = fmul float %386, %395
%397 = tail call float @llvm.fmuladd.f32(float %383, float %387, float %396)
%398 = fsub float %12, %55
%399 = fsub float %17, %57
%400 = fsub float %22, %59
%401 = fmul float %399, %394
%402 = tail call float @llvm.fmuladd.f32(float %398, float %391, float %401)
%403 = tail call float @llvm.fmuladd.f32(float %400, float %397, float %402)
%404 = fcmp ogt float %403, 0.000000e+00
br i1 %404, label %6747, label %405
405: ; preds = %382
%406 = fsub float %44, %60
%407 = fsub float %47, %67
%408 = fsub float %50, %74
%409 = extractelement <2 x float> %132, i64 0
%410 = fneg float %409
%411 = fmul float %407, %410
%412 = extractelement <2 x float> %128, i64 0
%413 = tail call float @llvm.fmuladd.f32(float %412, float %408, float %411)
store float %413, float* %106
%414 = extractelement <2 x float> %124, i64 0
%415 = fneg float %414
%416 = fmul float %408, %415
%417 = tail call float @llvm.fmuladd.f32(float %409, float %406, float %416)
store float %417, float* %110
%418 = fneg float %412
%419 = fmul float %406, %418
%420 = tail call float @llvm.fmuladd.f32(float %414, float %407, float %419)
store float %420, float* %114
%421 = fmul float %116, %417
%422 = tail call float @llvm.fmuladd.f32(float %115, float %413, float %421)
%423 = tail call float @llvm.fmuladd.f32(float %117, float %420, float %422)
%424 = fcmp ule float %423, 0.000000e+00
%425 = zext i1 %424 to i32
br label %6747
426: ; preds = %291
br i1 %293, label %427, label %517
427: ; preds = %426
%428 = fcmp ult float %120, 0.000000e+00
br i1 %428, label %476, label %429
429: ; preds = %427
%430 = fsub float %12, %55
%431 = fsub float %17, %57
%432 = fsub float %22, %59
%433 = fsub float %60, %55
%434 = fsub float %67, %57
%435 = fsub float %74, %59
%436 = fneg float %432
%437 = fmul float %434, %436
%438 = tail call float @llvm.fmuladd.f32(float %431, float %435, float %437)
%439 = fneg float %430
%440 = fmul float %435, %439
%441 = tail call float @llvm.fmuladd.f32(float %432, float %433, float %440)
%442 = fneg float %431
%443 = fmul float %433, %442
%444 = tail call float @llvm.fmuladd.f32(float %430, float %434, float %443)
%445 = fsub float %24, %55
%446 = fsub float %27, %57
%447 = fsub float %30, %59
%448 = fmul float %446, %441
%449 = tail call float @llvm.fmuladd.f32(float %445, float %438, float %448)
%450 = tail call float @llvm.fmuladd.f32(float %447, float %444, float %449)
%451 = fcmp ogt float %450, 0.000000e+00
br i1 %451, label %6747, label %452
452: ; preds = %429
%453 = fsub float %44, %60
%454 = fsub float %47, %67
%455 = fsub float %50, %74
%456 = extractelement <2 x float> %132, i64 1
%457 = fneg float %456
%458 = fmul float %454, %457
%459 = extractelement <2 x float> %128, i64 1
%460 = tail call float @llvm.fmuladd.f32(float %459, float %455, float %458)
store float %460, float* %106
%461 = extractelement <2 x float> %124, i64 1
%462 = fneg float %461
%463 = fmul float %455, %462
%464 = tail call float @llvm.fmuladd.f32(float %456, float %453, float %463)
store float %464, float* %110
%465 = fneg float %459
%466 = fmul float %453, %465
%467 = tail call float @llvm.fmuladd.f32(float %461, float %454, float %466)
store float %467, float* %114
%468 = extractelement <2 x float> %128, i64 0
%469 = fmul float %468, %464
%470 = extractelement <2 x float> %124, i64 0
%471 = tail call float @llvm.fmuladd.f32(float %470, float %460, float %469)
%472 = extractelement <2 x float> %132, i64 0
%473 = tail call float @llvm.fmuladd.f32(float %472, float %467, float %471)
%474 = fcmp ule float %473, 0.000000e+00
%475 = zext i1 %474 to i32
br label %6747
476: ; preds = %427
%477 = fsub float %11, %44
%478 = fsub float %15, %47
%479 = fsub float %20, %50
%480 = fneg float %479
%481 = fmul float %101, %480
%482 = tail call float @llvm.fmuladd.f32(float %478, float %102, float %481)
%483 = fneg float %477
%484 = fmul float %102, %483
%485 = tail call float @llvm.fmuladd.f32(float %479, float %100, float %484)
%486 = fneg float %478
%487 = fmul float %100, %486
%488 = tail call float @llvm.fmuladd.f32(float %477, float %101, float %487)
%489 = fsub float %12, %44
%490 = fsub float %17, %47
%491 = fsub float %22, %50
%492 = fmul float %490, %485
%493 = tail call float @llvm.fmuladd.f32(float %489, float %482, float %492)
%494 = tail call float @llvm.fmuladd.f32(float %491, float %488, float %493)
%495 = fcmp ogt float %494, 0.000000e+00
br i1 %495, label %6747, label %496
496: ; preds = %476
%497 = fsub float %55, %60
%498 = fsub float %57, %67
%499 = fsub float %59, %74
%500 = extractelement <2 x float> %132, i64 0
%501 = fneg float %500
%502 = fmul float %498, %501
%503 = extractelement <2 x float> %128, i64 0
%504 = tail call float @llvm.fmuladd.f32(float %503, float %499, float %502)
store float %504, float* %106
%505 = extractelement <2 x float> %124, i64 0
%506 = fneg float %505
%507 = fmul float %499, %506
%508 = tail call float @llvm.fmuladd.f32(float %500, float %497, float %507)
store float %508, float* %110
%509 = fneg float %503
%510 = fmul float %497, %509
%511 = tail call float @llvm.fmuladd.f32(float %505, float %498, float %510)
store float %511, float* %114
%512 = fmul float %116, %508
%513 = tail call float @llvm.fmuladd.f32(float %115, float %504, float %512)
%514 = tail call float @llvm.fmuladd.f32(float %117, float %511, float %513)
%515 = fcmp ule float %514, 0.000000e+00
%516 = zext i1 %515 to i32
br label %6747
517: ; preds = %426
%518 = fcmp ogt float %145, 0.000000e+00
%519 = fcmp ogt float %120, 0.000000e+00
br i1 %518, label %520, label %609
520: ; preds = %517
br i1 %519, label %521, label %565
521: ; preds = %520
%522 = fsub float %11, %55
%523 = fsub float %15, %57
%524 = fsub float %20, %59
%525 = fsub float %60, %55
%526 = fsub float %67, %57
%527 = fsub float %74, %59
%528 = fneg float %524
%529 = fmul float %526, %528
%530 = tail call float @llvm.fmuladd.f32(float %523, float %527, float %529)
%531 = fneg float %522
%532 = fmul float %527, %531
%533 = tail call float @llvm.fmuladd.f32(float %524, float %525, float %532)
%534 = fneg float %523
%535 = fmul float %525, %534
%536 = tail call float @llvm.fmuladd.f32(float %522, float %526, float %535)
%537 = fsub float %12, %55
%538 = fsub float %17, %57
%539 = fsub float %22, %59
%540 = fmul float %538, %533
%541 = tail call float @llvm.fmuladd.f32(float %537, float %530, float %540)
%542 = tail call float @llvm.fmuladd.f32(float %539, float %536, float %541)
%543 = fcmp ogt float %542, 0.000000e+00
br i1 %543, label %6747, label %544
544: ; preds = %521
%545 = fsub float %44, %60
%546 = fsub float %47, %67
%547 = fsub float %50, %74
%548 = extractelement <2 x float> %132, i64 0
%549 = fneg float %548
%550 = fmul float %546, %549
%551 = extractelement <2 x float> %128, i64 0
%552 = tail call float @llvm.fmuladd.f32(float %551, float %547, float %550)
store float %552, float* %106
%553 = extractelement <2 x float> %124, i64 0
%554 = fneg float %553
%555 = fmul float %547, %554
%556 = tail call float @llvm.fmuladd.f32(float %548, float %545, float %555)
store float %556, float* %110
%557 = fneg float %551
%558 = fmul float %545, %557
%559 = tail call float @llvm.fmuladd.f32(float %553, float %546, float %558)
store float %559, float* %114
%560 = fmul float %116, %556
%561 = tail call float @llvm.fmuladd.f32(float %115, float %552, float %560)
%562 = tail call float @llvm.fmuladd.f32(float %117, float %559, float %561)
%563 = fcmp ule float %562, 0.000000e+00
%564 = zext i1 %563 to i32
br label %6747
565: ; preds = %520
%566 = fsub float %12, %44
%567 = fsub float %17, %47
%568 = fsub float %22, %50
%569 = fneg float %568
%570 = fmul float %101, %569
%571 = tail call float @llvm.fmuladd.f32(float %567, float %102, float %570)
%572 = fneg float %566
%573 = fmul float %102, %572
%574 = tail call float @llvm.fmuladd.f32(float %568, float %100, float %573)
%575 = fneg float %567
%576 = fmul float %100, %575
%577 = tail call float @llvm.fmuladd.f32(float %566, float %101, float %576)
%578 = fsub float %24, %44
%579 = fsub float %27, %47
%580 = fsub float %30, %50
%581 = fmul float %579, %574
%582 = tail call float @llvm.fmuladd.f32(float %578, float %571, float %581)
%583 = tail call float @llvm.fmuladd.f32(float %580, float %577, float %582)
%584 = fcmp ogt float %583, 0.000000e+00
br i1 %584, label %6747, label %585
585: ; preds = %565
%586 = fsub float %55, %60
%587 = fsub float %57, %67
%588 = fsub float %59, %74
%589 = extractelement <2 x float> %132, i64 1
%590 = fneg float %589
%591 = fmul float %587, %590
%592 = extractelement <2 x float> %128, i64 1
%593 = tail call float @llvm.fmuladd.f32(float %592, float %588, float %591)
store float %593, float* %106
%594 = extractelement <2 x float> %124, i64 1
%595 = fneg float %594
%596 = fmul float %588, %595
%597 = tail call float @llvm.fmuladd.f32(float %589, float %586, float %596)
store float %597, float* %110
%598 = fneg float %592
%599 = fmul float %586, %598
%600 = tail call float @llvm.fmuladd.f32(float %594, float %587, float %599)
store float %600, float* %114
%601 = extractelement <2 x float> %128, i64 0
%602 = fmul float %601, %597
%603 = extractelement <2 x float> %124, i64 0
%604 = tail call float @llvm.fmuladd.f32(float %603, float %593, float %602)
%605 = extractelement <2 x float> %132, i64 0
%606 = tail call float @llvm.fmuladd.f32(float %605, float %600, float %604)
%607 = fcmp ule float %606, 0.000000e+00
%608 = zext i1 %607 to i32
br label %6747
609: ; preds = %517
br i1 %519, label %610, label %651
610: ; preds = %609
%611 = fsub float %24, %44
%612 = fsub float %27, %47
%613 = fsub float %30, %50
%614 = fneg float %613
%615 = fmul float %101, %614
%616 = tail call float @llvm.fmuladd.f32(float %612, float %102, float %615)
%617 = fneg float %611
%618 = fmul float %102, %617
%619 = tail call float @llvm.fmuladd.f32(float %613, float %100, float %618)
%620 = fneg float %612
%621 = fmul float %100, %620
%622 = tail call float @llvm.fmuladd.f32(float %611, float %101, float %621)
%623 = fsub float %11, %44
%624 = fsub float %15, %47
%625 = fsub float %20, %50
%626 = fmul float %624, %619
%627 = tail call float @llvm.fmuladd.f32(float %623, float %616, float %626)
%628 = tail call float @llvm.fmuladd.f32(float %625, float %622, float %627)
%629 = fcmp ogt float %628, 0.000000e+00
br i1 %629, label %6747, label %630
630: ; preds = %610
%631 = fsub float %55, %60
%632 = fsub float %57, %67
%633 = fsub float %59, %74
%634 = fneg float %117
%635 = fmul float %632, %634
%636 = tail call float @llvm.fmuladd.f32(float %116, float %633, float %635)
store float %636, float* %106
%637 = fneg float %115
%638 = fmul float %633, %637
%639 = tail call float @llvm.fmuladd.f32(float %117, float %631, float %638)
store float %639, float* %110
%640 = fneg float %116
%641 = fmul float %631, %640
%642 = tail call float @llvm.fmuladd.f32(float %115, float %632, float %641)
store float %642, float* %114
%643 = extractelement <2 x float> %128, i64 1
%644 = fmul float %643, %639
%645 = extractelement <2 x float> %124, i64 1
%646 = tail call float @llvm.fmuladd.f32(float %645, float %636, float %644)
%647 = extractelement <2 x float> %132, i64 1
%648 = tail call float @llvm.fmuladd.f32(float %647, float %642, float %646)
%649 = fcmp ule float %648, 0.000000e+00
%650 = zext i1 %649 to i32
br label %6747
651: ; preds = %609
%652 = fcmp olt float %120, 0.000000e+00
br i1 %652, label %653, label %697
653: ; preds = %651
%654 = fsub float %24, %55
%655 = fsub float %27, %57
%656 = fsub float %30, %59
%657 = fsub float %60, %55
%658 = fsub float %67, %57
%659 = fsub float %74, %59
%660 = fneg float %656
%661 = fmul float %658, %660
%662 = tail call float @llvm.fmuladd.f32(float %655, float %659, float %661)
%663 = fneg float %654
%664 = fmul float %659, %663
%665 = tail call float @llvm.fmuladd.f32(float %656, float %657, float %664)
%666 = fneg float %655
%667 = fmul float %657, %666
%668 = tail call float @llvm.fmuladd.f32(float %654, float %658, float %667)
%669 = fsub float %11, %55
%670 = fsub float %15, %57
%671 = fsub float %20, %59
%672 = fmul float %670, %665
%673 = tail call float @llvm.fmuladd.f32(float %669, float %662, float %672)
%674 = tail call float @llvm.fmuladd.f32(float %671, float %668, float %673)
%675 = fcmp ogt float %674, 0.000000e+00
br i1 %675, label %6747, label %676
676: ; preds = %653
%677 = fsub float %44, %60
%678 = fsub float %47, %67
%679 = fsub float %50, %74
%680 = fneg float %117
%681 = fmul float %678, %680
%682 = tail call float @llvm.fmuladd.f32(float %116, float %679, float %681)
store float %682, float* %106
%683 = fneg float %115
%684 = fmul float %679, %683
%685 = tail call float @llvm.fmuladd.f32(float %117, float %677, float %684)
store float %685, float* %110
%686 = fneg float %116
%687 = fmul float %677, %686
%688 = tail call float @llvm.fmuladd.f32(float %115, float %678, float %687)
store float %688, float* %114
%689 = extractelement <2 x float> %128, i64 1
%690 = fmul float %689, %685
%691 = extractelement <2 x float> %124, i64 1
%692 = tail call float @llvm.fmuladd.f32(float %691, float %682, float %690)
%693 = extractelement <2 x float> %132, i64 1
%694 = tail call float @llvm.fmuladd.f32(float %693, float %688, float %692)
%695 = fcmp ule float %694, 0.000000e+00
%696 = zext i1 %695 to i32
br label %6747
697: ; preds = %651
%698 = call i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...) bitcast (i32 (...)* @coplanar_tri_tri3d to i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...)*)(float* %2, float* %0, float* %1, float* %3, float* %5, float* %4, float* %106, float* %35)
br label %6747
699: ; preds = %151
%700 = fcmp ogt float %92, 0.000000e+00
%701 = fcmp ogt float %142, 0.000000e+00
br i1 %700, label %702, label %1259
702: ; preds = %699
br i1 %701, label %703, label %842
703: ; preds = %702
%704 = fcmp ogt float %145, 0.000000e+00
br i1 %704, label %705, label %749
705: ; preds = %703
%706 = fsub float %24, %44
%707 = fsub float %27, %47
%708 = fsub float %30, %50
%709 = fneg float %708
%710 = fmul float %98, %709
%711 = tail call float @llvm.fmuladd.f32(float %707, float %99, float %710)
%712 = fneg float %706
%713 = fmul float %99, %712
%714 = tail call float @llvm.fmuladd.f32(float %708, float %97, float %713)
%715 = fneg float %707
%716 = fmul float %97, %715
%717 = tail call float @llvm.fmuladd.f32(float %706, float %98, float %716)
%718 = fsub float %11, %44
%719 = fsub float %15, %47
%720 = fsub float %20, %50
%721 = fmul float %719, %714
%722 = tail call float @llvm.fmuladd.f32(float %718, float %711, float %721)
%723 = tail call float @llvm.fmuladd.f32(float %720, float %717, float %722)
%724 = fcmp ogt float %723, 0.000000e+00
br i1 %724, label %6747, label %725
725: ; preds = %705
%726 = fsub float %24, %55
%727 = fsub float %27, %57
%728 = fsub float %30, %59
%729 = fsub float %60, %55
%730 = fsub float %67, %57
%731 = fsub float %74, %59
%732 = fneg float %728
%733 = fmul float %730, %732
%734 = tail call float @llvm.fmuladd.f32(float %727, float %731, float %733)
store float %734, float* %106
%735 = fneg float %726
%736 = fmul float %731, %735
%737 = tail call float @llvm.fmuladd.f32(float %728, float %729, float %736)
store float %737, float* %110
%738 = fneg float %727
%739 = fmul float %729, %738
%740 = tail call float @llvm.fmuladd.f32(float %726, float %730, float %739)
store float %740, float* %114
%741 = fsub float %12, %55
%742 = fsub float %17, %57
%743 = fsub float %22, %59
%744 = fmul float %742, %737
%745 = tail call float @llvm.fmuladd.f32(float %741, float %734, float %744)
%746 = tail call float @llvm.fmuladd.f32(float %743, float %740, float %745)
%747 = fcmp ule float %746, 0.000000e+00
%748 = zext i1 %747 to i32
br label %6747
749: ; preds = %703
%750 = fcmp ogt float %120, 0.000000e+00
br i1 %750, label %751, label %795
751: ; preds = %749
%752 = fsub float %12, %44
%753 = fsub float %17, %47
%754 = fsub float %22, %50
%755 = fneg float %754
%756 = fmul float %98, %755
%757 = tail call float @llvm.fmuladd.f32(float %753, float %99, float %756)
%758 = fneg float %752
%759 = fmul float %99, %758
%760 = tail call float @llvm.fmuladd.f32(float %754, float %97, float %759)
%761 = fneg float %753
%762 = fmul float %97, %761
%763 = tail call float @llvm.fmuladd.f32(float %752, float %98, float %762)
%764 = fsub float %24, %44
%765 = fsub float %27, %47
%766 = fsub float %30, %50
%767 = fmul float %765, %760
%768 = tail call float @llvm.fmuladd.f32(float %764, float %757, float %767)
%769 = tail call float @llvm.fmuladd.f32(float %766, float %763, float %768)
%770 = fcmp ogt float %769, 0.000000e+00
br i1 %770, label %6747, label %771
771: ; preds = %751
%772 = fsub float %12, %55
%773 = fsub float %17, %57
%774 = fsub float %22, %59
%775 = fsub float %60, %55
%776 = fsub float %67, %57
%777 = fsub float %74, %59
%778 = fneg float %774
%779 = fmul float %776, %778
%780 = tail call float @llvm.fmuladd.f32(float %773, float %777, float %779)
store float %780, float* %106
%781 = fneg float %772
%782 = fmul float %777, %781
%783 = tail call float @llvm.fmuladd.f32(float %774, float %775, float %782)
store float %783, float* %110
%784 = fneg float %773
%785 = fmul float %775, %784
%786 = tail call float @llvm.fmuladd.f32(float %772, float %776, float %785)
store float %786, float* %114
%787 = fsub float %11, %55
%788 = fsub float %15, %57
%789 = fsub float %20, %59
%790 = fmul float %788, %783
%791 = tail call float @llvm.fmuladd.f32(float %787, float %780, float %790)
%792 = tail call float @llvm.fmuladd.f32(float %789, float %786, float %791)
%793 = fcmp ule float %792, 0.000000e+00
%794 = zext i1 %793 to i32
br label %6747
795: ; preds = %749
%796 = fsub float %55, %60
%797 = fsub float %57, %67
%798 = fsub float %59, %74
%799 = extractelement <2 x float> %132, i64 0
%800 = fneg float %799
%801 = fmul float %797, %800
%802 = extractelement <2 x float> %128, i64 0
%803 = tail call float @llvm.fmuladd.f32(float %802, float %798, float %801)
%804 = extractelement <2 x float> %124, i64 0
%805 = fneg float %804
%806 = fmul float %798, %805
%807 = tail call float @llvm.fmuladd.f32(float %799, float %796, float %806)
%808 = fneg float %802
%809 = fmul float %796, %808
%810 = tail call float @llvm.fmuladd.f32(float %804, float %797, float %809)
%811 = extractelement <2 x float> %128, i64 1
%812 = fmul float %811, %807
%813 = extractelement <2 x float> %124, i64 1
%814 = tail call float @llvm.fmuladd.f32(float %813, float %803, float %812)
%815 = extractelement <2 x float> %132, i64 1
%816 = tail call float @llvm.fmuladd.f32(float %815, float %810, float %814)
%817 = fcmp ogt float %816, 0.000000e+00
br i1 %817, label %6747, label %818
818: ; preds = %795
%819 = fsub float %11, %55
%820 = fsub float %15, %57
%821 = fsub float %20, %59
%822 = fsub float %44, %55
%823 = fsub float %47, %57
%824 = fsub float %50, %59
%825 = fneg float %821
%826 = fmul float %823, %825
%827 = tail call float @llvm.fmuladd.f32(float %820, float %824, float %826)
store float %827, float* %106
%828 = fneg float %819
%829 = fmul float %824, %828
%830 = tail call float @llvm.fmuladd.f32(float %821, float %822, float %829)
store float %830, float* %110
%831 = fneg float %820
%832 = fmul float %822, %831
%833 = tail call float @llvm.fmuladd.f32(float %819, float %823, float %832)
store float %833, float* %114
%834 = fsub float %24, %55
%835 = fsub float %27, %57
%836 = fsub float %30, %59
%837 = fmul float %835, %830
%838 = tail call float @llvm.fmuladd.f32(float %834, float %827, float %837)
%839 = tail call float @llvm.fmuladd.f32(float %836, float %833, float %838)
%840 = fcmp ule float %839, 0.000000e+00
%841 = zext i1 %840 to i32
br label %6747
842: ; preds = %702
%843 = fcmp olt float %142, 0.000000e+00
%844 = fcmp olt float %145, 0.000000e+00
br i1 %843, label %845, label %980
845: ; preds = %842
br i1 %844, label %846, label %890
846: ; preds = %845
%847 = fsub float %55, %60
%848 = fsub float %57, %67
%849 = fsub float %59, %74
%850 = fneg float %117
%851 = fmul float %848, %850
%852 = tail call float @llvm.fmuladd.f32(float %116, float %849, float %851)
%853 = fneg float %115
%854 = fmul float %849, %853
%855 = tail call float @llvm.fmuladd.f32(float %117, float %847, float %854)
%856 = fneg float %116
%857 = fmul float %847, %856
%858 = tail call float @llvm.fmuladd.f32(float %115, float %848, float %857)
%859 = extractelement <2 x float> %128, i64 0
%860 = fmul float %859, %855
%861 = extractelement <2 x float> %124, i64 0
%862 = tail call float @llvm.fmuladd.f32(float %861, float %852, float %860)
%863 = extractelement <2 x float> %132, i64 0
%864 = tail call float @llvm.fmuladd.f32(float %863, float %858, float %862)
%865 = fcmp ogt float %864, 0.000000e+00
br i1 %865, label %6747, label %866
866: ; preds = %846
%867 = fsub float %24, %55
%868 = fsub float %27, %57
%869 = fsub float %30, %59
%870 = fsub float %44, %55
%871 = fsub float %47, %57
%872 = fsub float %50, %59
%873 = fneg float %869
%874 = fmul float %871, %873
%875 = tail call float @llvm.fmuladd.f32(float %868, float %872, float %874)
store float %875, float* %106
%876 = fneg float %867
%877 = fmul float %872, %876
%878 = tail call float @llvm.fmuladd.f32(float %869, float %870, float %877)
store float %878, float* %110
%879 = fneg float %868
%880 = fmul float %870, %879
%881 = tail call float @llvm.fmuladd.f32(float %867, float %871, float %880)
store float %881, float* %114
%882 = fsub float %12, %55
%883 = fsub float %17, %57
%884 = fsub float %22, %59
%885 = fmul float %883, %878
%886 = tail call float @llvm.fmuladd.f32(float %882, float %875, float %885)
%887 = tail call float @llvm.fmuladd.f32(float %884, float %881, float %886)
%888 = fcmp ule float %887, 0.000000e+00
%889 = zext i1 %888 to i32
br label %6747
890: ; preds = %845
%891 = fcmp olt float %120, 0.000000e+00
br i1 %891, label %892, label %936
892: ; preds = %890
%893 = fsub float %55, %60
%894 = fsub float %57, %67
%895 = fsub float %59, %74
%896 = extractelement <2 x float> %132, i64 1
%897 = fneg float %896
%898 = fmul float %894, %897
%899 = extractelement <2 x float> %128, i64 1
%900 = tail call float @llvm.fmuladd.f32(float %899, float %895, float %898)
%901 = extractelement <2 x float> %124, i64 1
%902 = fneg float %901
%903 = fmul float %895, %902
%904 = tail call float @llvm.fmuladd.f32(float %896, float %893, float %903)
%905 = fneg float %899
%906 = fmul float %893, %905
%907 = tail call float @llvm.fmuladd.f32(float %901, float %894, float %906)
%908 = fmul float %116, %904
%909 = tail call float @llvm.fmuladd.f32(float %115, float %900, float %908)
%910 = tail call float @llvm.fmuladd.f32(float %117, float %907, float %909)
%911 = fcmp ogt float %910, 0.000000e+00
br i1 %911, label %6747, label %912
912: ; preds = %892
%913 = fsub float %12, %55
%914 = fsub float %17, %57
%915 = fsub float %22, %59
%916 = fsub float %44, %55
%917 = fsub float %47, %57
%918 = fsub float %50, %59
%919 = fneg float %915
%920 = fmul float %917, %919
%921 = tail call float @llvm.fmuladd.f32(float %914, float %918, float %920)
store float %921, float* %106
%922 = fneg float %913
%923 = fmul float %918, %922
%924 = tail call float @llvm.fmuladd.f32(float %915, float %916, float %923)
store float %924, float* %110
%925 = fneg float %914
%926 = fmul float %916, %925
%927 = tail call float @llvm.fmuladd.f32(float %913, float %917, float %926)
store float %927, float* %114
%928 = fsub float %11, %55
%929 = fsub float %15, %57
%930 = fsub float %20, %59
%931 = fmul float %929, %924
%932 = tail call float @llvm.fmuladd.f32(float %928, float %921, float %931)
%933 = tail call float @llvm.fmuladd.f32(float %930, float %927, float %932)
%934 = fcmp ule float %933, 0.000000e+00
%935 = zext i1 %934 to i32
br label %6747
936: ; preds = %890
%937 = fsub float %11, %44
%938 = fsub float %15, %47
%939 = fsub float %20, %50
%940 = fneg float %939
%941 = fmul float %98, %940
%942 = tail call float @llvm.fmuladd.f32(float %938, float %99, float %941)
%943 = fneg float %937
%944 = fmul float %99, %943
%945 = tail call float @llvm.fmuladd.f32(float %939, float %97, float %944)
%946 = fneg float %938
%947 = fmul float %97, %946
%948 = tail call float @llvm.fmuladd.f32(float %937, float %98, float %947)
%949 = fsub float %12, %44
%950 = fsub float %17, %47
%951 = fsub float %22, %50
%952 = fmul float %950, %945
%953 = tail call float @llvm.fmuladd.f32(float %949, float %942, float %952)
%954 = tail call float @llvm.fmuladd.f32(float %951, float %948, float %953)
%955 = fcmp ogt float %954, 0.000000e+00
br i1 %955, label %6747, label %956
956: ; preds = %936
%957 = fsub float %11, %55
%958 = fsub float %15, %57
%959 = fsub float %20, %59
%960 = fsub float %60, %55
%961 = fsub float %67, %57
%962 = fsub float %74, %59
%963 = fneg float %959
%964 = fmul float %961, %963
%965 = tail call float @llvm.fmuladd.f32(float %958, float %962, float %964)
store float %965, float* %106
%966 = fneg float %957
%967 = fmul float %962, %966
%968 = tail call float @llvm.fmuladd.f32(float %959, float %960, float %967)
store float %968, float* %110
%969 = fneg float %958
%970 = fmul float %960, %969
%971 = tail call float @llvm.fmuladd.f32(float %957, float %961, float %970)
store float %971, float* %114
%972 = fsub float %24, %55
%973 = fsub float %27, %57
%974 = fsub float %30, %59
%975 = fmul float %973, %968
%976 = tail call float @llvm.fmuladd.f32(float %972, float %965, float %975)
%977 = tail call float @llvm.fmuladd.f32(float %974, float %971, float %976)
%978 = fcmp ule float %977, 0.000000e+00
%979 = zext i1 %978 to i32
br label %6747
980: ; preds = %842
br i1 %844, label %981, label %1074
981: ; preds = %980
%982 = fcmp ult float %120, 0.000000e+00
br i1 %982, label %1027, label %983
983: ; preds = %981
%984 = fsub float %12, %44
%985 = fsub float %17, %47
%986 = fsub float %22, %50
%987 = fneg float %986
%988 = fmul float %98, %987
%989 = tail call float @llvm.fmuladd.f32(float %985, float %99, float %988)
%990 = fneg float %984
%991 = fmul float %99, %990
%992 = tail call float @llvm.fmuladd.f32(float %986, float %97, float %991)
%993 = fneg float %985
%994 = fmul float %97, %993
%995 = tail call float @llvm.fmuladd.f32(float %984, float %98, float %994)
%996 = fsub float %24, %44
%997 = fsub float %27, %47
%998 = fsub float %30, %50
%999 = fmul float %997, %992
%1000 = tail call float @llvm.fmuladd.f32(float %996, float %989, float %999)
%1001 = tail call float @llvm.fmuladd.f32(float %998, float %995, float %1000)
%1002 = fcmp ogt float %1001, 0.000000e+00
br i1 %1002, label %6747, label %1003
1003: ; preds = %983
%1004 = fsub float %12, %55
%1005 = fsub float %17, %57
%1006 = fsub float %22, %59
%1007 = fsub float %60, %55
%1008 = fsub float %67, %57
%1009 = fsub float %74, %59
%1010 = fneg float %1006
%1011 = fmul float %1008, %1010
%1012 = tail call float @llvm.fmuladd.f32(float %1005, float %1009, float %1011)
store float %1012, float* %106
%1013 = fneg float %1004
%1014 = fmul float %1009, %1013
%1015 = tail call float @llvm.fmuladd.f32(float %1006, float %1007, float %1014)
store float %1015, float* %110
%1016 = fneg float %1005
%1017 = fmul float %1007, %1016
%1018 = tail call float @llvm.fmuladd.f32(float %1004, float %1008, float %1017)
store float %1018, float* %114
%1019 = fsub float %11, %55
%1020 = fsub float %15, %57
%1021 = fsub float %20, %59
%1022 = fmul float %1020, %1015
%1023 = tail call float @llvm.fmuladd.f32(float %1019, float %1012, float %1022)
%1024 = tail call float @llvm.fmuladd.f32(float %1021, float %1018, float %1023)
%1025 = fcmp ule float %1024, 0.000000e+00
%1026 = zext i1 %1025 to i32
br label %6747
1027: ; preds = %981
%1028 = fsub float %55, %60
%1029 = fsub float %57, %67
%1030 = fsub float %59, %74
%1031 = extractelement <2 x float> %132, i64 0
%1032 = fneg float %1031
%1033 = fmul float %1029, %1032
%1034 = extractelement <2 x float> %128, i64 0
%1035 = tail call float @llvm.fmuladd.f32(float %1034, float %1030, float %1033)
%1036 = extractelement <2 x float> %124, i64 0
%1037 = fneg float %1036
%1038 = fmul float %1030, %1037
%1039 = tail call float @llvm.fmuladd.f32(float %1031, float %1028, float %1038)
%1040 = fneg float %1034
%1041 = fmul float %1028, %1040
%1042 = tail call float @llvm.fmuladd.f32(float %1036, float %1029, float %1041)
%1043 = extractelement <2 x float> %128, i64 1
%1044 = fmul float %1043, %1039
%1045 = extractelement <2 x float> %124, i64 1
%1046 = tail call float @llvm.fmuladd.f32(float %1045, float %1035, float %1044)
%1047 = extractelement <2 x float> %132, i64 1
%1048 = tail call float @llvm.fmuladd.f32(float %1047, float %1042, float %1046)
%1049 = fcmp ogt float %1048, 0.000000e+00
br i1 %1049, label %6747, label %1050
1050: ; preds = %1027
%1051 = fsub float %11, %55
%1052 = fsub float %15, %57
%1053 = fsub float %20, %59
%1054 = fsub float %44, %55
%1055 = fsub float %47, %57
%1056 = fsub float %50, %59
%1057 = fneg float %1053
%1058 = fmul float %1055, %1057
%1059 = tail call float @llvm.fmuladd.f32(float %1052, float %1056, float %1058)
store float %1059, float* %106
%1060 = fneg float %1051
%1061 = fmul float %1056, %1060
%1062 = tail call float @llvm.fmuladd.f32(float %1053, float %1054, float %1061)
store float %1062, float* %110
%1063 = fneg float %1052
%1064 = fmul float %1054, %1063
%1065 = tail call float @llvm.fmuladd.f32(float %1051, float %1055, float %1064)
store float %1065, float* %114
%1066 = fsub float %24, %55
%1067 = fsub float %27, %57
%1068 = fsub float %30, %59
%1069 = fmul float %1067, %1062
%1070 = tail call float @llvm.fmuladd.f32(float %1066, float %1059, float %1069)
%1071 = tail call float @llvm.fmuladd.f32(float %1068, float %1065, float %1070)
%1072 = fcmp ule float %1071, 0.000000e+00
%1073 = zext i1 %1072 to i32
br label %6747
1074: ; preds = %980
%1075 = fcmp ogt float %145, 0.000000e+00
%1076 = fcmp ogt float %120, 0.000000e+00
br i1 %1075, label %1077, label %1166
1077: ; preds = %1074
br i1 %1076, label %1078, label %1122
1078: ; preds = %1077
%1079 = fsub float %11, %44
%1080 = fsub float %15, %47
%1081 = fsub float %20, %50
%1082 = fneg float %1081
%1083 = fmul float %98, %1082
%1084 = tail call float @llvm.fmuladd.f32(float %1080, float %99, float %1083)
%1085 = fneg float %1079
%1086 = fmul float %99, %1085
%1087 = tail call float @llvm.fmuladd.f32(float %1081, float %97, float %1086)
%1088 = fneg float %1080
%1089 = fmul float %97, %1088
%1090 = tail call float @llvm.fmuladd.f32(float %1079, float %98, float %1089)
%1091 = fsub float %12, %44
%1092 = fsub float %17, %47
%1093 = fsub float %22, %50
%1094 = fmul float %1092, %1087
%1095 = tail call float @llvm.fmuladd.f32(float %1091, float %1084, float %1094)
%1096 = tail call float @llvm.fmuladd.f32(float %1093, float %1090, float %1095)
%1097 = fcmp ogt float %1096, 0.000000e+00
br i1 %1097, label %6747, label %1098
1098: ; preds = %1078
%1099 = fsub float %11, %55
%1100 = fsub float %15, %57
%1101 = fsub float %20, %59
%1102 = fsub float %60, %55
%1103 = fsub float %67, %57
%1104 = fsub float %74, %59
%1105 = fneg float %1101
%1106 = fmul float %1103, %1105
%1107 = tail call float @llvm.fmuladd.f32(float %1100, float %1104, float %1106)
store float %1107, float* %106
%1108 = fneg float %1099
%1109 = fmul float %1104, %1108
%1110 = tail call float @llvm.fmuladd.f32(float %1101, float %1102, float %1109)
store float %1110, float* %110
%1111 = fneg float %1100
%1112 = fmul float %1102, %1111
%1113 = tail call float @llvm.fmuladd.f32(float %1099, float %1103, float %1112)
store float %1113, float* %114
%1114 = fsub float %24, %55
%1115 = fsub float %27, %57
%1116 = fsub float %30, %59
%1117 = fmul float %1115, %1110
%1118 = tail call float @llvm.fmuladd.f32(float %1114, float %1107, float %1117)
%1119 = tail call float @llvm.fmuladd.f32(float %1116, float %1113, float %1118)
%1120 = fcmp ule float %1119, 0.000000e+00
%1121 = zext i1 %1120 to i32
br label %6747
1122: ; preds = %1077
%1123 = fsub float %55, %60
%1124 = fsub float %57, %67
%1125 = fsub float %59, %74
%1126 = extractelement <2 x float> %132, i64 1
%1127 = fneg float %1126
%1128 = fmul float %1124, %1127
%1129 = extractelement <2 x float> %128, i64 1
%1130 = tail call float @llvm.fmuladd.f32(float %1129, float %1125, float %1128)
%1131 = extractelement <2 x float> %124, i64 1
%1132 = fneg float %1131
%1133 = fmul float %1125, %1132
%1134 = tail call float @llvm.fmuladd.f32(float %1126, float %1123, float %1133)
%1135 = fneg float %1129
%1136 = fmul float %1123, %1135
%1137 = tail call float @llvm.fmuladd.f32(float %1131, float %1124, float %1136)
%1138 = fmul float %116, %1134
%1139 = tail call float @llvm.fmuladd.f32(float %115, float %1130, float %1138)
%1140 = tail call float @llvm.fmuladd.f32(float %117, float %1137, float %1139)
%1141 = fcmp ogt float %1140, 0.000000e+00
br i1 %1141, label %6747, label %1142
1142: ; preds = %1122
%1143 = fsub float %12, %55
%1144 = fsub float %17, %57
%1145 = fsub float %22, %59
%1146 = fsub float %44, %55
%1147 = fsub float %47, %57
%1148 = fsub float %50, %59
%1149 = fneg float %1145
%1150 = fmul float %1147, %1149
%1151 = tail call float @llvm.fmuladd.f32(float %1144, float %1148, float %1150)
store float %1151, float* %106
%1152 = fneg float %1143
%1153 = fmul float %1148, %1152
%1154 = tail call float @llvm.fmuladd.f32(float %1145, float %1146, float %1153)
store float %1154, float* %110
%1155 = fneg float %1144
%1156 = fmul float %1146, %1155
%1157 = tail call float @llvm.fmuladd.f32(float %1143, float %1147, float %1156)
store float %1157, float* %114
%1158 = fsub float %11, %55
%1159 = fsub float %15, %57
%1160 = fsub float %20, %59
%1161 = fmul float %1159, %1154
%1162 = tail call float @llvm.fmuladd.f32(float %1158, float %1151, float %1161)
%1163 = tail call float @llvm.fmuladd.f32(float %1160, float %1157, float %1162)
%1164 = fcmp ule float %1163, 0.000000e+00
%1165 = zext i1 %1164 to i32
br label %6747
1166: ; preds = %1074
br i1 %1076, label %1167, label %1211
1167: ; preds = %1166
%1168 = fsub float %55, %60
%1169 = fsub float %57, %67
%1170 = fsub float %59, %74
%1171 = fneg float %117
%1172 = fmul float %1169, %1171
%1173 = tail call float @llvm.fmuladd.f32(float %116, float %1170, float %1172)
%1174 = fneg float %115
%1175 = fmul float %1170, %1174
%1176 = tail call float @llvm.fmuladd.f32(float %117, float %1168, float %1175)
%1177 = fneg float %116
%1178 = fmul float %1168, %1177
%1179 = tail call float @llvm.fmuladd.f32(float %115, float %1169, float %1178)
%1180 = extractelement <2 x float> %128, i64 0
%1181 = fmul float %1180, %1176
%1182 = extractelement <2 x float> %124, i64 0
%1183 = tail call float @llvm.fmuladd.f32(float %1182, float %1173, float %1181)
%1184 = extractelement <2 x float> %132, i64 0
%1185 = tail call float @llvm.fmuladd.f32(float %1184, float %1179, float %1183)
%1186 = fcmp ogt float %1185, 0.000000e+00
br i1 %1186, label %6747, label %1187
1187: ; preds = %1167
%1188 = fsub float %24, %55
%1189 = fsub float %27, %57
%1190 = fsub float %30, %59
%1191 = fsub float %44, %55
%1192 = fsub float %47, %57
%1193 = fsub float %50, %59
%1194 = fneg float %1190
%1195 = fmul float %1192, %1194
%1196 = tail call float @llvm.fmuladd.f32(float %1189, float %1193, float %1195)
store float %1196, float* %106
%1197 = fneg float %1188
%1198 = fmul float %1193, %1197
%1199 = tail call float @llvm.fmuladd.f32(float %1190, float %1191, float %1198)
store float %1199, float* %110
%1200 = fneg float %1189
%1201 = fmul float %1191, %1200
%1202 = tail call float @llvm.fmuladd.f32(float %1188, float %1192, float %1201)
store float %1202, float* %114
%1203 = fsub float %12, %55
%1204 = fsub float %17, %57
%1205 = fsub float %22, %59
%1206 = fmul float %1204, %1199
%1207 = tail call float @llvm.fmuladd.f32(float %1203, float %1196, float %1206)
%1208 = tail call float @llvm.fmuladd.f32(float %1205, float %1202, float %1207)
%1209 = fcmp ule float %1208, 0.000000e+00
%1210 = zext i1 %1209 to i32
br label %6747
1211: ; preds = %1166
%1212 = fcmp olt float %120, 0.000000e+00
br i1 %1212, label %1213, label %1257
1213: ; preds = %1211
%1214 = fsub float %24, %44
%1215 = fsub float %27, %47
%1216 = fsub float %30, %50
%1217 = fneg float %1216
%1218 = fmul float %98, %1217
%1219 = tail call float @llvm.fmuladd.f32(float %1215, float %99, float %1218)
%1220 = fneg float %1214
%1221 = fmul float %99, %1220
%1222 = tail call float @llvm.fmuladd.f32(float %1216, float %97, float %1221)
%1223 = fneg float %1215
%1224 = fmul float %97, %1223
%1225 = tail call float @llvm.fmuladd.f32(float %1214, float %98, float %1224)
%1226 = fsub float %11, %44
%1227 = fsub float %15, %47
%1228 = fsub float %20, %50
%1229 = fmul float %1227, %1222
%1230 = tail call float @llvm.fmuladd.f32(float %1226, float %1219, float %1229)
%1231 = tail call float @llvm.fmuladd.f32(float %1228, float %1225, float %1230)
%1232 = fcmp ogt float %1231, 0.000000e+00
br i1 %1232, label %6747, label %1233
1233: ; preds = %1213
%1234 = fsub float %24, %55
%1235 = fsub float %27, %57
%1236 = fsub float %30, %59
%1237 = fsub float %60, %55
%1238 = fsub float %67, %57
%1239 = fsub float %74, %59
%1240 = fneg float %1236
%1241 = fmul float %1238, %1240
%1242 = tail call float @llvm.fmuladd.f32(float %1235, float %1239, float %1241)
store float %1242, float* %106
%1243 = fneg float %1234
%1244 = fmul float %1239, %1243
%1245 = tail call float @llvm.fmuladd.f32(float %1236, float %1237, float %1244)
store float %1245, float* %110
%1246 = fneg float %1235
%1247 = fmul float %1237, %1246
%1248 = tail call float @llvm.fmuladd.f32(float %1234, float %1238, float %1247)
store float %1248, float* %114
%1249 = fsub float %12, %55
%1250 = fsub float %17, %57
%1251 = fsub float %22, %59
%1252 = fmul float %1250, %1245
%1253 = tail call float @llvm.fmuladd.f32(float %1249, float %1242, float %1252)
%1254 = tail call float @llvm.fmuladd.f32(float %1251, float %1248, float %1253)
%1255 = fcmp ule float %1254, 0.000000e+00
%1256 = zext i1 %1255 to i32
br label %6747
1257: ; preds = %1211
%1258 = call i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...) bitcast (i32 (...)* @coplanar_tri_tri3d to i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...)*)(float* %1, float* %2, float* %0, float* %3, float* %5, float* %4, float* %106, float* %35)
br label %6747
1259: ; preds = %699
br i1 %701, label %1260, label %1393
1260: ; preds = %1259
%1261 = fcmp ogt float %120, 0.000000e+00
br i1 %1261, label %1262, label %1306
1262: ; preds = %1260
%1263 = fsub float %44, %60
%1264 = fsub float %47, %67
%1265 = fsub float %50, %74
%1266 = extractelement <2 x float> %132, i64 1
%1267 = fneg float %1266
%1268 = fmul float %1264, %1267
%1269 = extractelement <2 x float> %128, i64 1
%1270 = tail call float @llvm.fmuladd.f32(float %1269, float %1265, float %1268)
%1271 = extractelement <2 x float> %124, i64 1
%1272 = fneg float %1271
%1273 = fmul float %1265, %1272
%1274 = tail call float @llvm.fmuladd.f32(float %1266, float %1263, float %1273)
%1275 = fneg float %1269
%1276 = fmul float %1263, %1275
%1277 = tail call float @llvm.fmuladd.f32(float %1271, float %1264, float %1276)
%1278 = extractelement <2 x float> %128, i64 0
%1279 = fmul float %1278, %1274
%1280 = extractelement <2 x float> %124, i64 0
%1281 = tail call float @llvm.fmuladd.f32(float %1280, float %1270, float %1279)
%1282 = extractelement <2 x float> %132, i64 0
%1283 = tail call float @llvm.fmuladd.f32(float %1282, float %1277, float %1281)
%1284 = fcmp ogt float %1283, 0.000000e+00
br i1 %1284, label %6747, label %1285
1285: ; preds = %1262
%1286 = fsub float %12, %44
%1287 = fsub float %17, %47
%1288 = fsub float %22, %50
%1289 = fneg float %1288
%1290 = fmul float %98, %1289
%1291 = tail call float @llvm.fmuladd.f32(float %1287, float %99, float %1290)
store float %1291, float* %106
%1292 = fneg float %1286
%1293 = fmul float %99, %1292
%1294 = tail call float @llvm.fmuladd.f32(float %1288, float %97, float %1293)
store float %1294, float* %110
%1295 = fneg float %1287
%1296 = fmul float %97, %1295
%1297 = tail call float @llvm.fmuladd.f32(float %1286, float %98, float %1296)
store float %1297, float* %114
%1298 = fsub float %24, %44
%1299 = fsub float %27, %47
%1300 = fsub float %30, %50
%1301 = fmul float %1299, %1294
%1302 = tail call float @llvm.fmuladd.f32(float %1298, float %1291, float %1301)
%1303 = tail call float @llvm.fmuladd.f32(float %1300, float %1297, float %1302)
%1304 = fcmp ule float %1303, 0.000000e+00
%1305 = zext i1 %1304 to i32
br label %6747
1306: ; preds = %1260
%1307 = fcmp ogt float %145, 0.000000e+00
br i1 %1307, label %1308, label %1349
1308: ; preds = %1306
%1309 = fsub float %44, %60
%1310 = fsub float %47, %67
%1311 = fsub float %50, %74
%1312 = fneg float %117
%1313 = fmul float %1310, %1312
%1314 = tail call float @llvm.fmuladd.f32(float %116, float %1311, float %1313)
%1315 = fneg float %115
%1316 = fmul float %1311, %1315
%1317 = tail call float @llvm.fmuladd.f32(float %117, float %1309, float %1316)
%1318 = fneg float %116
%1319 = fmul float %1309, %1318
%1320 = tail call float @llvm.fmuladd.f32(float %115, float %1310, float %1319)
%1321 = extractelement <2 x float> %128, i64 1
%1322 = fmul float %1321, %1317
%1323 = extractelement <2 x float> %124, i64 1
%1324 = tail call float @llvm.fmuladd.f32(float %1323, float %1314, float %1322)
%1325 = extractelement <2 x float> %132, i64 1
%1326 = tail call float @llvm.fmuladd.f32(float %1325, float %1320, float %1324)
%1327 = fcmp ogt float %1326, 0.000000e+00
br i1 %1327, label %6747, label %1328
1328: ; preds = %1308
%1329 = fsub float %24, %44
%1330 = fsub float %27, %47
%1331 = fsub float %30, %50
%1332 = fneg float %1331
%1333 = fmul float %98, %1332
%1334 = tail call float @llvm.fmuladd.f32(float %1330, float %99, float %1333)
store float %1334, float* %106
%1335 = fneg float %1329
%1336 = fmul float %99, %1335
%1337 = tail call float @llvm.fmuladd.f32(float %1331, float %97, float %1336)
store float %1337, float* %110
%1338 = fneg float %1330
%1339 = fmul float %97, %1338
%1340 = tail call float @llvm.fmuladd.f32(float %1329, float %98, float %1339)
store float %1340, float* %114
%1341 = fsub float %11, %44
%1342 = fsub float %15, %47
%1343 = fsub float %20, %50
%1344 = fmul float %1342, %1337
%1345 = tail call float @llvm.fmuladd.f32(float %1341, float %1334, float %1344)
%1346 = tail call float @llvm.fmuladd.f32(float %1343, float %1340, float %1345)
%1347 = fcmp ule float %1346, 0.000000e+00
%1348 = zext i1 %1347 to i32
br label %6747
1349: ; preds = %1306
%1350 = fsub float %11, %55
%1351 = fsub float %15, %57
%1352 = fsub float %20, %59
%1353 = fsub float %44, %55
%1354 = fsub float %47, %57
%1355 = fsub float %50, %59
%1356 = fneg float %1352
%1357 = fmul float %1354, %1356
%1358 = tail call float @llvm.fmuladd.f32(float %1351, float %1355, float %1357)
%1359 = fneg float %1350
%1360 = fmul float %1355, %1359
%1361 = tail call float @llvm.fmuladd.f32(float %1352, float %1353, float %1360)
%1362 = fneg float %1351
%1363 = fmul float %1353, %1362
%1364 = tail call float @llvm.fmuladd.f32(float %1350, float %1354, float %1363)
%1365 = fsub float %24, %55
%1366 = fsub float %27, %57
%1367 = fsub float %30, %59
%1368 = fmul float %1366, %1361
%1369 = tail call float @llvm.fmuladd.f32(float %1365, float %1358, float %1368)
%1370 = tail call float @llvm.fmuladd.f32(float %1367, float %1364, float %1369)
%1371 = fcmp ogt float %1370, 0.000000e+00
br i1 %1371, label %6747, label %1372
1372: ; preds = %1349
%1373 = fsub float %11, %44
%1374 = fsub float %15, %47
%1375 = fsub float %20, %50
%1376 = fneg float %1375
%1377 = fmul float %101, %1376
%1378 = tail call float @llvm.fmuladd.f32(float %1374, float %102, float %1377)
store float %1378, float* %106
%1379 = fneg float %1373
%1380 = fmul float %102, %1379
%1381 = tail call float @llvm.fmuladd.f32(float %1375, float %100, float %1380)
store float %1381, float* %110
%1382 = fneg float %1374
%1383 = fmul float %100, %1382
%1384 = tail call float @llvm.fmuladd.f32(float %1373, float %101, float %1383)
store float %1384, float* %114
%1385 = fsub float %12, %44
%1386 = fsub float %17, %47
%1387 = fsub float %22, %50
%1388 = fmul float %1386, %1381
%1389 = tail call float @llvm.fmuladd.f32(float %1385, float %1378, float %1388)
%1390 = tail call float @llvm.fmuladd.f32(float %1387, float %1384, float %1389)
%1391 = fcmp ule float %1390, 0.000000e+00
%1392 = zext i1 %1391 to i32
br label %6747
1393: ; preds = %1259
%1394 = fcmp olt float %142, 0.000000e+00
%1395 = fcmp olt float %120, 0.000000e+00
br i1 %1394, label %1396, label %1528
1396: ; preds = %1393
br i1 %1395, label %1397, label %1441
1397: ; preds = %1396
%1398 = fsub float %12, %55
%1399 = fsub float %17, %57
%1400 = fsub float %22, %59
%1401 = fsub float %44, %55
%1402 = fsub float %47, %57
%1403 = fsub float %50, %59
%1404 = fneg float %1400
%1405 = fmul float %1402, %1404
%1406 = tail call float @llvm.fmuladd.f32(float %1399, float %1403, float %1405)
%1407 = fneg float %1398
%1408 = fmul float %1403, %1407
%1409 = tail call float @llvm.fmuladd.f32(float %1400, float %1401, float %1408)
%1410 = fneg float %1399
%1411 = fmul float %1401, %1410
%1412 = tail call float @llvm.fmuladd.f32(float %1398, float %1402, float %1411)
%1413 = fsub float %11, %55
%1414 = fsub float %15, %57
%1415 = fsub float %20, %59
%1416 = fmul float %1414, %1409
%1417 = tail call float @llvm.fmuladd.f32(float %1413, float %1406, float %1416)
%1418 = tail call float @llvm.fmuladd.f32(float %1415, float %1412, float %1417)
%1419 = fcmp ogt float %1418, 0.000000e+00
br i1 %1419, label %6747, label %1420
1420: ; preds = %1397
%1421 = fsub float %12, %44
%1422 = fsub float %17, %47
%1423 = fsub float %22, %50
%1424 = fneg float %1423
%1425 = fmul float %101, %1424
%1426 = tail call float @llvm.fmuladd.f32(float %1422, float %102, float %1425)
store float %1426, float* %106
%1427 = fneg float %1421
%1428 = fmul float %102, %1427
%1429 = tail call float @llvm.fmuladd.f32(float %1423, float %100, float %1428)
store float %1429, float* %110
%1430 = fneg float %1422
%1431 = fmul float %100, %1430
%1432 = tail call float @llvm.fmuladd.f32(float %1421, float %101, float %1431)
store float %1432, float* %114
%1433 = fsub float %24, %44
%1434 = fsub float %27, %47
%1435 = fsub float %30, %50
%1436 = fmul float %1434, %1429
%1437 = tail call float @llvm.fmuladd.f32(float %1433, float %1426, float %1436)
%1438 = tail call float @llvm.fmuladd.f32(float %1435, float %1432, float %1437)
%1439 = fcmp ule float %1438, 0.000000e+00
%1440 = zext i1 %1439 to i32
br label %6747
1441: ; preds = %1396
%1442 = fcmp olt float %145, 0.000000e+00
br i1 %1442, label %1443, label %1487
1443: ; preds = %1441
%1444 = fsub float %24, %55
%1445 = fsub float %27, %57
%1446 = fsub float %30, %59
%1447 = fsub float %44, %55
%1448 = fsub float %47, %57
%1449 = fsub float %50, %59
%1450 = fneg float %1446
%1451 = fmul float %1448, %1450
%1452 = tail call float @llvm.fmuladd.f32(float %1445, float %1449, float %1451)
%1453 = fneg float %1444
%1454 = fmul float %1449, %1453
%1455 = tail call float @llvm.fmuladd.f32(float %1446, float %1447, float %1454)
%1456 = fneg float %1445
%1457 = fmul float %1447, %1456
%1458 = tail call float @llvm.fmuladd.f32(float %1444, float %1448, float %1457)
%1459 = fsub float %12, %55
%1460 = fsub float %17, %57
%1461 = fsub float %22, %59
%1462 = fmul float %1460, %1455
%1463 = tail call float @llvm.fmuladd.f32(float %1459, float %1452, float %1462)
%1464 = tail call float @llvm.fmuladd.f32(float %1461, float %1458, float %1463)
%1465 = fcmp ogt float %1464, 0.000000e+00
br i1 %1465, label %6747, label %1466
1466: ; preds = %1443
%1467 = fsub float %24, %44
%1468 = fsub float %27, %47
%1469 = fsub float %30, %50
%1470 = fneg float %1469
%1471 = fmul float %101, %1470
%1472 = tail call float @llvm.fmuladd.f32(float %1468, float %102, float %1471)
store float %1472, float* %106
%1473 = fneg float %1467
%1474 = fmul float %102, %1473
%1475 = tail call float @llvm.fmuladd.f32(float %1469, float %100, float %1474)
store float %1475, float* %110
%1476 = fneg float %1468
%1477 = fmul float %100, %1476
%1478 = tail call float @llvm.fmuladd.f32(float %1467, float %101, float %1477)
store float %1478, float* %114
%1479 = fsub float %11, %44
%1480 = fsub float %15, %47
%1481 = fsub float %20, %50
%1482 = fmul float %1480, %1475
%1483 = tail call float @llvm.fmuladd.f32(float %1479, float %1472, float %1482)
%1484 = tail call float @llvm.fmuladd.f32(float %1481, float %1478, float %1483)
%1485 = fcmp ule float %1484, 0.000000e+00
%1486 = zext i1 %1485 to i32
br label %6747
1487: ; preds = %1441
%1488 = fsub float %44, %60
%1489 = fsub float %47, %67
%1490 = fsub float %50, %74
%1491 = extractelement <2 x float> %132, i64 0
%1492 = fneg float %1491
%1493 = fmul float %1489, %1492
%1494 = extractelement <2 x float> %128, i64 0
%1495 = tail call float @llvm.fmuladd.f32(float %1494, float %1490, float %1493)
%1496 = extractelement <2 x float> %124, i64 0
%1497 = fneg float %1496
%1498 = fmul float %1490, %1497
%1499 = tail call float @llvm.fmuladd.f32(float %1491, float %1488, float %1498)
%1500 = fneg float %1494
%1501 = fmul float %1488, %1500
%1502 = tail call float @llvm.fmuladd.f32(float %1496, float %1489, float %1501)
%1503 = fmul float %116, %1499
%1504 = tail call float @llvm.fmuladd.f32(float %115, float %1495, float %1503)
%1505 = tail call float @llvm.fmuladd.f32(float %117, float %1502, float %1504)
%1506 = fcmp ogt float %1505, 0.000000e+00
br i1 %1506, label %6747, label %1507
1507: ; preds = %1487
%1508 = fsub float %11, %44
%1509 = fsub float %15, %47
%1510 = fsub float %20, %50
%1511 = fneg float %1510
%1512 = fmul float %98, %1511
%1513 = tail call float @llvm.fmuladd.f32(float %1509, float %99, float %1512)
store float %1513, float* %106
%1514 = fneg float %1508
%1515 = fmul float %99, %1514
%1516 = tail call float @llvm.fmuladd.f32(float %1510, float %97, float %1515)
store float %1516, float* %110
%1517 = fneg float %1509
%1518 = fmul float %97, %1517
%1519 = tail call float @llvm.fmuladd.f32(float %1508, float %98, float %1518)
store float %1519, float* %114
%1520 = fsub float %12, %44
%1521 = fsub float %17, %47
%1522 = fsub float %22, %50
%1523 = fmul float %1521, %1516
%1524 = tail call float @llvm.fmuladd.f32(float %1520, float %1513, float %1523)
%1525 = tail call float @llvm.fmuladd.f32(float %1522, float %1519, float %1524)
%1526 = fcmp ule float %1525, 0.000000e+00
%1527 = zext i1 %1526 to i32
br label %6747
1528: ; preds = %1393
br i1 %1395, label %1529, label %1616
1529: ; preds = %1528
%1530 = fcmp ult float %145, 0.000000e+00
br i1 %1530, label %1572, label %1531
1531: ; preds = %1529
%1532 = fsub float %44, %60
%1533 = fsub float %47, %67
%1534 = fsub float %50, %74
%1535 = fneg float %117
%1536 = fmul float %1533, %1535
%1537 = tail call float @llvm.fmuladd.f32(float %116, float %1534, float %1536)
%1538 = fneg float %115
%1539 = fmul float %1534, %1538
%1540 = tail call float @llvm.fmuladd.f32(float %117, float %1532, float %1539)
%1541 = fneg float %116
%1542 = fmul float %1532, %1541
%1543 = tail call float @llvm.fmuladd.f32(float %115, float %1533, float %1542)
%1544 = extractelement <2 x float> %128, i64 1
%1545 = fmul float %1544, %1540
%1546 = extractelement <2 x float> %124, i64 1
%1547 = tail call float @llvm.fmuladd.f32(float %1546, float %1537, float %1545)
%1548 = extractelement <2 x float> %132, i64 1
%1549 = tail call float @llvm.fmuladd.f32(float %1548, float %1543, float %1547)
%1550 = fcmp ogt float %1549, 0.000000e+00
br i1 %1550, label %6747, label %1551
1551: ; preds = %1531
%1552 = fsub float %24, %44
%1553 = fsub float %27, %47
%1554 = fsub float %30, %50
%1555 = fneg float %1554
%1556 = fmul float %98, %1555
%1557 = tail call float @llvm.fmuladd.f32(float %1553, float %99, float %1556)
store float %1557, float* %106
%1558 = fneg float %1552
%1559 = fmul float %99, %1558
%1560 = tail call float @llvm.fmuladd.f32(float %1554, float %97, float %1559)
store float %1560, float* %110
%1561 = fneg float %1553
%1562 = fmul float %97, %1561
%1563 = tail call float @llvm.fmuladd.f32(float %1552, float %98, float %1562)
store float %1563, float* %114
%1564 = fsub float %11, %44
%1565 = fsub float %15, %47
%1566 = fsub float %20, %50
%1567 = fmul float %1565, %1560
%1568 = tail call float @llvm.fmuladd.f32(float %1564, float %1557, float %1567)
%1569 = tail call float @llvm.fmuladd.f32(float %1566, float %1563, float %1568)
%1570 = fcmp ule float %1569, 0.000000e+00
%1571 = zext i1 %1570 to i32
br label %6747
1572: ; preds = %1529
%1573 = fsub float %11, %55
%1574 = fsub float %15, %57
%1575 = fsub float %20, %59
%1576 = fsub float %44, %55
%1577 = fsub float %47, %57
%1578 = fsub float %50, %59
%1579 = fneg float %1575
%1580 = fmul float %1577, %1579
%1581 = tail call float @llvm.fmuladd.f32(float %1574, float %1578, float %1580)
%1582 = fneg float %1573
%1583 = fmul float %1578, %1582
%1584 = tail call float @llvm.fmuladd.f32(float %1575, float %1576, float %1583)
%1585 = fneg float %1574
%1586 = fmul float %1576, %1585
%1587 = tail call float @llvm.fmuladd.f32(float %1573, float %1577, float %1586)
%1588 = fsub float %24, %55
%1589 = fsub float %27, %57
%1590 = fsub float %30, %59
%1591 = fmul float %1589, %1584
%1592 = tail call float @llvm.fmuladd.f32(float %1588, float %1581, float %1591)
%1593 = tail call float @llvm.fmuladd.f32(float %1590, float %1587, float %1592)
%1594 = fcmp ogt float %1593, 0.000000e+00
br i1 %1594, label %6747, label %1595
1595: ; preds = %1572
%1596 = fsub float %11, %44
%1597 = fsub float %15, %47
%1598 = fsub float %20, %50
%1599 = fneg float %1598
%1600 = fmul float %101, %1599
%1601 = tail call float @llvm.fmuladd.f32(float %1597, float %102, float %1600)
store float %1601, float* %106
%1602 = fneg float %1596
%1603 = fmul float %102, %1602
%1604 = tail call float @llvm.fmuladd.f32(float %1598, float %100, float %1603)
store float %1604, float* %110
%1605 = fneg float %1597
%1606 = fmul float %100, %1605
%1607 = tail call float @llvm.fmuladd.f32(float %1596, float %101, float %1606)
store float %1607, float* %114
%1608 = fsub float %12, %44
%1609 = fsub float %17, %47
%1610 = fsub float %22, %50
%1611 = fmul float %1609, %1604
%1612 = tail call float @llvm.fmuladd.f32(float %1608, float %1601, float %1611)
%1613 = tail call float @llvm.fmuladd.f32(float %1610, float %1607, float %1612)
%1614 = fcmp ule float %1613, 0.000000e+00
%1615 = zext i1 %1614 to i32
br label %6747
1616: ; preds = %1528
%1617 = fcmp ogt float %120, 0.000000e+00
%1618 = fcmp ogt float %145, 0.000000e+00
br i1 %1617, label %1619, label %1705
1619: ; preds = %1616
br i1 %1618, label %1620, label %1661
1620: ; preds = %1619
%1621 = fsub float %44, %60
%1622 = fsub float %47, %67
%1623 = fsub float %50, %74
%1624 = extractelement <2 x float> %132, i64 0
%1625 = fneg float %1624
%1626 = fmul float %1622, %1625
%1627 = extractelement <2 x float> %128, i64 0
%1628 = tail call float @llvm.fmuladd.f32(float %1627, float %1623, float %1626)
%1629 = extractelement <2 x float> %124, i64 0
%1630 = fneg float %1629
%1631 = fmul float %1623, %1630
%1632 = tail call float @llvm.fmuladd.f32(float %1624, float %1621, float %1631)
%1633 = fneg float %1627
%1634 = fmul float %1621, %1633
%1635 = tail call float @llvm.fmuladd.f32(float %1629, float %1622, float %1634)
%1636 = fmul float %116, %1632
%1637 = tail call float @llvm.fmuladd.f32(float %115, float %1628, float %1636)
%1638 = tail call float @llvm.fmuladd.f32(float %117, float %1635, float %1637)
%1639 = fcmp ogt float %1638, 0.000000e+00
br i1 %1639, label %6747, label %1640
1640: ; preds = %1620
%1641 = fsub float %11, %44
%1642 = fsub float %15, %47
%1643 = fsub float %20, %50
%1644 = fneg float %1643
%1645 = fmul float %98, %1644
%1646 = tail call float @llvm.fmuladd.f32(float %1642, float %99, float %1645)
store float %1646, float* %106
%1647 = fneg float %1641
%1648 = fmul float %99, %1647
%1649 = tail call float @llvm.fmuladd.f32(float %1643, float %97, float %1648)
store float %1649, float* %110
%1650 = fneg float %1642
%1651 = fmul float %97, %1650
%1652 = tail call float @llvm.fmuladd.f32(float %1641, float %98, float %1651)
store float %1652, float* %114
%1653 = fsub float %12, %44
%1654 = fsub float %17, %47
%1655 = fsub float %22, %50
%1656 = fmul float %1654, %1649
%1657 = tail call float @llvm.fmuladd.f32(float %1653, float %1646, float %1656)
%1658 = tail call float @llvm.fmuladd.f32(float %1655, float %1652, float %1657)
%1659 = fcmp ule float %1658, 0.000000e+00
%1660 = zext i1 %1659 to i32
br label %6747
1661: ; preds = %1619
%1662 = fsub float %24, %55
%1663 = fsub float %27, %57
%1664 = fsub float %30, %59
%1665 = fsub float %44, %55
%1666 = fsub float %47, %57
%1667 = fsub float %50, %59
%1668 = fneg float %1664
%1669 = fmul float %1666, %1668
%1670 = tail call float @llvm.fmuladd.f32(float %1663, float %1667, float %1669)
%1671 = fneg float %1662
%1672 = fmul float %1667, %1671
%1673 = tail call float @llvm.fmuladd.f32(float %1664, float %1665, float %1672)
%1674 = fneg float %1663
%1675 = fmul float %1665, %1674
%1676 = tail call float @llvm.fmuladd.f32(float %1662, float %1666, float %1675)
%1677 = fsub float %12, %55
%1678 = fsub float %17, %57
%1679 = fsub float %22, %59
%1680 = fmul float %1678, %1673
%1681 = tail call float @llvm.fmuladd.f32(float %1677, float %1670, float %1680)
%1682 = tail call float @llvm.fmuladd.f32(float %1679, float %1676, float %1681)
%1683 = fcmp ogt float %1682, 0.000000e+00
br i1 %1683, label %6747, label %1684
1684: ; preds = %1661
%1685 = fsub float %24, %44
%1686 = fsub float %27, %47
%1687 = fsub float %30, %50
%1688 = fneg float %1687
%1689 = fmul float %101, %1688
%1690 = tail call float @llvm.fmuladd.f32(float %1686, float %102, float %1689)
store float %1690, float* %106
%1691 = fneg float %1685
%1692 = fmul float %102, %1691
%1693 = tail call float @llvm.fmuladd.f32(float %1687, float %100, float %1692)
store float %1693, float* %110
%1694 = fneg float %1686
%1695 = fmul float %100, %1694
%1696 = tail call float @llvm.fmuladd.f32(float %1685, float %101, float %1695)
store float %1696, float* %114
%1697 = fsub float %11, %44
%1698 = fsub float %15, %47
%1699 = fsub float %20, %50
%1700 = fmul float %1698, %1693
%1701 = tail call float @llvm.fmuladd.f32(float %1697, float %1690, float %1700)
%1702 = tail call float @llvm.fmuladd.f32(float %1699, float %1696, float %1701)
%1703 = fcmp ule float %1702, 0.000000e+00
%1704 = zext i1 %1703 to i32
br label %6747
1705: ; preds = %1616
br i1 %1618, label %1706, label %1750
1706: ; preds = %1705
%1707 = fsub float %12, %55
%1708 = fsub float %17, %57
%1709 = fsub float %22, %59
%1710 = fsub float %44, %55
%1711 = fsub float %47, %57
%1712 = fsub float %50, %59
%1713 = fneg float %1709
%1714 = fmul float %1711, %1713
%1715 = tail call float @llvm.fmuladd.f32(float %1708, float %1712, float %1714)
%1716 = fneg float %1707
%1717 = fmul float %1712, %1716
%1718 = tail call float @llvm.fmuladd.f32(float %1709, float %1710, float %1717)
%1719 = fneg float %1708
%1720 = fmul float %1710, %1719
%1721 = tail call float @llvm.fmuladd.f32(float %1707, float %1711, float %1720)
%1722 = fsub float %11, %55
%1723 = fsub float %15, %57
%1724 = fsub float %20, %59
%1725 = fmul float %1723, %1718
%1726 = tail call float @llvm.fmuladd.f32(float %1722, float %1715, float %1725)
%1727 = tail call float @llvm.fmuladd.f32(float %1724, float %1721, float %1726)
%1728 = fcmp ogt float %1727, 0.000000e+00
br i1 %1728, label %6747, label %1729
1729: ; preds = %1706
%1730 = fsub float %12, %44
%1731 = fsub float %17, %47
%1732 = fsub float %22, %50
%1733 = fneg float %1732
%1734 = fmul float %101, %1733
%1735 = tail call float @llvm.fmuladd.f32(float %1731, float %102, float %1734)
store float %1735, float* %106
%1736 = fneg float %1730
%1737 = fmul float %102, %1736
%1738 = tail call float @llvm.fmuladd.f32(float %1732, float %100, float %1737)
store float %1738, float* %110
%1739 = fneg float %1731
%1740 = fmul float %100, %1739
%1741 = tail call float @llvm.fmuladd.f32(float %1730, float %101, float %1740)
store float %1741, float* %114
%1742 = fsub float %24, %44
%1743 = fsub float %27, %47
%1744 = fsub float %30, %50
%1745 = fmul float %1743, %1738
%1746 = tail call float @llvm.fmuladd.f32(float %1742, float %1735, float %1745)
%1747 = tail call float @llvm.fmuladd.f32(float %1744, float %1741, float %1746)
%1748 = fcmp ule float %1747, 0.000000e+00
%1749 = zext i1 %1748 to i32
br label %6747
1750: ; preds = %1705
%1751 = fcmp olt float %145, 0.000000e+00
br i1 %1751, label %1752, label %1796
1752: ; preds = %1750
%1753 = fsub float %44, %60
%1754 = fsub float %47, %67
%1755 = fsub float %50, %74
%1756 = extractelement <2 x float> %132, i64 1
%1757 = fneg float %1756
%1758 = fmul float %1754, %1757
%1759 = extractelement <2 x float> %128, i64 1
%1760 = tail call float @llvm.fmuladd.f32(float %1759, float %1755, float %1758)
%1761 = extractelement <2 x float> %124, i64 1
%1762 = fneg float %1761
%1763 = fmul float %1755, %1762
%1764 = tail call float @llvm.fmuladd.f32(float %1756, float %1753, float %1763)
%1765 = fneg float %1759
%1766 = fmul float %1753, %1765
%1767 = tail call float @llvm.fmuladd.f32(float %1761, float %1754, float %1766)
%1768 = extractelement <2 x float> %128, i64 0
%1769 = fmul float %1768, %1764
%1770 = extractelement <2 x float> %124, i64 0
%1771 = tail call float @llvm.fmuladd.f32(float %1770, float %1760, float %1769)
%1772 = extractelement <2 x float> %132, i64 0
%1773 = tail call float @llvm.fmuladd.f32(float %1772, float %1767, float %1771)
%1774 = fcmp ogt float %1773, 0.000000e+00
br i1 %1774, label %6747, label %1775
1775: ; preds = %1752
%1776 = fsub float %12, %44
%1777 = fsub float %17, %47
%1778 = fsub float %22, %50
%1779 = fneg float %1778
%1780 = fmul float %98, %1779
%1781 = tail call float @llvm.fmuladd.f32(float %1777, float %99, float %1780)
store float %1781, float* %106
%1782 = fneg float %1776
%1783 = fmul float %99, %1782
%1784 = tail call float @llvm.fmuladd.f32(float %1778, float %97, float %1783)
store float %1784, float* %110
%1785 = fneg float %1777
%1786 = fmul float %97, %1785
%1787 = tail call float @llvm.fmuladd.f32(float %1776, float %98, float %1786)
store float %1787, float* %114
%1788 = fsub float %24, %44
%1789 = fsub float %27, %47
%1790 = fsub float %30, %50
%1791 = fmul float %1789, %1784
%1792 = tail call float @llvm.fmuladd.f32(float %1788, float %1781, float %1791)
%1793 = tail call float @llvm.fmuladd.f32(float %1790, float %1787, float %1792)
%1794 = fcmp ule float %1793, 0.000000e+00
%1795 = zext i1 %1794 to i32
br label %6747
1796: ; preds = %1750
%1797 = call i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...) bitcast (i32 (...)* @coplanar_tri_tri3d to i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...)*)(float* %0, float* %1, float* %2, float* %3, float* %4, float* %5, float* %106, float* %35)
br label %6747
1798: ; preds = %149
%1799 = fcmp olt float %54, 0.000000e+00
%1800 = fcmp olt float %89, 0.000000e+00
br i1 %1799, label %1801, label %3447
1801: ; preds = %1798
br i1 %1800, label %1802, label %2348
1802: ; preds = %1801
%1803 = fcmp ogt float %142, 0.000000e+00
br i1 %1803, label %1804, label %1940
1804: ; preds = %1802
%1805 = fcmp ogt float %120, 0.000000e+00
br i1 %1805, label %1806, label %1850
1806: ; preds = %1804
%1807 = fsub float %12, %55
%1808 = fsub float %17, %57
%1809 = fsub float %22, %59
%1810 = fsub float %60, %55
%1811 = fsub float %67, %57
%1812 = fsub float %74, %59
%1813 = fneg float %1809
%1814 = fmul float %1811, %1813
%1815 = tail call float @llvm.fmuladd.f32(float %1808, float %1812, float %1814)
%1816 = fneg float %1807
%1817 = fmul float %1812, %1816
%1818 = tail call float @llvm.fmuladd.f32(float %1809, float %1810, float %1817)
%1819 = fneg float %1808
%1820 = fmul float %1810, %1819
%1821 = tail call float @llvm.fmuladd.f32(float %1807, float %1811, float %1820)
%1822 = fsub float %11, %55
%1823 = fsub float %15, %57
%1824 = fsub float %20, %59
%1825 = fmul float %1823, %1818
%1826 = tail call float @llvm.fmuladd.f32(float %1822, float %1815, float %1825)
%1827 = tail call float @llvm.fmuladd.f32(float %1824, float %1821, float %1826)
%1828 = fcmp ogt float %1827, 0.000000e+00
br i1 %1828, label %6747, label %1829
1829: ; preds = %1806
%1830 = fsub float %44, %60
%1831 = fsub float %47, %67
%1832 = fsub float %50, %74
%1833 = extractelement <2 x float> %132, i64 1
%1834 = fneg float %1833
%1835 = fmul float %1831, %1834
%1836 = extractelement <2 x float> %128, i64 1
%1837 = tail call float @llvm.fmuladd.f32(float %1836, float %1832, float %1835)
store float %1837, float* %106
%1838 = extractelement <2 x float> %124, i64 1
%1839 = fneg float %1838
%1840 = fmul float %1832, %1839
%1841 = tail call float @llvm.fmuladd.f32(float %1833, float %1830, float %1840)
store float %1841, float* %110
%1842 = fneg float %1836
%1843 = fmul float %1830, %1842
%1844 = tail call float @llvm.fmuladd.f32(float %1838, float %1831, float %1843)
store float %1844, float* %114
%1845 = fmul float %116, %1841
%1846 = tail call float @llvm.fmuladd.f32(float %115, float %1837, float %1845)
%1847 = tail call float @llvm.fmuladd.f32(float %117, float %1844, float %1846)
%1848 = fcmp ule float %1847, 0.000000e+00
%1849 = zext i1 %1848 to i32
br label %6747
1850: ; preds = %1804
%1851 = fcmp ogt float %145, 0.000000e+00
br i1 %1851, label %1852, label %1896
1852: ; preds = %1850
%1853 = fsub float %24, %55
%1854 = fsub float %27, %57
%1855 = fsub float %30, %59
%1856 = fsub float %60, %55
%1857 = fsub float %67, %57
%1858 = fsub float %74, %59
%1859 = fneg float %1855
%1860 = fmul float %1857, %1859
%1861 = tail call float @llvm.fmuladd.f32(float %1854, float %1858, float %1860)
%1862 = fneg float %1853
%1863 = fmul float %1858, %1862
%1864 = tail call float @llvm.fmuladd.f32(float %1855, float %1856, float %1863)
%1865 = fneg float %1854
%1866 = fmul float %1856, %1865
%1867 = tail call float @llvm.fmuladd.f32(float %1853, float %1857, float %1866)
%1868 = fsub float %12, %55
%1869 = fsub float %17, %57
%1870 = fsub float %22, %59
%1871 = fmul float %1869, %1864
%1872 = tail call float @llvm.fmuladd.f32(float %1868, float %1861, float %1871)
%1873 = tail call float @llvm.fmuladd.f32(float %1870, float %1867, float %1872)
%1874 = fcmp ogt float %1873, 0.000000e+00
br i1 %1874, label %6747, label %1875
1875: ; preds = %1852
%1876 = fsub float %44, %60
%1877 = fsub float %47, %67
%1878 = fsub float %50, %74
%1879 = fneg float %117
%1880 = fmul float %1877, %1879
%1881 = tail call float @llvm.fmuladd.f32(float %116, float %1878, float %1880)
store float %1881, float* %106
%1882 = fneg float %115
%1883 = fmul float %1878, %1882
%1884 = tail call float @llvm.fmuladd.f32(float %117, float %1876, float %1883)
store float %1884, float* %110
%1885 = fneg float %116
%1886 = fmul float %1876, %1885
%1887 = tail call float @llvm.fmuladd.f32(float %115, float %1877, float %1886)
store float %1887, float* %114
%1888 = extractelement <2 x float> %128, i64 0
%1889 = fmul float %1888, %1884
%1890 = extractelement <2 x float> %124, i64 0
%1891 = tail call float @llvm.fmuladd.f32(float %1890, float %1881, float %1889)
%1892 = extractelement <2 x float> %132, i64 0
%1893 = tail call float @llvm.fmuladd.f32(float %1892, float %1887, float %1891)
%1894 = fcmp ule float %1893, 0.000000e+00
%1895 = zext i1 %1894 to i32
br label %6747
1896: ; preds = %1850
%1897 = fsub float %11, %44
%1898 = fsub float %15, %47
%1899 = fsub float %20, %50
%1900 = fneg float %1899
%1901 = fmul float %101, %1900
%1902 = tail call float @llvm.fmuladd.f32(float %1898, float %102, float %1901)
%1903 = fneg float %1897
%1904 = fmul float %102, %1903
%1905 = tail call float @llvm.fmuladd.f32(float %1899, float %100, float %1904)
%1906 = fneg float %1898
%1907 = fmul float %100, %1906
%1908 = tail call float @llvm.fmuladd.f32(float %1897, float %101, float %1907)
%1909 = fsub float %24, %44
%1910 = fsub float %27, %47
%1911 = fsub float %30, %50
%1912 = fmul float %1910, %1905
%1913 = tail call float @llvm.fmuladd.f32(float %1909, float %1902, float %1912)
%1914 = tail call float @llvm.fmuladd.f32(float %1911, float %1908, float %1913)
%1915 = fcmp ogt float %1914, 0.000000e+00
br i1 %1915, label %6747, label %1916
1916: ; preds = %1896
%1917 = fsub float %55, %60
%1918 = fsub float %57, %67
%1919 = fsub float %59, %74
%1920 = extractelement <2 x float> %132, i64 0
%1921 = fneg float %1920
%1922 = fmul float %1918, %1921
%1923 = extractelement <2 x float> %128, i64 0
%1924 = tail call float @llvm.fmuladd.f32(float %1923, float %1919, float %1922)
store float %1924, float* %106
%1925 = extractelement <2 x float> %124, i64 0
%1926 = fneg float %1925
%1927 = fmul float %1919, %1926
%1928 = tail call float @llvm.fmuladd.f32(float %1920, float %1917, float %1927)
store float %1928, float* %110
%1929 = fneg float %1923
%1930 = fmul float %1917, %1929
%1931 = tail call float @llvm.fmuladd.f32(float %1925, float %1918, float %1930)
store float %1931, float* %114
%1932 = extractelement <2 x float> %128, i64 1
%1933 = fmul float %1932, %1928
%1934 = extractelement <2 x float> %124, i64 1
%1935 = tail call float @llvm.fmuladd.f32(float %1934, float %1924, float %1933)
%1936 = extractelement <2 x float> %132, i64 1
%1937 = tail call float @llvm.fmuladd.f32(float %1936, float %1931, float %1935)
%1938 = fcmp ule float %1937, 0.000000e+00
%1939 = zext i1 %1938 to i32
br label %6747
1940: ; preds = %1802
%1941 = fcmp olt float %142, 0.000000e+00
%1942 = fcmp olt float %120, 0.000000e+00
br i1 %1941, label %1943, label %2075
1943: ; preds = %1940
br i1 %1942, label %1944, label %1985
1944: ; preds = %1943
%1945 = fsub float %12, %44
%1946 = fsub float %17, %47
%1947 = fsub float %22, %50
%1948 = fneg float %1947
%1949 = fmul float %101, %1948
%1950 = tail call float @llvm.fmuladd.f32(float %1946, float %102, float %1949)
%1951 = fneg float %1945
%1952 = fmul float %102, %1951
%1953 = tail call float @llvm.fmuladd.f32(float %1947, float %100, float %1952)
%1954 = fneg float %1946
%1955 = fmul float %100, %1954
%1956 = tail call float @llvm.fmuladd.f32(float %1945, float %101, float %1955)
%1957 = fsub float %11, %44
%1958 = fsub float %15, %47
%1959 = fsub float %20, %50
%1960 = fmul float %1958, %1953
%1961 = tail call float @llvm.fmuladd.f32(float %1957, float %1950, float %1960)
%1962 = tail call float @llvm.fmuladd.f32(float %1959, float %1956, float %1961)
%1963 = fcmp ogt float %1962, 0.000000e+00
br i1 %1963, label %6747, label %1964
1964: ; preds = %1944
%1965 = fsub float %55, %60
%1966 = fsub float %57, %67
%1967 = fsub float %59, %74
%1968 = extractelement <2 x float> %132, i64 1
%1969 = fneg float %1968
%1970 = fmul float %1966, %1969
%1971 = extractelement <2 x float> %128, i64 1
%1972 = tail call float @llvm.fmuladd.f32(float %1971, float %1967, float %1970)
store float %1972, float* %106
%1973 = extractelement <2 x float> %124, i64 1
%1974 = fneg float %1973
%1975 = fmul float %1967, %1974
%1976 = tail call float @llvm.fmuladd.f32(float %1968, float %1965, float %1975)
store float %1976, float* %110
%1977 = fneg float %1971
%1978 = fmul float %1965, %1977
%1979 = tail call float @llvm.fmuladd.f32(float %1973, float %1966, float %1978)
store float %1979, float* %114
%1980 = fmul float %116, %1976
%1981 = tail call float @llvm.fmuladd.f32(float %115, float %1972, float %1980)
%1982 = tail call float @llvm.fmuladd.f32(float %117, float %1979, float %1981)
%1983 = fcmp ule float %1982, 0.000000e+00
%1984 = zext i1 %1983 to i32
br label %6747
1985: ; preds = %1943
%1986 = fcmp olt float %145, 0.000000e+00
br i1 %1986, label %1987, label %2028
1987: ; preds = %1985
%1988 = fsub float %24, %44
%1989 = fsub float %27, %47
%1990 = fsub float %30, %50
%1991 = fneg float %1990
%1992 = fmul float %101, %1991
%1993 = tail call float @llvm.fmuladd.f32(float %1989, float %102, float %1992)
%1994 = fneg float %1988
%1995 = fmul float %102, %1994
%1996 = tail call float @llvm.fmuladd.f32(float %1990, float %100, float %1995)
%1997 = fneg float %1989
%1998 = fmul float %100, %1997
%1999 = tail call float @llvm.fmuladd.f32(float %1988, float %101, float %1998)
%2000 = fsub float %12, %44
%2001 = fsub float %17, %47
%2002 = fsub float %22, %50
%2003 = fmul float %2001, %1996
%2004 = tail call float @llvm.fmuladd.f32(float %2000, float %1993, float %2003)
%2005 = tail call float @llvm.fmuladd.f32(float %2002, float %1999, float %2004)
%2006 = fcmp ogt float %2005, 0.000000e+00
br i1 %2006, label %6747, label %2007
2007: ; preds = %1987
%2008 = fsub float %55, %60
%2009 = fsub float %57, %67
%2010 = fsub float %59, %74
%2011 = fneg float %117
%2012 = fmul float %2009, %2011
%2013 = tail call float @llvm.fmuladd.f32(float %116, float %2010, float %2012)
store float %2013, float* %106
%2014 = fneg float %115
%2015 = fmul float %2010, %2014
%2016 = tail call float @llvm.fmuladd.f32(float %117, float %2008, float %2015)
store float %2016, float* %110
%2017 = fneg float %116
%2018 = fmul float %2008, %2017
%2019 = tail call float @llvm.fmuladd.f32(float %115, float %2009, float %2018)
store float %2019, float* %114
%2020 = extractelement <2 x float> %128, i64 0
%2021 = fmul float %2020, %2016
%2022 = extractelement <2 x float> %124, i64 0
%2023 = tail call float @llvm.fmuladd.f32(float %2022, float %2013, float %2021)
%2024 = extractelement <2 x float> %132, i64 0
%2025 = tail call float @llvm.fmuladd.f32(float %2024, float %2019, float %2023)
%2026 = fcmp ule float %2025, 0.000000e+00
%2027 = zext i1 %2026 to i32
br label %6747
2028: ; preds = %1985
%2029 = fsub float %11, %55
%2030 = fsub float %15, %57
%2031 = fsub float %20, %59
%2032 = fsub float %60, %55
%2033 = fsub float %67, %57
%2034 = fsub float %74, %59
%2035 = fneg float %2031
%2036 = fmul float %2033, %2035
%2037 = tail call float @llvm.fmuladd.f32(float %2030, float %2034, float %2036)
%2038 = fneg float %2029
%2039 = fmul float %2034, %2038
%2040 = tail call float @llvm.fmuladd.f32(float %2031, float %2032, float %2039)
%2041 = fneg float %2030
%2042 = fmul float %2032, %2041
%2043 = tail call float @llvm.fmuladd.f32(float %2029, float %2033, float %2042)
%2044 = fsub float %24, %55
%2045 = fsub float %27, %57
%2046 = fsub float %30, %59
%2047 = fmul float %2045, %2040
%2048 = tail call float @llvm.fmuladd.f32(float %2044, float %2037, float %2047)
%2049 = tail call float @llvm.fmuladd.f32(float %2046, float %2043, float %2048)
%2050 = fcmp ogt float %2049, 0.000000e+00
br i1 %2050, label %6747, label %2051
2051: ; preds = %2028
%2052 = fsub float %44, %60
%2053 = fsub float %47, %67
%2054 = fsub float %50, %74
%2055 = extractelement <2 x float> %132, i64 0
%2056 = fneg float %2055
%2057 = fmul float %2053, %2056
%2058 = extractelement <2 x float> %128, i64 0
%2059 = tail call float @llvm.fmuladd.f32(float %2058, float %2054, float %2057)
store float %2059, float* %106
%2060 = extractelement <2 x float> %124, i64 0
%2061 = fneg float %2060
%2062 = fmul float %2054, %2061
%2063 = tail call float @llvm.fmuladd.f32(float %2055, float %2052, float %2062)
store float %2063, float* %110
%2064 = fneg float %2058
%2065 = fmul float %2052, %2064
%2066 = tail call float @llvm.fmuladd.f32(float %2060, float %2053, float %2065)
store float %2066, float* %114
%2067 = extractelement <2 x float> %128, i64 1
%2068 = fmul float %2067, %2063
%2069 = extractelement <2 x float> %124, i64 1
%2070 = tail call float @llvm.fmuladd.f32(float %2069, float %2059, float %2068)
%2071 = extractelement <2 x float> %132, i64 1
%2072 = tail call float @llvm.fmuladd.f32(float %2071, float %2066, float %2070)
%2073 = fcmp ule float %2072, 0.000000e+00
%2074 = zext i1 %2073 to i32
br label %6747
2075: ; preds = %1940
br i1 %1942, label %2076, label %2166
2076: ; preds = %2075
%2077 = fcmp ult float %145, 0.000000e+00
br i1 %2077, label %2122, label %2078
2078: ; preds = %2076
%2079 = fsub float %24, %55
%2080 = fsub float %27, %57
%2081 = fsub float %30, %59
%2082 = fsub float %60, %55
%2083 = fsub float %67, %57
%2084 = fsub float %74, %59
%2085 = fneg float %2081
%2086 = fmul float %2083, %2085
%2087 = tail call float @llvm.fmuladd.f32(float %2080, float %2084, float %2086)
%2088 = fneg float %2079
%2089 = fmul float %2084, %2088
%2090 = tail call float @llvm.fmuladd.f32(float %2081, float %2082, float %2089)
%2091 = fneg float %2080
%2092 = fmul float %2082, %2091
%2093 = tail call float @llvm.fmuladd.f32(float %2079, float %2083, float %2092)
%2094 = fsub float %12, %55
%2095 = fsub float %17, %57
%2096 = fsub float %22, %59
%2097 = fmul float %2095, %2090
%2098 = tail call float @llvm.fmuladd.f32(float %2094, float %2087, float %2097)
%2099 = tail call float @llvm.fmuladd.f32(float %2096, float %2093, float %2098)
%2100 = fcmp ogt float %2099, 0.000000e+00
br i1 %2100, label %6747, label %2101
2101: ; preds = %2078
%2102 = fsub float %44, %60
%2103 = fsub float %47, %67
%2104 = fsub float %50, %74
%2105 = fneg float %117
%2106 = fmul float %2103, %2105
%2107 = tail call float @llvm.fmuladd.f32(float %116, float %2104, float %2106)
store float %2107, float* %106
%2108 = fneg float %115
%2109 = fmul float %2104, %2108
%2110 = tail call float @llvm.fmuladd.f32(float %117, float %2102, float %2109)
store float %2110, float* %110
%2111 = fneg float %116
%2112 = fmul float %2102, %2111
%2113 = tail call float @llvm.fmuladd.f32(float %115, float %2103, float %2112)
store float %2113, float* %114
%2114 = extractelement <2 x float> %128, i64 0
%2115 = fmul float %2114, %2110
%2116 = extractelement <2 x float> %124, i64 0
%2117 = tail call float @llvm.fmuladd.f32(float %2116, float %2107, float %2115)
%2118 = extractelement <2 x float> %132, i64 0
%2119 = tail call float @llvm.fmuladd.f32(float %2118, float %2113, float %2117)
%2120 = fcmp ule float %2119, 0.000000e+00
%2121 = zext i1 %2120 to i32
br label %6747
2122: ; preds = %2076
%2123 = fsub float %11, %44
%2124 = fsub float %15, %47
%2125 = fsub float %20, %50
%2126 = fneg float %2125
%2127 = fmul float %101, %2126
%2128 = tail call float @llvm.fmuladd.f32(float %2124, float %102, float %2127)
%2129 = fneg float %2123
%2130 = fmul float %102, %2129
%2131 = tail call float @llvm.fmuladd.f32(float %2125, float %100, float %2130)
%2132 = fneg float %2124
%2133 = fmul float %100, %2132
%2134 = tail call float @llvm.fmuladd.f32(float %2123, float %101, float %2133)
%2135 = fsub float %24, %44
%2136 = fsub float %27, %47
%2137 = fsub float %30, %50
%2138 = fmul float %2136, %2131
%2139 = tail call float @llvm.fmuladd.f32(float %2135, float %2128, float %2138)
%2140 = tail call float @llvm.fmuladd.f32(float %2137, float %2134, float %2139)
%2141 = fcmp ogt float %2140, 0.000000e+00
br i1 %2141, label %6747, label %2142
2142: ; preds = %2122
%2143 = fsub float %55, %60
%2144 = fsub float %57, %67
%2145 = fsub float %59, %74
%2146 = extractelement <2 x float> %132, i64 0
%2147 = fneg float %2146
%2148 = fmul float %2144, %2147
%2149 = extractelement <2 x float> %128, i64 0
%2150 = tail call float @llvm.fmuladd.f32(float %2149, float %2145, float %2148)
store float %2150, float* %106
%2151 = extractelement <2 x float> %124, i64 0
%2152 = fneg float %2151
%2153 = fmul float %2145, %2152
%2154 = tail call float @llvm.fmuladd.f32(float %2146, float %2143, float %2153)
store float %2154, float* %110
%2155 = fneg float %2149
%2156 = fmul float %2143, %2155
%2157 = tail call float @llvm.fmuladd.f32(float %2151, float %2144, float %2156)
store float %2157, float* %114
%2158 = extractelement <2 x float> %128, i64 1
%2159 = fmul float %2158, %2154
%2160 = extractelement <2 x float> %124, i64 1
%2161 = tail call float @llvm.fmuladd.f32(float %2160, float %2150, float %2159)
%2162 = extractelement <2 x float> %132, i64 1
%2163 = tail call float @llvm.fmuladd.f32(float %2162, float %2157, float %2161)
%2164 = fcmp ule float %2163, 0.000000e+00
%2165 = zext i1 %2164 to i32
br label %6747
2166: ; preds = %2075
%2167 = fcmp ogt float %120, 0.000000e+00
%2168 = fcmp ogt float %145, 0.000000e+00
br i1 %2167, label %2169, label %2258
2169: ; preds = %2166
br i1 %2168, label %2170, label %2217
2170: ; preds = %2169
%2171 = fsub float %11, %55
%2172 = fsub float %15, %57
%2173 = fsub float %20, %59
%2174 = fsub float %60, %55
%2175 = fsub float %67, %57
%2176 = fsub float %74, %59
%2177 = fneg float %2173
%2178 = fmul float %2175, %2177
%2179 = tail call float @llvm.fmuladd.f32(float %2172, float %2176, float %2178)
%2180 = fneg float %2171
%2181 = fmul float %2176, %2180
%2182 = tail call float @llvm.fmuladd.f32(float %2173, float %2174, float %2181)
%2183 = fneg float %2172
%2184 = fmul float %2174, %2183
%2185 = tail call float @llvm.fmuladd.f32(float %2171, float %2175, float %2184)
%2186 = fsub float %24, %55
%2187 = fsub float %27, %57
%2188 = fsub float %30, %59
%2189 = fmul float %2187, %2182
%2190 = tail call float @llvm.fmuladd.f32(float %2186, float %2179, float %2189)
%2191 = tail call float @llvm.fmuladd.f32(float %2188, float %2185, float %2190)
%2192 = fcmp ogt float %2191, 0.000000e+00
br i1 %2192, label %6747, label %2193
2193: ; preds = %2170
%2194 = fsub float %44, %60
%2195 = fsub float %47, %67
%2196 = fsub float %50, %74
%2197 = extractelement <2 x float> %132, i64 0
%2198 = fneg float %2197
%2199 = fmul float %2195, %2198
%2200 = extractelement <2 x float> %128, i64 0
%2201 = tail call float @llvm.fmuladd.f32(float %2200, float %2196, float %2199)
store float %2201, float* %106
%2202 = extractelement <2 x float> %124, i64 0
%2203 = fneg float %2202
%2204 = fmul float %2196, %2203
%2205 = tail call float @llvm.fmuladd.f32(float %2197, float %2194, float %2204)
store float %2205, float* %110
%2206 = fneg float %2200
%2207 = fmul float %2194, %2206
%2208 = tail call float @llvm.fmuladd.f32(float %2202, float %2195, float %2207)
store float %2208, float* %114
%2209 = extractelement <2 x float> %128, i64 1
%2210 = fmul float %2209, %2205
%2211 = extractelement <2 x float> %124, i64 1
%2212 = tail call float @llvm.fmuladd.f32(float %2211, float %2201, float %2210)
%2213 = extractelement <2 x float> %132, i64 1
%2214 = tail call float @llvm.fmuladd.f32(float %2213, float %2208, float %2212)
%2215 = fcmp ule float %2214, 0.000000e+00
%2216 = zext i1 %2215 to i32
br label %6747
2217: ; preds = %2169
%2218 = fsub float %24, %44
%2219 = fsub float %27, %47
%2220 = fsub float %30, %50
%2221 = fneg float %2220
%2222 = fmul float %101, %2221
%2223 = tail call float @llvm.fmuladd.f32(float %2219, float %102, float %2222)
%2224 = fneg float %2218
%2225 = fmul float %102, %2224
%2226 = tail call float @llvm.fmuladd.f32(float %2220, float %100, float %2225)
%2227 = fneg float %2219
%2228 = fmul float %100, %2227
%2229 = tail call float @llvm.fmuladd.f32(float %2218, float %101, float %2228)
%2230 = fsub float %12, %44
%2231 = fsub float %17, %47
%2232 = fsub float %22, %50
%2233 = fmul float %2231, %2226
%2234 = tail call float @llvm.fmuladd.f32(float %2230, float %2223, float %2233)
%2235 = tail call float @llvm.fmuladd.f32(float %2232, float %2229, float %2234)
%2236 = fcmp ogt float %2235, 0.000000e+00
br i1 %2236, label %6747, label %2237
2237: ; preds = %2217
%2238 = fsub float %55, %60
%2239 = fsub float %57, %67
%2240 = fsub float %59, %74
%2241 = fneg float %117
%2242 = fmul float %2239, %2241
%2243 = tail call float @llvm.fmuladd.f32(float %116, float %2240, float %2242)
store float %2243, float* %106
%2244 = fneg float %115
%2245 = fmul float %2240, %2244
%2246 = tail call float @llvm.fmuladd.f32(float %117, float %2238, float %2245)
store float %2246, float* %110
%2247 = fneg float %116
%2248 = fmul float %2238, %2247
%2249 = tail call float @llvm.fmuladd.f32(float %115, float %2239, float %2248)
store float %2249, float* %114
%2250 = extractelement <2 x float> %128, i64 0
%2251 = fmul float %2250, %2246
%2252 = extractelement <2 x float> %124, i64 0
%2253 = tail call float @llvm.fmuladd.f32(float %2252, float %2243, float %2251)
%2254 = extractelement <2 x float> %132, i64 0
%2255 = tail call float @llvm.fmuladd.f32(float %2254, float %2249, float %2253)
%2256 = fcmp ule float %2255, 0.000000e+00
%2257 = zext i1 %2256 to i32
br label %6747
2258: ; preds = %2166
br i1 %2168, label %2259, label %2300
2259: ; preds = %2258
%2260 = fsub float %12, %44
%2261 = fsub float %17, %47
%2262 = fsub float %22, %50
%2263 = fneg float %2262
%2264 = fmul float %101, %2263
%2265 = tail call float @llvm.fmuladd.f32(float %2261, float %102, float %2264)
%2266 = fneg float %2260
%2267 = fmul float %102, %2266
%2268 = tail call float @llvm.fmuladd.f32(float %2262, float %100, float %2267)
%2269 = fneg float %2261
%2270 = fmul float %100, %2269
%2271 = tail call float @llvm.fmuladd.f32(float %2260, float %101, float %2270)
%2272 = fsub float %11, %44
%2273 = fsub float %15, %47
%2274 = fsub float %20, %50
%2275 = fmul float %2273, %2268
%2276 = tail call float @llvm.fmuladd.f32(float %2272, float %2265, float %2275)
%2277 = tail call float @llvm.fmuladd.f32(float %2274, float %2271, float %2276)
%2278 = fcmp ogt float %2277, 0.000000e+00
br i1 %2278, label %6747, label %2279
2279: ; preds = %2259
%2280 = fsub float %55, %60
%2281 = fsub float %57, %67
%2282 = fsub float %59, %74
%2283 = extractelement <2 x float> %132, i64 1
%2284 = fneg float %2283
%2285 = fmul float %2281, %2284
%2286 = extractelement <2 x float> %128, i64 1
%2287 = tail call float @llvm.fmuladd.f32(float %2286, float %2282, float %2285)
store float %2287, float* %106
%2288 = extractelement <2 x float> %124, i64 1
%2289 = fneg float %2288
%2290 = fmul float %2282, %2289
%2291 = tail call float @llvm.fmuladd.f32(float %2283, float %2280, float %2290)
store float %2291, float* %110
%2292 = fneg float %2286
%2293 = fmul float %2280, %2292
%2294 = tail call float @llvm.fmuladd.f32(float %2288, float %2281, float %2293)
store float %2294, float* %114
%2295 = fmul float %116, %2291
%2296 = tail call float @llvm.fmuladd.f32(float %115, float %2287, float %2295)
%2297 = tail call float @llvm.fmuladd.f32(float %117, float %2294, float %2296)
%2298 = fcmp ule float %2297, 0.000000e+00
%2299 = zext i1 %2298 to i32
br label %6747
2300: ; preds = %2258
%2301 = fcmp olt float %145, 0.000000e+00
br i1 %2301, label %2302, label %2346
2302: ; preds = %2300
%2303 = fsub float %12, %55
%2304 = fsub float %17, %57
%2305 = fsub float %22, %59
%2306 = fsub float %60, %55
%2307 = fsub float %67, %57
%2308 = fsub float %74, %59
%2309 = fneg float %2305
%2310 = fmul float %2307, %2309
%2311 = tail call float @llvm.fmuladd.f32(float %2304, float %2308, float %2310)
%2312 = fneg float %2303
%2313 = fmul float %2308, %2312
%2314 = tail call float @llvm.fmuladd.f32(float %2305, float %2306, float %2313)
%2315 = fneg float %2304
%2316 = fmul float %2306, %2315
%2317 = tail call float @llvm.fmuladd.f32(float %2303, float %2307, float %2316)
%2318 = fsub float %11, %55
%2319 = fsub float %15, %57
%2320 = fsub float %20, %59
%2321 = fmul float %2319, %2314
%2322 = tail call float @llvm.fmuladd.f32(float %2318, float %2311, float %2321)
%2323 = tail call float @llvm.fmuladd.f32(float %2320, float %2317, float %2322)
%2324 = fcmp ogt float %2323, 0.000000e+00
br i1 %2324, label %6747, label %2325
2325: ; preds = %2302
%2326 = fsub float %44, %60
%2327 = fsub float %47, %67
%2328 = fsub float %50, %74
%2329 = extractelement <2 x float> %132, i64 1
%2330 = fneg float %2329
%2331 = fmul float %2327, %2330
%2332 = extractelement <2 x float> %128, i64 1
%2333 = tail call float @llvm.fmuladd.f32(float %2332, float %2328, float %2331)
store float %2333, float* %106
%2334 = extractelement <2 x float> %124, i64 1
%2335 = fneg float %2334
%2336 = fmul float %2328, %2335
%2337 = tail call float @llvm.fmuladd.f32(float %2329, float %2326, float %2336)
store float %2337, float* %110
%2338 = fneg float %2332
%2339 = fmul float %2326, %2338
%2340 = tail call float @llvm.fmuladd.f32(float %2334, float %2327, float %2339)
store float %2340, float* %114
%2341 = fmul float %116, %2337
%2342 = tail call float @llvm.fmuladd.f32(float %115, float %2333, float %2341)
%2343 = tail call float @llvm.fmuladd.f32(float %117, float %2340, float %2342)
%2344 = fcmp ule float %2343, 0.000000e+00
%2345 = zext i1 %2344 to i32
br label %6747
2346: ; preds = %2300
%2347 = call i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...) bitcast (i32 (...)* @coplanar_tri_tri3d to i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...)*)(float* %2, float* %0, float* %1, float* %3, float* %4, float* %5, float* %106, float* %35)
br label %6747
2348: ; preds = %1801
%2349 = fcmp olt float %92, 0.000000e+00
%2350 = fcmp ogt float %142, 0.000000e+00
br i1 %2349, label %2351, label %2908
2351: ; preds = %2348
br i1 %2350, label %2352, label %2488
2352: ; preds = %2351
%2353 = fcmp ogt float %120, 0.000000e+00
br i1 %2353, label %2354, label %2398
2354: ; preds = %2352
%2355 = fsub float %12, %44
%2356 = fsub float %17, %47
%2357 = fsub float %22, %50
%2358 = fneg float %2357
%2359 = fmul float %98, %2358
%2360 = tail call float @llvm.fmuladd.f32(float %2356, float %99, float %2359)
%2361 = fneg float %2355
%2362 = fmul float %99, %2361
%2363 = tail call float @llvm.fmuladd.f32(float %2357, float %97, float %2362)
%2364 = fneg float %2356
%2365 = fmul float %97, %2364
%2366 = tail call float @llvm.fmuladd.f32(float %2355, float %98, float %2365)
%2367 = fsub float %11, %44
%2368 = fsub float %15, %47
%2369 = fsub float %20, %50
%2370 = fmul float %2368, %2363
%2371 = tail call float @llvm.fmuladd.f32(float %2367, float %2360, float %2370)
%2372 = tail call float @llvm.fmuladd.f32(float %2369, float %2366, float %2371)
%2373 = fcmp ogt float %2372, 0.000000e+00
br i1 %2373, label %6747, label %2374
2374: ; preds = %2354
%2375 = fsub float %12, %55
%2376 = fsub float %17, %57
%2377 = fsub float %22, %59
%2378 = fsub float %60, %55
%2379 = fsub float %67, %57
%2380 = fsub float %74, %59
%2381 = fneg float %2377
%2382 = fmul float %2379, %2381
%2383 = tail call float @llvm.fmuladd.f32(float %2376, float %2380, float %2382)
store float %2383, float* %106
%2384 = fneg float %2375
%2385 = fmul float %2380, %2384
%2386 = tail call float @llvm.fmuladd.f32(float %2377, float %2378, float %2385)
store float %2386, float* %110
%2387 = fneg float %2376
%2388 = fmul float %2378, %2387
%2389 = tail call float @llvm.fmuladd.f32(float %2375, float %2379, float %2388)
store float %2389, float* %114
%2390 = fsub float %24, %55
%2391 = fsub float %27, %57
%2392 = fsub float %30, %59
%2393 = fmul float %2391, %2386
%2394 = tail call float @llvm.fmuladd.f32(float %2390, float %2383, float %2393)
%2395 = tail call float @llvm.fmuladd.f32(float %2392, float %2389, float %2394)
%2396 = fcmp ule float %2395, 0.000000e+00
%2397 = zext i1 %2396 to i32
br label %6747
2398: ; preds = %2352
%2399 = fcmp ogt float %145, 0.000000e+00
br i1 %2399, label %2400, label %2444
2400: ; preds = %2398
%2401 = fsub float %24, %44
%2402 = fsub float %27, %47
%2403 = fsub float %30, %50
%2404 = fneg float %2403
%2405 = fmul float %98, %2404
%2406 = tail call float @llvm.fmuladd.f32(float %2402, float %99, float %2405)
%2407 = fneg float %2401
%2408 = fmul float %99, %2407
%2409 = tail call float @llvm.fmuladd.f32(float %2403, float %97, float %2408)
%2410 = fneg float %2402
%2411 = fmul float %97, %2410
%2412 = tail call float @llvm.fmuladd.f32(float %2401, float %98, float %2411)
%2413 = fsub float %12, %44
%2414 = fsub float %17, %47
%2415 = fsub float %22, %50
%2416 = fmul float %2414, %2409
%2417 = tail call float @llvm.fmuladd.f32(float %2413, float %2406, float %2416)
%2418 = tail call float @llvm.fmuladd.f32(float %2415, float %2412, float %2417)
%2419 = fcmp ogt float %2418, 0.000000e+00
br i1 %2419, label %6747, label %2420
2420: ; preds = %2400
%2421 = fsub float %24, %55
%2422 = fsub float %27, %57
%2423 = fsub float %30, %59
%2424 = fsub float %60, %55
%2425 = fsub float %67, %57
%2426 = fsub float %74, %59
%2427 = fneg float %2423
%2428 = fmul float %2425, %2427
%2429 = tail call float @llvm.fmuladd.f32(float %2422, float %2426, float %2428)
store float %2429, float* %106
%2430 = fneg float %2421
%2431 = fmul float %2426, %2430
%2432 = tail call float @llvm.fmuladd.f32(float %2423, float %2424, float %2431)
store float %2432, float* %110
%2433 = fneg float %2422
%2434 = fmul float %2424, %2433
%2435 = tail call float @llvm.fmuladd.f32(float %2421, float %2425, float %2434)
store float %2435, float* %114
%2436 = fsub float %11, %55
%2437 = fsub float %15, %57
%2438 = fsub float %20, %59
%2439 = fmul float %2437, %2432
%2440 = tail call float @llvm.fmuladd.f32(float %2436, float %2429, float %2439)
%2441 = tail call float @llvm.fmuladd.f32(float %2438, float %2435, float %2440)
%2442 = fcmp ule float %2441, 0.000000e+00
%2443 = zext i1 %2442 to i32
br label %6747
2444: ; preds = %2398
%2445 = fsub float %55, %60
%2446 = fsub float %57, %67
%2447 = fsub float %59, %74
%2448 = extractelement <2 x float> %132, i64 0
%2449 = fneg float %2448
%2450 = fmul float %2446, %2449
%2451 = extractelement <2 x float> %128, i64 0
%2452 = tail call float @llvm.fmuladd.f32(float %2451, float %2447, float %2450)
%2453 = extractelement <2 x float> %124, i64 0
%2454 = fneg float %2453
%2455 = fmul float %2447, %2454
%2456 = tail call float @llvm.fmuladd.f32(float %2448, float %2445, float %2455)
%2457 = fneg float %2451
%2458 = fmul float %2445, %2457
%2459 = tail call float @llvm.fmuladd.f32(float %2453, float %2446, float %2458)
%2460 = fmul float %116, %2456
%2461 = tail call float @llvm.fmuladd.f32(float %115, float %2452, float %2460)
%2462 = tail call float @llvm.fmuladd.f32(float %117, float %2459, float %2461)
%2463 = fcmp ogt float %2462, 0.000000e+00
br i1 %2463, label %6747, label %2464
2464: ; preds = %2444
%2465 = fsub float %11, %55
%2466 = fsub float %15, %57
%2467 = fsub float %20, %59
%2468 = fsub float %44, %55
%2469 = fsub float %47, %57
%2470 = fsub float %50, %59
%2471 = fneg float %2467
%2472 = fmul float %2469, %2471
%2473 = tail call float @llvm.fmuladd.f32(float %2466, float %2470, float %2472)
store float %2473, float* %106
%2474 = fneg float %2465
%2475 = fmul float %2470, %2474
%2476 = tail call float @llvm.fmuladd.f32(float %2467, float %2468, float %2475)
store float %2476, float* %110
%2477 = fneg float %2466
%2478 = fmul float %2468, %2477
%2479 = tail call float @llvm.fmuladd.f32(float %2465, float %2469, float %2478)
store float %2479, float* %114
%2480 = fsub float %12, %55
%2481 = fsub float %17, %57
%2482 = fsub float %22, %59
%2483 = fmul float %2481, %2476
%2484 = tail call float @llvm.fmuladd.f32(float %2480, float %2473, float %2483)
%2485 = tail call float @llvm.fmuladd.f32(float %2482, float %2479, float %2484)
%2486 = fcmp ule float %2485, 0.000000e+00
%2487 = zext i1 %2486 to i32
br label %6747
2488: ; preds = %2351
%2489 = fcmp olt float %142, 0.000000e+00
%2490 = fcmp olt float %120, 0.000000e+00
br i1 %2489, label %2491, label %2629
2491: ; preds = %2488
br i1 %2490, label %2492, label %2539
2492: ; preds = %2491
%2493 = fsub float %55, %60
%2494 = fsub float %57, %67
%2495 = fsub float %59, %74
%2496 = extractelement <2 x float> %132, i64 1
%2497 = fneg float %2496
%2498 = fmul float %2494, %2497
%2499 = extractelement <2 x float> %128, i64 1
%2500 = tail call float @llvm.fmuladd.f32(float %2499, float %2495, float %2498)
%2501 = extractelement <2 x float> %124, i64 1
%2502 = fneg float %2501
%2503 = fmul float %2495, %2502
%2504 = tail call float @llvm.fmuladd.f32(float %2496, float %2493, float %2503)
%2505 = fneg float %2499
%2506 = fmul float %2493, %2505
%2507 = tail call float @llvm.fmuladd.f32(float %2501, float %2494, float %2506)
%2508 = extractelement <2 x float> %128, i64 0
%2509 = fmul float %2508, %2504
%2510 = extractelement <2 x float> %124, i64 0
%2511 = tail call float @llvm.fmuladd.f32(float %2510, float %2500, float %2509)
%2512 = extractelement <2 x float> %132, i64 0
%2513 = tail call float @llvm.fmuladd.f32(float %2512, float %2507, float %2511)
%2514 = fcmp ogt float %2513, 0.000000e+00
br i1 %2514, label %6747, label %2515
2515: ; preds = %2492
%2516 = fsub float %12, %55
%2517 = fsub float %17, %57
%2518 = fsub float %22, %59
%2519 = fsub float %44, %55
%2520 = fsub float %47, %57
%2521 = fsub float %50, %59
%2522 = fneg float %2518
%2523 = fmul float %2520, %2522
%2524 = tail call float @llvm.fmuladd.f32(float %2517, float %2521, float %2523)
store float %2524, float* %106
%2525 = fneg float %2516
%2526 = fmul float %2521, %2525
%2527 = tail call float @llvm.fmuladd.f32(float %2518, float %2519, float %2526)
store float %2527, float* %110
%2528 = fneg float %2517
%2529 = fmul float %2519, %2528
%2530 = tail call float @llvm.fmuladd.f32(float %2516, float %2520, float %2529)
store float %2530, float* %114
%2531 = fsub float %24, %55
%2532 = fsub float %27, %57
%2533 = fsub float %30, %59
%2534 = fmul float %2532, %2527
%2535 = tail call float @llvm.fmuladd.f32(float %2531, float %2524, float %2534)
%2536 = tail call float @llvm.fmuladd.f32(float %2533, float %2530, float %2535)
%2537 = fcmp ule float %2536, 0.000000e+00
%2538 = zext i1 %2537 to i32
br label %6747
2539: ; preds = %2491
%2540 = fcmp olt float %145, 0.000000e+00
br i1 %2540, label %2541, label %2585
2541: ; preds = %2539
%2542 = fsub float %55, %60
%2543 = fsub float %57, %67
%2544 = fsub float %59, %74
%2545 = fneg float %117
%2546 = fmul float %2543, %2545
%2547 = tail call float @llvm.fmuladd.f32(float %116, float %2544, float %2546)
%2548 = fneg float %115
%2549 = fmul float %2544, %2548
%2550 = tail call float @llvm.fmuladd.f32(float %117, float %2542, float %2549)
%2551 = fneg float %116
%2552 = fmul float %2542, %2551
%2553 = tail call float @llvm.fmuladd.f32(float %115, float %2543, float %2552)
%2554 = extractelement <2 x float> %128, i64 1
%2555 = fmul float %2554, %2550
%2556 = extractelement <2 x float> %124, i64 1
%2557 = tail call float @llvm.fmuladd.f32(float %2556, float %2547, float %2555)
%2558 = extractelement <2 x float> %132, i64 1
%2559 = tail call float @llvm.fmuladd.f32(float %2558, float %2553, float %2557)
%2560 = fcmp ogt float %2559, 0.000000e+00
br i1 %2560, label %6747, label %2561
2561: ; preds = %2541
%2562 = fsub float %24, %55
%2563 = fsub float %27, %57
%2564 = fsub float %30, %59
%2565 = fsub float %44, %55
%2566 = fsub float %47, %57
%2567 = fsub float %50, %59
%2568 = fneg float %2564
%2569 = fmul float %2566, %2568
%2570 = tail call float @llvm.fmuladd.f32(float %2563, float %2567, float %2569)
store float %2570, float* %106
%2571 = fneg float %2562
%2572 = fmul float %2567, %2571
%2573 = tail call float @llvm.fmuladd.f32(float %2564, float %2565, float %2572)
store float %2573, float* %110
%2574 = fneg float %2563
%2575 = fmul float %2565, %2574
%2576 = tail call float @llvm.fmuladd.f32(float %2562, float %2566, float %2575)
store float %2576, float* %114
%2577 = fsub float %11, %55
%2578 = fsub float %15, %57
%2579 = fsub float %20, %59
%2580 = fmul float %2578, %2573
%2581 = tail call float @llvm.fmuladd.f32(float %2577, float %2570, float %2580)
%2582 = tail call float @llvm.fmuladd.f32(float %2579, float %2576, float %2581)
%2583 = fcmp ule float %2582, 0.000000e+00
%2584 = zext i1 %2583 to i32
br label %6747
2585: ; preds = %2539
%2586 = fsub float %11, %44
%2587 = fsub float %15, %47
%2588 = fsub float %20, %50
%2589 = fneg float %2588
%2590 = fmul float %98, %2589
%2591 = tail call float @llvm.fmuladd.f32(float %2587, float %99, float %2590)
%2592 = fneg float %2586
%2593 = fmul float %99, %2592
%2594 = tail call float @llvm.fmuladd.f32(float %2588, float %97, float %2593)
%2595 = fneg float %2587
%2596 = fmul float %97, %2595
%2597 = tail call float @llvm.fmuladd.f32(float %2586, float %98, float %2596)
%2598 = fsub float %24, %44
%2599 = fsub float %27, %47
%2600 = fsub float %30, %50
%2601 = fmul float %2599, %2594
%2602 = tail call float @llvm.fmuladd.f32(float %2598, float %2591, float %2601)
%2603 = tail call float @llvm.fmuladd.f32(float %2600, float %2597, float %2602)
%2604 = fcmp ogt float %2603, 0.000000e+00
br i1 %2604, label %6747, label %2605
2605: ; preds = %2585
%2606 = fsub float %11, %55
%2607 = fsub float %15, %57
%2608 = fsub float %20, %59
%2609 = fsub float %60, %55
%2610 = fsub float %67, %57
%2611 = fsub float %74, %59
%2612 = fneg float %2608
%2613 = fmul float %2610, %2612
%2614 = tail call float @llvm.fmuladd.f32(float %2607, float %2611, float %2613)
store float %2614, float* %106
%2615 = fneg float %2606
%2616 = fmul float %2611, %2615
%2617 = tail call float @llvm.fmuladd.f32(float %2608, float %2609, float %2616)
store float %2617, float* %110
%2618 = fneg float %2607
%2619 = fmul float %2609, %2618
%2620 = tail call float @llvm.fmuladd.f32(float %2606, float %2610, float %2619)
store float %2620, float* %114
%2621 = fsub float %12, %55
%2622 = fsub float %17, %57
%2623 = fsub float %22, %59
%2624 = fmul float %2622, %2617
%2625 = tail call float @llvm.fmuladd.f32(float %2621, float %2614, float %2624)
%2626 = tail call float @llvm.fmuladd.f32(float %2623, float %2620, float %2625)
%2627 = fcmp ule float %2626, 0.000000e+00
%2628 = zext i1 %2627 to i32
br label %6747
2629: ; preds = %2488
br i1 %2490, label %2630, label %2720
2630: ; preds = %2629
%2631 = fcmp ult float %145, 0.000000e+00
br i1 %2631, label %2676, label %2632
2632: ; preds = %2630
%2633 = fsub float %24, %44
%2634 = fsub float %27, %47
%2635 = fsub float %30, %50
%2636 = fneg float %2635
%2637 = fmul float %98, %2636
%2638 = tail call float @llvm.fmuladd.f32(float %2634, float %99, float %2637)
%2639 = fneg float %2633
%2640 = fmul float %99, %2639
%2641 = tail call float @llvm.fmuladd.f32(float %2635, float %97, float %2640)
%2642 = fneg float %2634
%2643 = fmul float %97, %2642
%2644 = tail call float @llvm.fmuladd.f32(float %2633, float %98, float %2643)
%2645 = fsub float %12, %44
%2646 = fsub float %17, %47
%2647 = fsub float %22, %50
%2648 = fmul float %2646, %2641
%2649 = tail call float @llvm.fmuladd.f32(float %2645, float %2638, float %2648)
%2650 = tail call float @llvm.fmuladd.f32(float %2647, float %2644, float %2649)
%2651 = fcmp ogt float %2650, 0.000000e+00
br i1 %2651, label %6747, label %2652
2652: ; preds = %2632
%2653 = fsub float %24, %55
%2654 = fsub float %27, %57
%2655 = fsub float %30, %59
%2656 = fsub float %60, %55
%2657 = fsub float %67, %57
%2658 = fsub float %74, %59
%2659 = fneg float %2655
%2660 = fmul float %2657, %2659
%2661 = tail call float @llvm.fmuladd.f32(float %2654, float %2658, float %2660)
store float %2661, float* %106
%2662 = fneg float %2653
%2663 = fmul float %2658, %2662
%2664 = tail call float @llvm.fmuladd.f32(float %2655, float %2656, float %2663)
store float %2664, float* %110
%2665 = fneg float %2654
%2666 = fmul float %2656, %2665
%2667 = tail call float @llvm.fmuladd.f32(float %2653, float %2657, float %2666)
store float %2667, float* %114
%2668 = fsub float %11, %55
%2669 = fsub float %15, %57
%2670 = fsub float %20, %59
%2671 = fmul float %2669, %2664
%2672 = tail call float @llvm.fmuladd.f32(float %2668, float %2661, float %2671)
%2673 = tail call float @llvm.fmuladd.f32(float %2670, float %2667, float %2672)
%2674 = fcmp ule float %2673, 0.000000e+00
%2675 = zext i1 %2674 to i32
br label %6747
2676: ; preds = %2630
%2677 = fsub float %55, %60
%2678 = fsub float %57, %67
%2679 = fsub float %59, %74
%2680 = extractelement <2 x float> %132, i64 0
%2681 = fneg float %2680
%2682 = fmul float %2678, %2681
%2683 = extractelement <2 x float> %128, i64 0
%2684 = tail call float @llvm.fmuladd.f32(float %2683, float %2679, float %2682)
%2685 = extractelement <2 x float> %124, i64 0
%2686 = fneg float %2685
%2687 = fmul float %2679, %2686
%2688 = tail call float @llvm.fmuladd.f32(float %2680, float %2677, float %2687)
%2689 = fneg float %2683
%2690 = fmul float %2677, %2689
%2691 = tail call float @llvm.fmuladd.f32(float %2685, float %2678, float %2690)
%2692 = fmul float %116, %2688
%2693 = tail call float @llvm.fmuladd.f32(float %115, float %2684, float %2692)
%2694 = tail call float @llvm.fmuladd.f32(float %117, float %2691, float %2693)
%2695 = fcmp ogt float %2694, 0.000000e+00
br i1 %2695, label %6747, label %2696
2696: ; preds = %2676
%2697 = fsub float %11, %55
%2698 = fsub float %15, %57
%2699 = fsub float %20, %59
%2700 = fsub float %44, %55
%2701 = fsub float %47, %57
%2702 = fsub float %50, %59
%2703 = fneg float %2699
%2704 = fmul float %2701, %2703
%2705 = tail call float @llvm.fmuladd.f32(float %2698, float %2702, float %2704)
store float %2705, float* %106
%2706 = fneg float %2697
%2707 = fmul float %2702, %2706
%2708 = tail call float @llvm.fmuladd.f32(float %2699, float %2700, float %2707)
store float %2708, float* %110
%2709 = fneg float %2698
%2710 = fmul float %2700, %2709
%2711 = tail call float @llvm.fmuladd.f32(float %2697, float %2701, float %2710)
store float %2711, float* %114
%2712 = fsub float %12, %55
%2713 = fsub float %17, %57
%2714 = fsub float %22, %59
%2715 = fmul float %2713, %2708
%2716 = tail call float @llvm.fmuladd.f32(float %2712, float %2705, float %2715)
%2717 = tail call float @llvm.fmuladd.f32(float %2714, float %2711, float %2716)
%2718 = fcmp ule float %2717, 0.000000e+00
%2719 = zext i1 %2718 to i32
br label %6747
2720: ; preds = %2629
%2721 = fcmp ogt float %120, 0.000000e+00
%2722 = fcmp ogt float %145, 0.000000e+00
br i1 %2721, label %2723, label %2812
2723: ; preds = %2720
br i1 %2722, label %2724, label %2768
2724: ; preds = %2723
%2725 = fsub float %11, %44
%2726 = fsub float %15, %47
%2727 = fsub float %20, %50
%2728 = fneg float %2727
%2729 = fmul float %98, %2728
%2730 = tail call float @llvm.fmuladd.f32(float %2726, float %99, float %2729)
%2731 = fneg float %2725
%2732 = fmul float %99, %2731
%2733 = tail call float @llvm.fmuladd.f32(float %2727, float %97, float %2732)
%2734 = fneg float %2726
%2735 = fmul float %97, %2734
%2736 = tail call float @llvm.fmuladd.f32(float %2725, float %98, float %2735)
%2737 = fsub float %24, %44
%2738 = fsub float %27, %47
%2739 = fsub float %30, %50
%2740 = fmul float %2738, %2733
%2741 = tail call float @llvm.fmuladd.f32(float %2737, float %2730, float %2740)
%2742 = tail call float @llvm.fmuladd.f32(float %2739, float %2736, float %2741)
%2743 = fcmp ogt float %2742, 0.000000e+00
br i1 %2743, label %6747, label %2744
2744: ; preds = %2724
%2745 = fsub float %11, %55
%2746 = fsub float %15, %57
%2747 = fsub float %20, %59
%2748 = fsub float %60, %55
%2749 = fsub float %67, %57
%2750 = fsub float %74, %59
%2751 = fneg float %2747
%2752 = fmul float %2749, %2751
%2753 = tail call float @llvm.fmuladd.f32(float %2746, float %2750, float %2752)
store float %2753, float* %106
%2754 = fneg float %2745
%2755 = fmul float %2750, %2754
%2756 = tail call float @llvm.fmuladd.f32(float %2747, float %2748, float %2755)
store float %2756, float* %110
%2757 = fneg float %2746
%2758 = fmul float %2748, %2757
%2759 = tail call float @llvm.fmuladd.f32(float %2745, float %2749, float %2758)
store float %2759, float* %114
%2760 = fsub float %12, %55
%2761 = fsub float %17, %57
%2762 = fsub float %22, %59
%2763 = fmul float %2761, %2756
%2764 = tail call float @llvm.fmuladd.f32(float %2760, float %2753, float %2763)
%2765 = tail call float @llvm.fmuladd.f32(float %2762, float %2759, float %2764)
%2766 = fcmp ule float %2765, 0.000000e+00
%2767 = zext i1 %2766 to i32
br label %6747
2768: ; preds = %2723
%2769 = fsub float %55, %60
%2770 = fsub float %57, %67
%2771 = fsub float %59, %74
%2772 = fneg float %117
%2773 = fmul float %2770, %2772
%2774 = tail call float @llvm.fmuladd.f32(float %116, float %2771, float %2773)
%2775 = fneg float %115
%2776 = fmul float %2771, %2775
%2777 = tail call float @llvm.fmuladd.f32(float %117, float %2769, float %2776)
%2778 = fneg float %116
%2779 = fmul float %2769, %2778
%2780 = tail call float @llvm.fmuladd.f32(float %115, float %2770, float %2779)
%2781 = extractelement <2 x float> %128, i64 1
%2782 = fmul float %2781, %2777
%2783 = extractelement <2 x float> %124, i64 1
%2784 = tail call float @llvm.fmuladd.f32(float %2783, float %2774, float %2782)
%2785 = extractelement <2 x float> %132, i64 1
%2786 = tail call float @llvm.fmuladd.f32(float %2785, float %2780, float %2784)
%2787 = fcmp ogt float %2786, 0.000000e+00
br i1 %2787, label %6747, label %2788
2788: ; preds = %2768
%2789 = fsub float %24, %55
%2790 = fsub float %27, %57
%2791 = fsub float %30, %59
%2792 = fsub float %44, %55
%2793 = fsub float %47, %57
%2794 = fsub float %50, %59
%2795 = fneg float %2791
%2796 = fmul float %2793, %2795
%2797 = tail call float @llvm.fmuladd.f32(float %2790, float %2794, float %2796)
store float %2797, float* %106
%2798 = fneg float %2789
%2799 = fmul float %2794, %2798
%2800 = tail call float @llvm.fmuladd.f32(float %2791, float %2792, float %2799)
store float %2800, float* %110
%2801 = fneg float %2790
%2802 = fmul float %2792, %2801
%2803 = tail call float @llvm.fmuladd.f32(float %2789, float %2793, float %2802)
store float %2803, float* %114
%2804 = fsub float %11, %55
%2805 = fsub float %15, %57
%2806 = fsub float %20, %59
%2807 = fmul float %2805, %2800
%2808 = tail call float @llvm.fmuladd.f32(float %2804, float %2797, float %2807)
%2809 = tail call float @llvm.fmuladd.f32(float %2806, float %2803, float %2808)
%2810 = fcmp ule float %2809, 0.000000e+00
%2811 = zext i1 %2810 to i32
br label %6747
2812: ; preds = %2720
br i1 %2722, label %2813, label %2860
2813: ; preds = %2812
%2814 = fsub float %55, %60
%2815 = fsub float %57, %67
%2816 = fsub float %59, %74
%2817 = extractelement <2 x float> %132, i64 1
%2818 = fneg float %2817
%2819 = fmul float %2815, %2818
%2820 = extractelement <2 x float> %128, i64 1
%2821 = tail call float @llvm.fmuladd.f32(float %2820, float %2816, float %2819)
%2822 = extractelement <2 x float> %124, i64 1
%2823 = fneg float %2822
%2824 = fmul float %2816, %2823
%2825 = tail call float @llvm.fmuladd.f32(float %2817, float %2814, float %2824)
%2826 = fneg float %2820
%2827 = fmul float %2814, %2826
%2828 = tail call float @llvm.fmuladd.f32(float %2822, float %2815, float %2827)
%2829 = extractelement <2 x float> %128, i64 0
%2830 = fmul float %2829, %2825
%2831 = extractelement <2 x float> %124, i64 0
%2832 = tail call float @llvm.fmuladd.f32(float %2831, float %2821, float %2830)
%2833 = extractelement <2 x float> %132, i64 0
%2834 = tail call float @llvm.fmuladd.f32(float %2833, float %2828, float %2832)
%2835 = fcmp ogt float %2834, 0.000000e+00
br i1 %2835, label %6747, label %2836
2836: ; preds = %2813
%2837 = fsub float %12, %55
%2838 = fsub float %17, %57
%2839 = fsub float %22, %59
%2840 = fsub float %44, %55
%2841 = fsub float %47, %57
%2842 = fsub float %50, %59
%2843 = fneg float %2839
%2844 = fmul float %2841, %2843
%2845 = tail call float @llvm.fmuladd.f32(float %2838, float %2842, float %2844)
store float %2845, float* %106
%2846 = fneg float %2837
%2847 = fmul float %2842, %2846
%2848 = tail call float @llvm.fmuladd.f32(float %2839, float %2840, float %2847)
store float %2848, float* %110
%2849 = fneg float %2838
%2850 = fmul float %2840, %2849
%2851 = tail call float @llvm.fmuladd.f32(float %2837, float %2841, float %2850)
store float %2851, float* %114
%2852 = fsub float %24, %55
%2853 = fsub float %27, %57
%2854 = fsub float %30, %59
%2855 = fmul float %2853, %2848
%2856 = tail call float @llvm.fmuladd.f32(float %2852, float %2845, float %2855)
%2857 = tail call float @llvm.fmuladd.f32(float %2854, float %2851, float %2856)
%2858 = fcmp ule float %2857, 0.000000e+00
%2859 = zext i1 %2858 to i32
br label %6747
2860: ; preds = %2812
%2861 = fcmp olt float %145, 0.000000e+00
br i1 %2861, label %2862, label %2906
2862: ; preds = %2860
%2863 = fsub float %12, %44
%2864 = fsub float %17, %47
%2865 = fsub float %22, %50
%2866 = fneg float %2865
%2867 = fmul float %98, %2866
%2868 = tail call float @llvm.fmuladd.f32(float %2864, float %99, float %2867)
%2869 = fneg float %2863
%2870 = fmul float %99, %2869
%2871 = tail call float @llvm.fmuladd.f32(float %2865, float %97, float %2870)
%2872 = fneg float %2864
%2873 = fmul float %97, %2872
%2874 = tail call float @llvm.fmuladd.f32(float %2863, float %98, float %2873)
%2875 = fsub float %11, %44
%2876 = fsub float %15, %47
%2877 = fsub float %20, %50
%2878 = fmul float %2876, %2871
%2879 = tail call float @llvm.fmuladd.f32(float %2875, float %2868, float %2878)
%2880 = tail call float @llvm.fmuladd.f32(float %2877, float %2874, float %2879)
%2881 = fcmp ogt float %2880, 0.000000e+00
br i1 %2881, label %6747, label %2882
2882: ; preds = %2862
%2883 = fsub float %12, %55
%2884 = fsub float %17, %57
%2885 = fsub float %22, %59
%2886 = fsub float %60, %55
%2887 = fsub float %67, %57
%2888 = fsub float %74, %59
%2889 = fneg float %2885
%2890 = fmul float %2887, %2889
%2891 = tail call float @llvm.fmuladd.f32(float %2884, float %2888, float %2890)
store float %2891, float* %106
%2892 = fneg float %2883
%2893 = fmul float %2888, %2892
%2894 = tail call float @llvm.fmuladd.f32(float %2885, float %2886, float %2893)
store float %2894, float* %110
%2895 = fneg float %2884
%2896 = fmul float %2886, %2895
%2897 = tail call float @llvm.fmuladd.f32(float %2883, float %2887, float %2896)
store float %2897, float* %114
%2898 = fsub float %24, %55
%2899 = fsub float %27, %57
%2900 = fsub float %30, %59
%2901 = fmul float %2899, %2894
%2902 = tail call float @llvm.fmuladd.f32(float %2898, float %2891, float %2901)
%2903 = tail call float @llvm.fmuladd.f32(float %2900, float %2897, float %2902)
%2904 = fcmp ule float %2903, 0.000000e+00
%2905 = zext i1 %2904 to i32
br label %6747
2906: ; preds = %2860
%2907 = call i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...) bitcast (i32 (...)* @coplanar_tri_tri3d to i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...)*)(float* %1, float* %2, float* %0, float* %3, float* %4, float* %5, float* %106, float* %35)
br label %6747
2908: ; preds = %2348
br i1 %2350, label %2909, label %3039
2909: ; preds = %2908
%2910 = fcmp ogt float %145, 0.000000e+00
br i1 %2910, label %2911, label %2952
2911: ; preds = %2909
%2912 = fsub float %44, %60
%2913 = fsub float %47, %67
%2914 = fsub float %50, %74
%2915 = fneg float %117
%2916 = fmul float %2913, %2915
%2917 = tail call float @llvm.fmuladd.f32(float %116, float %2914, float %2916)
%2918 = fneg float %115
%2919 = fmul float %2914, %2918
%2920 = tail call float @llvm.fmuladd.f32(float %117, float %2912, float %2919)
%2921 = fneg float %116
%2922 = fmul float %2912, %2921
%2923 = tail call float @llvm.fmuladd.f32(float %115, float %2913, float %2922)
%2924 = extractelement <2 x float> %128, i64 0
%2925 = fmul float %2924, %2920
%2926 = extractelement <2 x float> %124, i64 0
%2927 = tail call float @llvm.fmuladd.f32(float %2926, float %2917, float %2925)
%2928 = extractelement <2 x float> %132, i64 0
%2929 = tail call float @llvm.fmuladd.f32(float %2928, float %2923, float %2927)
%2930 = fcmp ogt float %2929, 0.000000e+00
br i1 %2930, label %6747, label %2931
2931: ; preds = %2911
%2932 = fsub float %24, %44
%2933 = fsub float %27, %47
%2934 = fsub float %30, %50
%2935 = fneg float %2934
%2936 = fmul float %98, %2935
%2937 = tail call float @llvm.fmuladd.f32(float %2933, float %99, float %2936)
store float %2937, float* %106
%2938 = fneg float %2932
%2939 = fmul float %99, %2938
%2940 = tail call float @llvm.fmuladd.f32(float %2934, float %97, float %2939)
store float %2940, float* %110
%2941 = fneg float %2933
%2942 = fmul float %97, %2941
%2943 = tail call float @llvm.fmuladd.f32(float %2932, float %98, float %2942)
store float %2943, float* %114
%2944 = fsub float %12, %44
%2945 = fsub float %17, %47
%2946 = fsub float %22, %50
%2947 = fmul float %2945, %2940
%2948 = tail call float @llvm.fmuladd.f32(float %2944, float %2937, float %2947)
%2949 = tail call float @llvm.fmuladd.f32(float %2946, float %2943, float %2948)
%2950 = fcmp ule float %2949, 0.000000e+00
%2951 = zext i1 %2950 to i32
br label %6747
2952: ; preds = %2909
%2953 = fcmp ogt float %120, 0.000000e+00
br i1 %2953, label %2954, label %2995
2954: ; preds = %2952
%2955 = fsub float %44, %60
%2956 = fsub float %47, %67
%2957 = fsub float %50, %74
%2958 = extractelement <2 x float> %132, i64 1
%2959 = fneg float %2958
%2960 = fmul float %2956, %2959
%2961 = extractelement <2 x float> %128, i64 1
%2962 = tail call float @llvm.fmuladd.f32(float %2961, float %2957, float %2960)
%2963 = extractelement <2 x float> %124, i64 1
%2964 = fneg float %2963
%2965 = fmul float %2957, %2964
%2966 = tail call float @llvm.fmuladd.f32(float %2958, float %2955, float %2965)
%2967 = fneg float %2961
%2968 = fmul float %2955, %2967
%2969 = tail call float @llvm.fmuladd.f32(float %2963, float %2956, float %2968)
%2970 = fmul float %116, %2966
%2971 = tail call float @llvm.fmuladd.f32(float %115, float %2962, float %2970)
%2972 = tail call float @llvm.fmuladd.f32(float %117, float %2969, float %2971)
%2973 = fcmp ogt float %2972, 0.000000e+00
br i1 %2973, label %6747, label %2974
2974: ; preds = %2954
%2975 = fsub float %12, %44
%2976 = fsub float %17, %47
%2977 = fsub float %22, %50
%2978 = fneg float %2977
%2979 = fmul float %98, %2978
%2980 = tail call float @llvm.fmuladd.f32(float %2976, float %99, float %2979)
store float %2980, float* %106
%2981 = fneg float %2975
%2982 = fmul float %99, %2981
%2983 = tail call float @llvm.fmuladd.f32(float %2977, float %97, float %2982)
store float %2983, float* %110
%2984 = fneg float %2976
%2985 = fmul float %97, %2984
%2986 = tail call float @llvm.fmuladd.f32(float %2975, float %98, float %2985)
store float %2986, float* %114
%2987 = fsub float %11, %44
%2988 = fsub float %15, %47
%2989 = fsub float %20, %50
%2990 = fmul float %2988, %2983
%2991 = tail call float @llvm.fmuladd.f32(float %2987, float %2980, float %2990)
%2992 = tail call float @llvm.fmuladd.f32(float %2989, float %2986, float %2991)
%2993 = fcmp ule float %2992, 0.000000e+00
%2994 = zext i1 %2993 to i32
br label %6747
2995: ; preds = %2952
%2996 = fsub float %11, %55
%2997 = fsub float %15, %57
%2998 = fsub float %20, %59
%2999 = fsub float %44, %55
%3000 = fsub float %47, %57
%3001 = fsub float %50, %59
%3002 = fneg float %2998
%3003 = fmul float %3000, %3002
%3004 = tail call float @llvm.fmuladd.f32(float %2997, float %3001, float %3003)
%3005 = fneg float %2996
%3006 = fmul float %3001, %3005
%3007 = tail call float @llvm.fmuladd.f32(float %2998, float %2999, float %3006)
%3008 = fneg float %2997
%3009 = fmul float %2999, %3008
%3010 = tail call float @llvm.fmuladd.f32(float %2996, float %3000, float %3009)
%3011 = fsub float %12, %55
%3012 = fsub float %17, %57
%3013 = fsub float %22, %59
%3014 = fmul float %3012, %3007
%3015 = tail call float @llvm.fmuladd.f32(float %3011, float %3004, float %3014)
%3016 = tail call float @llvm.fmuladd.f32(float %3013, float %3010, float %3015)
%3017 = fcmp ogt float %3016, 0.000000e+00
br i1 %3017, label %6747, label %3018
3018: ; preds = %2995
%3019 = fsub float %11, %44
%3020 = fsub float %15, %47
%3021 = fsub float %20, %50
%3022 = fneg float %3021
%3023 = fmul float %101, %3022
%3024 = tail call float @llvm.fmuladd.f32(float %3020, float %102, float %3023)
store float %3024, float* %106
%3025 = fneg float %3019
%3026 = fmul float %102, %3025
%3027 = tail call float @llvm.fmuladd.f32(float %3021, float %100, float %3026)
store float %3027, float* %110
%3028 = fneg float %3020
%3029 = fmul float %100, %3028
%3030 = tail call float @llvm.fmuladd.f32(float %3019, float %101, float %3029)
store float %3030, float* %114
%3031 = fsub float %24, %44
%3032 = fsub float %27, %47
%3033 = fsub float %30, %50
%3034 = fmul float %3032, %3027
%3035 = tail call float @llvm.fmuladd.f32(float %3031, float %3024, float %3034)
%3036 = tail call float @llvm.fmuladd.f32(float %3033, float %3030, float %3035)
%3037 = fcmp ule float %3036, 0.000000e+00
%3038 = zext i1 %3037 to i32
br label %6747
3039: ; preds = %2908
%3040 = fcmp olt float %142, 0.000000e+00
%3041 = fcmp olt float %145, 0.000000e+00
br i1 %3040, label %3042, label %3177
3042: ; preds = %3039
br i1 %3041, label %3043, label %3087
3043: ; preds = %3042
%3044 = fsub float %24, %55
%3045 = fsub float %27, %57
%3046 = fsub float %30, %59
%3047 = fsub float %44, %55
%3048 = fsub float %47, %57
%3049 = fsub float %50, %59
%3050 = fneg float %3046
%3051 = fmul float %3048, %3050
%3052 = tail call float @llvm.fmuladd.f32(float %3045, float %3049, float %3051)
%3053 = fneg float %3044
%3054 = fmul float %3049, %3053
%3055 = tail call float @llvm.fmuladd.f32(float %3046, float %3047, float %3054)
%3056 = fneg float %3045
%3057 = fmul float %3047, %3056
%3058 = tail call float @llvm.fmuladd.f32(float %3044, float %3048, float %3057)
%3059 = fsub float %11, %55
%3060 = fsub float %15, %57
%3061 = fsub float %20, %59
%3062 = fmul float %3060, %3055
%3063 = tail call float @llvm.fmuladd.f32(float %3059, float %3052, float %3062)
%3064 = tail call float @llvm.fmuladd.f32(float %3061, float %3058, float %3063)
%3065 = fcmp ogt float %3064, 0.000000e+00
br i1 %3065, label %6747, label %3066
3066: ; preds = %3043
%3067 = fsub float %24, %44
%3068 = fsub float %27, %47
%3069 = fsub float %30, %50
%3070 = fneg float %3069
%3071 = fmul float %101, %3070
%3072 = tail call float @llvm.fmuladd.f32(float %3068, float %102, float %3071)
store float %3072, float* %106
%3073 = fneg float %3067
%3074 = fmul float %102, %3073
%3075 = tail call float @llvm.fmuladd.f32(float %3069, float %100, float %3074)
store float %3075, float* %110
%3076 = fneg float %3068
%3077 = fmul float %100, %3076
%3078 = tail call float @llvm.fmuladd.f32(float %3067, float %101, float %3077)
store float %3078, float* %114
%3079 = fsub float %12, %44
%3080 = fsub float %17, %47
%3081 = fsub float %22, %50
%3082 = fmul float %3080, %3075
%3083 = tail call float @llvm.fmuladd.f32(float %3079, float %3072, float %3082)
%3084 = tail call float @llvm.fmuladd.f32(float %3081, float %3078, float %3083)
%3085 = fcmp ule float %3084, 0.000000e+00
%3086 = zext i1 %3085 to i32
br label %6747
3087: ; preds = %3042
%3088 = fcmp olt float %120, 0.000000e+00
br i1 %3088, label %3089, label %3133
3089: ; preds = %3087
%3090 = fsub float %12, %55
%3091 = fsub float %17, %57
%3092 = fsub float %22, %59
%3093 = fsub float %44, %55
%3094 = fsub float %47, %57
%3095 = fsub float %50, %59
%3096 = fneg float %3092
%3097 = fmul float %3094, %3096
%3098 = tail call float @llvm.fmuladd.f32(float %3091, float %3095, float %3097)
%3099 = fneg float %3090
%3100 = fmul float %3095, %3099
%3101 = tail call float @llvm.fmuladd.f32(float %3092, float %3093, float %3100)
%3102 = fneg float %3091
%3103 = fmul float %3093, %3102
%3104 = tail call float @llvm.fmuladd.f32(float %3090, float %3094, float %3103)
%3105 = fsub float %24, %55
%3106 = fsub float %27, %57
%3107 = fsub float %30, %59
%3108 = fmul float %3106, %3101
%3109 = tail call float @llvm.fmuladd.f32(float %3105, float %3098, float %3108)
%3110 = tail call float @llvm.fmuladd.f32(float %3107, float %3104, float %3109)
%3111 = fcmp ogt float %3110, 0.000000e+00
br i1 %3111, label %6747, label %3112
3112: ; preds = %3089
%3113 = fsub float %12, %44
%3114 = fsub float %17, %47
%3115 = fsub float %22, %50
%3116 = fneg float %3115
%3117 = fmul float %101, %3116
%3118 = tail call float @llvm.fmuladd.f32(float %3114, float %102, float %3117)
store float %3118, float* %106
%3119 = fneg float %3113
%3120 = fmul float %102, %3119
%3121 = tail call float @llvm.fmuladd.f32(float %3115, float %100, float %3120)
store float %3121, float* %110
%3122 = fneg float %3114
%3123 = fmul float %100, %3122
%3124 = tail call float @llvm.fmuladd.f32(float %3113, float %101, float %3123)
store float %3124, float* %114
%3125 = fsub float %11, %44
%3126 = fsub float %15, %47
%3127 = fsub float %20, %50
%3128 = fmul float %3126, %3121
%3129 = tail call float @llvm.fmuladd.f32(float %3125, float %3118, float %3128)
%3130 = tail call float @llvm.fmuladd.f32(float %3127, float %3124, float %3129)
%3131 = fcmp ule float %3130, 0.000000e+00
%3132 = zext i1 %3131 to i32
br label %6747
3133: ; preds = %3087
%3134 = fsub float %44, %60
%3135 = fsub float %47, %67
%3136 = fsub float %50, %74
%3137 = extractelement <2 x float> %132, i64 0
%3138 = fneg float %3137
%3139 = fmul float %3135, %3138
%3140 = extractelement <2 x float> %128, i64 0
%3141 = tail call float @llvm.fmuladd.f32(float %3140, float %3136, float %3139)
%3142 = extractelement <2 x float> %124, i64 0
%3143 = fneg float %3142
%3144 = fmul float %3136, %3143
%3145 = tail call float @llvm.fmuladd.f32(float %3137, float %3134, float %3144)
%3146 = fneg float %3140
%3147 = fmul float %3134, %3146
%3148 = tail call float @llvm.fmuladd.f32(float %3142, float %3135, float %3147)
%3149 = extractelement <2 x float> %128, i64 1
%3150 = fmul float %3149, %3145
%3151 = extractelement <2 x float> %124, i64 1
%3152 = tail call float @llvm.fmuladd.f32(float %3151, float %3141, float %3150)
%3153 = extractelement <2 x float> %132, i64 1
%3154 = tail call float @llvm.fmuladd.f32(float %3153, float %3148, float %3152)
%3155 = fcmp ogt float %3154, 0.000000e+00
br i1 %3155, label %6747, label %3156
3156: ; preds = %3133
%3157 = fsub float %11, %44
%3158 = fsub float %15, %47
%3159 = fsub float %20, %50
%3160 = fneg float %3159
%3161 = fmul float %98, %3160
%3162 = tail call float @llvm.fmuladd.f32(float %3158, float %99, float %3161)
store float %3162, float* %106
%3163 = fneg float %3157
%3164 = fmul float %99, %3163
%3165 = tail call float @llvm.fmuladd.f32(float %3159, float %97, float %3164)
store float %3165, float* %110
%3166 = fneg float %3158
%3167 = fmul float %97, %3166
%3168 = tail call float @llvm.fmuladd.f32(float %3157, float %98, float %3167)
store float %3168, float* %114
%3169 = fsub float %24, %44
%3170 = fsub float %27, %47
%3171 = fsub float %30, %50
%3172 = fmul float %3170, %3165
%3173 = tail call float @llvm.fmuladd.f32(float %3169, float %3162, float %3172)
%3174 = tail call float @llvm.fmuladd.f32(float %3171, float %3168, float %3173)
%3175 = fcmp ule float %3174, 0.000000e+00
%3176 = zext i1 %3175 to i32
br label %6747
3177: ; preds = %3039
br i1 %3041, label %3178, label %3265
3178: ; preds = %3177
%3179 = fcmp ult float %120, 0.000000e+00
br i1 %3179, label %3221, label %3180
3180: ; preds = %3178
%3181 = fsub float %44, %60
%3182 = fsub float %47, %67
%3183 = fsub float %50, %74
%3184 = extractelement <2 x float> %132, i64 1
%3185 = fneg float %3184
%3186 = fmul float %3182, %3185
%3187 = extractelement <2 x float> %128, i64 1
%3188 = tail call float @llvm.fmuladd.f32(float %3187, float %3183, float %3186)
%3189 = extractelement <2 x float> %124, i64 1
%3190 = fneg float %3189
%3191 = fmul float %3183, %3190
%3192 = tail call float @llvm.fmuladd.f32(float %3184, float %3181, float %3191)
%3193 = fneg float %3187
%3194 = fmul float %3181, %3193
%3195 = tail call float @llvm.fmuladd.f32(float %3189, float %3182, float %3194)
%3196 = fmul float %116, %3192
%3197 = tail call float @llvm.fmuladd.f32(float %115, float %3188, float %3196)
%3198 = tail call float @llvm.fmuladd.f32(float %117, float %3195, float %3197)
%3199 = fcmp ogt float %3198, 0.000000e+00
br i1 %3199, label %6747, label %3200
3200: ; preds = %3180
%3201 = fsub float %12, %44
%3202 = fsub float %17, %47
%3203 = fsub float %22, %50
%3204 = fneg float %3203
%3205 = fmul float %98, %3204
%3206 = tail call float @llvm.fmuladd.f32(float %3202, float %99, float %3205)
store float %3206, float* %106
%3207 = fneg float %3201
%3208 = fmul float %99, %3207
%3209 = tail call float @llvm.fmuladd.f32(float %3203, float %97, float %3208)
store float %3209, float* %110
%3210 = fneg float %3202
%3211 = fmul float %97, %3210
%3212 = tail call float @llvm.fmuladd.f32(float %3201, float %98, float %3211)
store float %3212, float* %114
%3213 = fsub float %11, %44
%3214 = fsub float %15, %47
%3215 = fsub float %20, %50
%3216 = fmul float %3214, %3209
%3217 = tail call float @llvm.fmuladd.f32(float %3213, float %3206, float %3216)
%3218 = tail call float @llvm.fmuladd.f32(float %3215, float %3212, float %3217)
%3219 = fcmp ule float %3218, 0.000000e+00
%3220 = zext i1 %3219 to i32
br label %6747
3221: ; preds = %3178
%3222 = fsub float %11, %55
%3223 = fsub float %15, %57
%3224 = fsub float %20, %59
%3225 = fsub float %44, %55
%3226 = fsub float %47, %57
%3227 = fsub float %50, %59
%3228 = fneg float %3224
%3229 = fmul float %3226, %3228
%3230 = tail call float @llvm.fmuladd.f32(float %3223, float %3227, float %3229)
%3231 = fneg float %3222
%3232 = fmul float %3227, %3231
%3233 = tail call float @llvm.fmuladd.f32(float %3224, float %3225, float %3232)
%3234 = fneg float %3223
%3235 = fmul float %3225, %3234
%3236 = tail call float @llvm.fmuladd.f32(float %3222, float %3226, float %3235)
%3237 = fsub float %12, %55
%3238 = fsub float %17, %57
%3239 = fsub float %22, %59
%3240 = fmul float %3238, %3233
%3241 = tail call float @llvm.fmuladd.f32(float %3237, float %3230, float %3240)
%3242 = tail call float @llvm.fmuladd.f32(float %3239, float %3236, float %3241)
%3243 = fcmp ogt float %3242, 0.000000e+00
br i1 %3243, label %6747, label %3244
3244: ; preds = %3221
%3245 = fsub float %11, %44
%3246 = fsub float %15, %47
%3247 = fsub float %20, %50
%3248 = fneg float %3247
%3249 = fmul float %101, %3248
%3250 = tail call float @llvm.fmuladd.f32(float %3246, float %102, float %3249)
store float %3250, float* %106
%3251 = fneg float %3245
%3252 = fmul float %102, %3251
%3253 = tail call float @llvm.fmuladd.f32(float %3247, float %100, float %3252)
store float %3253, float* %110
%3254 = fneg float %3246
%3255 = fmul float %100, %3254
%3256 = tail call float @llvm.fmuladd.f32(float %3245, float %101, float %3255)
store float %3256, float* %114
%3257 = fsub float %24, %44
%3258 = fsub float %27, %47
%3259 = fsub float %30, %50
%3260 = fmul float %3258, %3253
%3261 = tail call float @llvm.fmuladd.f32(float %3257, float %3250, float %3260)
%3262 = tail call float @llvm.fmuladd.f32(float %3259, float %3256, float %3261)
%3263 = fcmp ule float %3262, 0.000000e+00
%3264 = zext i1 %3263 to i32
br label %6747
3265: ; preds = %3177
%3266 = fcmp ogt float %145, 0.000000e+00
%3267 = fcmp ogt float %120, 0.000000e+00
br i1 %3266, label %3268, label %3357
3268: ; preds = %3265
br i1 %3267, label %3269, label %3313
3269: ; preds = %3268
%3270 = fsub float %44, %60
%3271 = fsub float %47, %67
%3272 = fsub float %50, %74
%3273 = extractelement <2 x float> %132, i64 0
%3274 = fneg float %3273
%3275 = fmul float %3271, %3274
%3276 = extractelement <2 x float> %128, i64 0
%3277 = tail call float @llvm.fmuladd.f32(float %3276, float %3272, float %3275)
%3278 = extractelement <2 x float> %124, i64 0
%3279 = fneg float %3278
%3280 = fmul float %3272, %3279
%3281 = tail call float @llvm.fmuladd.f32(float %3273, float %3270, float %3280)
%3282 = fneg float %3276
%3283 = fmul float %3270, %3282
%3284 = tail call float @llvm.fmuladd.f32(float %3278, float %3271, float %3283)
%3285 = extractelement <2 x float> %128, i64 1
%3286 = fmul float %3285, %3281
%3287 = extractelement <2 x float> %124, i64 1
%3288 = tail call float @llvm.fmuladd.f32(float %3287, float %3277, float %3286)
%3289 = extractelement <2 x float> %132, i64 1
%3290 = tail call float @llvm.fmuladd.f32(float %3289, float %3284, float %3288)
%3291 = fcmp ogt float %3290, 0.000000e+00
br i1 %3291, label %6747, label %3292
3292: ; preds = %3269
%3293 = fsub float %11, %44
%3294 = fsub float %15, %47
%3295 = fsub float %20, %50
%3296 = fneg float %3295
%3297 = fmul float %98, %3296
%3298 = tail call float @llvm.fmuladd.f32(float %3294, float %99, float %3297)
store float %3298, float* %106
%3299 = fneg float %3293
%3300 = fmul float %99, %3299
%3301 = tail call float @llvm.fmuladd.f32(float %3295, float %97, float %3300)
store float %3301, float* %110
%3302 = fneg float %3294
%3303 = fmul float %97, %3302
%3304 = tail call float @llvm.fmuladd.f32(float %3293, float %98, float %3303)
store float %3304, float* %114
%3305 = fsub float %24, %44
%3306 = fsub float %27, %47
%3307 = fsub float %30, %50
%3308 = fmul float %3306, %3301
%3309 = tail call float @llvm.fmuladd.f32(float %3305, float %3298, float %3308)
%3310 = tail call float @llvm.fmuladd.f32(float %3307, float %3304, float %3309)
%3311 = fcmp ule float %3310, 0.000000e+00
%3312 = zext i1 %3311 to i32
br label %6747
3313: ; preds = %3268
%3314 = fsub float %12, %55
%3315 = fsub float %17, %57
%3316 = fsub float %22, %59
%3317 = fsub float %44, %55
%3318 = fsub float %47, %57
%3319 = fsub float %50, %59
%3320 = fneg float %3316
%3321 = fmul float %3318, %3320
%3322 = tail call float @llvm.fmuladd.f32(float %3315, float %3319, float %3321)
%3323 = fneg float %3314
%3324 = fmul float %3319, %3323
%3325 = tail call float @llvm.fmuladd.f32(float %3316, float %3317, float %3324)
%3326 = fneg float %3315
%3327 = fmul float %3317, %3326
%3328 = tail call float @llvm.fmuladd.f32(float %3314, float %3318, float %3327)
%3329 = fsub float %24, %55
%3330 = fsub float %27, %57
%3331 = fsub float %30, %59
%3332 = fmul float %3330, %3325
%3333 = tail call float @llvm.fmuladd.f32(float %3329, float %3322, float %3332)
%3334 = tail call float @llvm.fmuladd.f32(float %3331, float %3328, float %3333)
%3335 = fcmp ogt float %3334, 0.000000e+00
br i1 %3335, label %6747, label %3336
3336: ; preds = %3313
%3337 = fsub float %12, %44
%3338 = fsub float %17, %47
%3339 = fsub float %22, %50
%3340 = fneg float %3339
%3341 = fmul float %101, %3340
%3342 = tail call float @llvm.fmuladd.f32(float %3338, float %102, float %3341)
store float %3342, float* %106
%3343 = fneg float %3337
%3344 = fmul float %102, %3343
%3345 = tail call float @llvm.fmuladd.f32(float %3339, float %100, float %3344)
store float %3345, float* %110
%3346 = fneg float %3338
%3347 = fmul float %100, %3346
%3348 = tail call float @llvm.fmuladd.f32(float %3337, float %101, float %3347)
store float %3348, float* %114
%3349 = fsub float %11, %44
%3350 = fsub float %15, %47
%3351 = fsub float %20, %50
%3352 = fmul float %3350, %3345
%3353 = tail call float @llvm.fmuladd.f32(float %3349, float %3342, float %3352)
%3354 = tail call float @llvm.fmuladd.f32(float %3351, float %3348, float %3353)
%3355 = fcmp ule float %3354, 0.000000e+00
%3356 = zext i1 %3355 to i32
br label %6747
3357: ; preds = %3265
br i1 %3267, label %3358, label %3402
3358: ; preds = %3357
%3359 = fsub float %24, %55
%3360 = fsub float %27, %57
%3361 = fsub float %30, %59
%3362 = fsub float %44, %55
%3363 = fsub float %47, %57
%3364 = fsub float %50, %59
%3365 = fneg float %3361
%3366 = fmul float %3363, %3365
%3367 = tail call float @llvm.fmuladd.f32(float %3360, float %3364, float %3366)
%3368 = fneg float %3359
%3369 = fmul float %3364, %3368
%3370 = tail call float @llvm.fmuladd.f32(float %3361, float %3362, float %3369)
%3371 = fneg float %3360
%3372 = fmul float %3362, %3371
%3373 = tail call float @llvm.fmuladd.f32(float %3359, float %3363, float %3372)
%3374 = fsub float %11, %55
%3375 = fsub float %15, %57
%3376 = fsub float %20, %59
%3377 = fmul float %3375, %3370
%3378 = tail call float @llvm.fmuladd.f32(float %3374, float %3367, float %3377)
%3379 = tail call float @llvm.fmuladd.f32(float %3376, float %3373, float %3378)
%3380 = fcmp ogt float %3379, 0.000000e+00
br i1 %3380, label %6747, label %3381
3381: ; preds = %3358
%3382 = fsub float %24, %44
%3383 = fsub float %27, %47
%3384 = fsub float %30, %50
%3385 = fneg float %3384
%3386 = fmul float %101, %3385
%3387 = tail call float @llvm.fmuladd.f32(float %3383, float %102, float %3386)
store float %3387, float* %106
%3388 = fneg float %3382
%3389 = fmul float %102, %3388
%3390 = tail call float @llvm.fmuladd.f32(float %3384, float %100, float %3389)
store float %3390, float* %110
%3391 = fneg float %3383
%3392 = fmul float %100, %3391
%3393 = tail call float @llvm.fmuladd.f32(float %3382, float %101, float %3392)
store float %3393, float* %114
%3394 = fsub float %12, %44
%3395 = fsub float %17, %47
%3396 = fsub float %22, %50
%3397 = fmul float %3395, %3390
%3398 = tail call float @llvm.fmuladd.f32(float %3394, float %3387, float %3397)
%3399 = tail call float @llvm.fmuladd.f32(float %3396, float %3393, float %3398)
%3400 = fcmp ule float %3399, 0.000000e+00
%3401 = zext i1 %3400 to i32
br label %6747
3402: ; preds = %3357
%3403 = fcmp olt float %120, 0.000000e+00
br i1 %3403, label %3404, label %3445
3404: ; preds = %3402
%3405 = fsub float %44, %60
%3406 = fsub float %47, %67
%3407 = fsub float %50, %74
%3408 = fneg float %117
%3409 = fmul float %3406, %3408
%3410 = tail call float @llvm.fmuladd.f32(float %116, float %3407, float %3409)
%3411 = fneg float %115
%3412 = fmul float %3407, %3411
%3413 = tail call float @llvm.fmuladd.f32(float %117, float %3405, float %3412)
%3414 = fneg float %116
%3415 = fmul float %3405, %3414
%3416 = tail call float @llvm.fmuladd.f32(float %115, float %3406, float %3415)
%3417 = extractelement <2 x float> %128, i64 0
%3418 = fmul float %3417, %3413
%3419 = extractelement <2 x float> %124, i64 0
%3420 = tail call float @llvm.fmuladd.f32(float %3419, float %3410, float %3418)
%3421 = extractelement <2 x float> %132, i64 0
%3422 = tail call float @llvm.fmuladd.f32(float %3421, float %3416, float %3420)
%3423 = fcmp ogt float %3422, 0.000000e+00
br i1 %3423, label %6747, label %3424
3424: ; preds = %3404
%3425 = fsub float %24, %44
%3426 = fsub float %27, %47
%3427 = fsub float %30, %50
%3428 = fneg float %3427
%3429 = fmul float %98, %3428
%3430 = tail call float @llvm.fmuladd.f32(float %3426, float %99, float %3429)
store float %3430, float* %106
%3431 = fneg float %3425
%3432 = fmul float %99, %3431
%3433 = tail call float @llvm.fmuladd.f32(float %3427, float %97, float %3432)
store float %3433, float* %110
%3434 = fneg float %3426
%3435 = fmul float %97, %3434
%3436 = tail call float @llvm.fmuladd.f32(float %3425, float %98, float %3435)
store float %3436, float* %114
%3437 = fsub float %12, %44
%3438 = fsub float %17, %47
%3439 = fsub float %22, %50
%3440 = fmul float %3438, %3433
%3441 = tail call float @llvm.fmuladd.f32(float %3437, float %3430, float %3440)
%3442 = tail call float @llvm.fmuladd.f32(float %3439, float %3436, float %3441)
%3443 = fcmp ule float %3442, 0.000000e+00
%3444 = zext i1 %3443 to i32
br label %6747
3445: ; preds = %3402
%3446 = call i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...) bitcast (i32 (...)* @coplanar_tri_tri3d to i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...)*)(float* %0, float* %1, float* %2, float* %3, float* %5, float* %4, float* %106, float* %35)
br label %6747
3447: ; preds = %1798
br i1 %1800, label %3448, label %4547
3448: ; preds = %3447
%3449 = fcmp ult float %92, 0.000000e+00
%3450 = fcmp ogt float %142, 0.000000e+00
br i1 %3449, label %4008, label %3451
3451: ; preds = %3448
br i1 %3450, label %3452, label %3591
3452: ; preds = %3451
%3453 = fcmp ogt float %145, 0.000000e+00
br i1 %3453, label %3454, label %3498
3454: ; preds = %3452
%3455 = fsub float %24, %44
%3456 = fsub float %27, %47
%3457 = fsub float %30, %50
%3458 = fneg float %3457
%3459 = fmul float %98, %3458
%3460 = tail call float @llvm.fmuladd.f32(float %3456, float %99, float %3459)
%3461 = fneg float %3455
%3462 = fmul float %99, %3461
%3463 = tail call float @llvm.fmuladd.f32(float %3457, float %97, float %3462)
%3464 = fneg float %3456
%3465 = fmul float %97, %3464
%3466 = tail call float @llvm.fmuladd.f32(float %3455, float %98, float %3465)
%3467 = fsub float %11, %44
%3468 = fsub float %15, %47
%3469 = fsub float %20, %50
%3470 = fmul float %3468, %3463
%3471 = tail call float @llvm.fmuladd.f32(float %3467, float %3460, float %3470)
%3472 = tail call float @llvm.fmuladd.f32(float %3469, float %3466, float %3471)
%3473 = fcmp ogt float %3472, 0.000000e+00
br i1 %3473, label %6747, label %3474
3474: ; preds = %3454
%3475 = fsub float %24, %55
%3476 = fsub float %27, %57
%3477 = fsub float %30, %59
%3478 = fsub float %60, %55
%3479 = fsub float %67, %57
%3480 = fsub float %74, %59
%3481 = fneg float %3477
%3482 = fmul float %3479, %3481
%3483 = tail call float @llvm.fmuladd.f32(float %3476, float %3480, float %3482)
store float %3483, float* %106
%3484 = fneg float %3475
%3485 = fmul float %3480, %3484
%3486 = tail call float @llvm.fmuladd.f32(float %3477, float %3478, float %3485)
store float %3486, float* %110
%3487 = fneg float %3476
%3488 = fmul float %3478, %3487
%3489 = tail call float @llvm.fmuladd.f32(float %3475, float %3479, float %3488)
store float %3489, float* %114
%3490 = fsub float %12, %55
%3491 = fsub float %17, %57
%3492 = fsub float %22, %59
%3493 = fmul float %3491, %3486
%3494 = tail call float @llvm.fmuladd.f32(float %3490, float %3483, float %3493)
%3495 = tail call float @llvm.fmuladd.f32(float %3492, float %3489, float %3494)
%3496 = fcmp ule float %3495, 0.000000e+00
%3497 = zext i1 %3496 to i32
br label %6747
3498: ; preds = %3452
%3499 = fcmp ogt float %120, 0.000000e+00
br i1 %3499, label %3500, label %3544
3500: ; preds = %3498
%3501 = fsub float %12, %44
%3502 = fsub float %17, %47
%3503 = fsub float %22, %50
%3504 = fneg float %3503
%3505 = fmul float %98, %3504
%3506 = tail call float @llvm.fmuladd.f32(float %3502, float %99, float %3505)
%3507 = fneg float %3501
%3508 = fmul float %99, %3507
%3509 = tail call float @llvm.fmuladd.f32(float %3503, float %97, float %3508)
%3510 = fneg float %3502
%3511 = fmul float %97, %3510
%3512 = tail call float @llvm.fmuladd.f32(float %3501, float %98, float %3511)
%3513 = fsub float %24, %44
%3514 = fsub float %27, %47
%3515 = fsub float %30, %50
%3516 = fmul float %3514, %3509
%3517 = tail call float @llvm.fmuladd.f32(float %3513, float %3506, float %3516)
%3518 = tail call float @llvm.fmuladd.f32(float %3515, float %3512, float %3517)
%3519 = fcmp ogt float %3518, 0.000000e+00
br i1 %3519, label %6747, label %3520
3520: ; preds = %3500
%3521 = fsub float %12, %55
%3522 = fsub float %17, %57
%3523 = fsub float %22, %59
%3524 = fsub float %60, %55
%3525 = fsub float %67, %57
%3526 = fsub float %74, %59
%3527 = fneg float %3523
%3528 = fmul float %3525, %3527
%3529 = tail call float @llvm.fmuladd.f32(float %3522, float %3526, float %3528)
store float %3529, float* %106
%3530 = fneg float %3521
%3531 = fmul float %3526, %3530
%3532 = tail call float @llvm.fmuladd.f32(float %3523, float %3524, float %3531)
store float %3532, float* %110
%3533 = fneg float %3522
%3534 = fmul float %3524, %3533
%3535 = tail call float @llvm.fmuladd.f32(float %3521, float %3525, float %3534)
store float %3535, float* %114
%3536 = fsub float %11, %55
%3537 = fsub float %15, %57
%3538 = fsub float %20, %59
%3539 = fmul float %3537, %3532
%3540 = tail call float @llvm.fmuladd.f32(float %3536, float %3529, float %3539)
%3541 = tail call float @llvm.fmuladd.f32(float %3538, float %3535, float %3540)
%3542 = fcmp ule float %3541, 0.000000e+00
%3543 = zext i1 %3542 to i32
br label %6747
3544: ; preds = %3498
%3545 = fsub float %55, %60
%3546 = fsub float %57, %67
%3547 = fsub float %59, %74
%3548 = extractelement <2 x float> %132, i64 0
%3549 = fneg float %3548
%3550 = fmul float %3546, %3549
%3551 = extractelement <2 x float> %128, i64 0
%3552 = tail call float @llvm.fmuladd.f32(float %3551, float %3547, float %3550)
%3553 = extractelement <2 x float> %124, i64 0
%3554 = fneg float %3553
%3555 = fmul float %3547, %3554
%3556 = tail call float @llvm.fmuladd.f32(float %3548, float %3545, float %3555)
%3557 = fneg float %3551
%3558 = fmul float %3545, %3557
%3559 = tail call float @llvm.fmuladd.f32(float %3553, float %3546, float %3558)
%3560 = extractelement <2 x float> %128, i64 1
%3561 = fmul float %3560, %3556
%3562 = extractelement <2 x float> %124, i64 1
%3563 = tail call float @llvm.fmuladd.f32(float %3562, float %3552, float %3561)
%3564 = extractelement <2 x float> %132, i64 1
%3565 = tail call float @llvm.fmuladd.f32(float %3564, float %3559, float %3563)
%3566 = fcmp ogt float %3565, 0.000000e+00
br i1 %3566, label %6747, label %3567
3567: ; preds = %3544
%3568 = fsub float %11, %55
%3569 = fsub float %15, %57
%3570 = fsub float %20, %59
%3571 = fsub float %44, %55
%3572 = fsub float %47, %57
%3573 = fsub float %50, %59
%3574 = fneg float %3570
%3575 = fmul float %3572, %3574
%3576 = tail call float @llvm.fmuladd.f32(float %3569, float %3573, float %3575)
store float %3576, float* %106
%3577 = fneg float %3568
%3578 = fmul float %3573, %3577
%3579 = tail call float @llvm.fmuladd.f32(float %3570, float %3571, float %3578)
store float %3579, float* %110
%3580 = fneg float %3569
%3581 = fmul float %3571, %3580
%3582 = tail call float @llvm.fmuladd.f32(float %3568, float %3572, float %3581)
store float %3582, float* %114
%3583 = fsub float %24, %55
%3584 = fsub float %27, %57
%3585 = fsub float %30, %59
%3586 = fmul float %3584, %3579
%3587 = tail call float @llvm.fmuladd.f32(float %3583, float %3576, float %3586)
%3588 = tail call float @llvm.fmuladd.f32(float %3585, float %3582, float %3587)
%3589 = fcmp ule float %3588, 0.000000e+00
%3590 = zext i1 %3589 to i32
br label %6747
3591: ; preds = %3451
%3592 = fcmp olt float %142, 0.000000e+00
%3593 = fcmp olt float %145, 0.000000e+00
br i1 %3592, label %3594, label %3729
3594: ; preds = %3591
br i1 %3593, label %3595, label %3639
3595: ; preds = %3594
%3596 = fsub float %55, %60
%3597 = fsub float %57, %67
%3598 = fsub float %59, %74
%3599 = fneg float %117
%3600 = fmul float %3597, %3599
%3601 = tail call float @llvm.fmuladd.f32(float %116, float %3598, float %3600)
%3602 = fneg float %115
%3603 = fmul float %3598, %3602
%3604 = tail call float @llvm.fmuladd.f32(float %117, float %3596, float %3603)
%3605 = fneg float %116
%3606 = fmul float %3596, %3605
%3607 = tail call float @llvm.fmuladd.f32(float %115, float %3597, float %3606)
%3608 = extractelement <2 x float> %128, i64 0
%3609 = fmul float %3608, %3604
%3610 = extractelement <2 x float> %124, i64 0
%3611 = tail call float @llvm.fmuladd.f32(float %3610, float %3601, float %3609)
%3612 = extractelement <2 x float> %132, i64 0
%3613 = tail call float @llvm.fmuladd.f32(float %3612, float %3607, float %3611)
%3614 = fcmp ogt float %3613, 0.000000e+00
br i1 %3614, label %6747, label %3615
3615: ; preds = %3595
%3616 = fsub float %24, %55
%3617 = fsub float %27, %57
%3618 = fsub float %30, %59
%3619 = fsub float %44, %55
%3620 = fsub float %47, %57
%3621 = fsub float %50, %59
%3622 = fneg float %3618
%3623 = fmul float %3620, %3622
%3624 = tail call float @llvm.fmuladd.f32(float %3617, float %3621, float %3623)
store float %3624, float* %106
%3625 = fneg float %3616
%3626 = fmul float %3621, %3625
%3627 = tail call float @llvm.fmuladd.f32(float %3618, float %3619, float %3626)
store float %3627, float* %110
%3628 = fneg float %3617
%3629 = fmul float %3619, %3628
%3630 = tail call float @llvm.fmuladd.f32(float %3616, float %3620, float %3629)
store float %3630, float* %114
%3631 = fsub float %12, %55
%3632 = fsub float %17, %57
%3633 = fsub float %22, %59
%3634 = fmul float %3632, %3627
%3635 = tail call float @llvm.fmuladd.f32(float %3631, float %3624, float %3634)
%3636 = tail call float @llvm.fmuladd.f32(float %3633, float %3630, float %3635)
%3637 = fcmp ule float %3636, 0.000000e+00
%3638 = zext i1 %3637 to i32
br label %6747
3639: ; preds = %3594
%3640 = fcmp olt float %120, 0.000000e+00
br i1 %3640, label %3641, label %3685
3641: ; preds = %3639
%3642 = fsub float %55, %60
%3643 = fsub float %57, %67
%3644 = fsub float %59, %74
%3645 = extractelement <2 x float> %132, i64 1
%3646 = fneg float %3645
%3647 = fmul float %3643, %3646
%3648 = extractelement <2 x float> %128, i64 1
%3649 = tail call float @llvm.fmuladd.f32(float %3648, float %3644, float %3647)
%3650 = extractelement <2 x float> %124, i64 1
%3651 = fneg float %3650
%3652 = fmul float %3644, %3651
%3653 = tail call float @llvm.fmuladd.f32(float %3645, float %3642, float %3652)
%3654 = fneg float %3648
%3655 = fmul float %3642, %3654
%3656 = tail call float @llvm.fmuladd.f32(float %3650, float %3643, float %3655)
%3657 = fmul float %116, %3653
%3658 = tail call float @llvm.fmuladd.f32(float %115, float %3649, float %3657)
%3659 = tail call float @llvm.fmuladd.f32(float %117, float %3656, float %3658)
%3660 = fcmp ogt float %3659, 0.000000e+00
br i1 %3660, label %6747, label %3661
3661: ; preds = %3641
%3662 = fsub float %12, %55
%3663 = fsub float %17, %57
%3664 = fsub float %22, %59
%3665 = fsub float %44, %55
%3666 = fsub float %47, %57
%3667 = fsub float %50, %59
%3668 = fneg float %3664
%3669 = fmul float %3666, %3668
%3670 = tail call float @llvm.fmuladd.f32(float %3663, float %3667, float %3669)
store float %3670, float* %106
%3671 = fneg float %3662
%3672 = fmul float %3667, %3671
%3673 = tail call float @llvm.fmuladd.f32(float %3664, float %3665, float %3672)
store float %3673, float* %110
%3674 = fneg float %3663
%3675 = fmul float %3665, %3674
%3676 = tail call float @llvm.fmuladd.f32(float %3662, float %3666, float %3675)
store float %3676, float* %114
%3677 = fsub float %11, %55
%3678 = fsub float %15, %57
%3679 = fsub float %20, %59
%3680 = fmul float %3678, %3673
%3681 = tail call float @llvm.fmuladd.f32(float %3677, float %3670, float %3680)
%3682 = tail call float @llvm.fmuladd.f32(float %3679, float %3676, float %3681)
%3683 = fcmp ule float %3682, 0.000000e+00
%3684 = zext i1 %3683 to i32
br label %6747
3685: ; preds = %3639
%3686 = fsub float %11, %44
%3687 = fsub float %15, %47
%3688 = fsub float %20, %50
%3689 = fneg float %3688
%3690 = fmul float %98, %3689
%3691 = tail call float @llvm.fmuladd.f32(float %3687, float %99, float %3690)
%3692 = fneg float %3686
%3693 = fmul float %99, %3692
%3694 = tail call float @llvm.fmuladd.f32(float %3688, float %97, float %3693)
%3695 = fneg float %3687
%3696 = fmul float %97, %3695
%3697 = tail call float @llvm.fmuladd.f32(float %3686, float %98, float %3696)
%3698 = fsub float %12, %44
%3699 = fsub float %17, %47
%3700 = fsub float %22, %50
%3701 = fmul float %3699, %3694
%3702 = tail call float @llvm.fmuladd.f32(float %3698, float %3691, float %3701)
%3703 = tail call float @llvm.fmuladd.f32(float %3700, float %3697, float %3702)
%3704 = fcmp ogt float %3703, 0.000000e+00
br i1 %3704, label %6747, label %3705
3705: ; preds = %3685
%3706 = fsub float %11, %55
%3707 = fsub float %15, %57
%3708 = fsub float %20, %59
%3709 = fsub float %60, %55
%3710 = fsub float %67, %57
%3711 = fsub float %74, %59
%3712 = fneg float %3708
%3713 = fmul float %3710, %3712
%3714 = tail call float @llvm.fmuladd.f32(float %3707, float %3711, float %3713)
store float %3714, float* %106
%3715 = fneg float %3706
%3716 = fmul float %3711, %3715
%3717 = tail call float @llvm.fmuladd.f32(float %3708, float %3709, float %3716)
store float %3717, float* %110
%3718 = fneg float %3707
%3719 = fmul float %3709, %3718
%3720 = tail call float @llvm.fmuladd.f32(float %3706, float %3710, float %3719)
store float %3720, float* %114
%3721 = fsub float %24, %55
%3722 = fsub float %27, %57
%3723 = fsub float %30, %59
%3724 = fmul float %3722, %3717
%3725 = tail call float @llvm.fmuladd.f32(float %3721, float %3714, float %3724)
%3726 = tail call float @llvm.fmuladd.f32(float %3723, float %3720, float %3725)
%3727 = fcmp ule float %3726, 0.000000e+00
%3728 = zext i1 %3727 to i32
br label %6747
3729: ; preds = %3591
br i1 %3593, label %3730, label %3823
3730: ; preds = %3729
%3731 = fcmp ult float %120, 0.000000e+00
br i1 %3731, label %3776, label %3732
3732: ; preds = %3730
%3733 = fsub float %12, %44
%3734 = fsub float %17, %47
%3735 = fsub float %22, %50
%3736 = fneg float %3735
%3737 = fmul float %98, %3736
%3738 = tail call float @llvm.fmuladd.f32(float %3734, float %99, float %3737)
%3739 = fneg float %3733
%3740 = fmul float %99, %3739
%3741 = tail call float @llvm.fmuladd.f32(float %3735, float %97, float %3740)
%3742 = fneg float %3734
%3743 = fmul float %97, %3742
%3744 = tail call float @llvm.fmuladd.f32(float %3733, float %98, float %3743)
%3745 = fsub float %24, %44
%3746 = fsub float %27, %47
%3747 = fsub float %30, %50
%3748 = fmul float %3746, %3741
%3749 = tail call float @llvm.fmuladd.f32(float %3745, float %3738, float %3748)
%3750 = tail call float @llvm.fmuladd.f32(float %3747, float %3744, float %3749)
%3751 = fcmp ogt float %3750, 0.000000e+00
br i1 %3751, label %6747, label %3752
3752: ; preds = %3732
%3753 = fsub float %12, %55
%3754 = fsub float %17, %57
%3755 = fsub float %22, %59
%3756 = fsub float %60, %55
%3757 = fsub float %67, %57
%3758 = fsub float %74, %59
%3759 = fneg float %3755
%3760 = fmul float %3757, %3759
%3761 = tail call float @llvm.fmuladd.f32(float %3754, float %3758, float %3760)
store float %3761, float* %106
%3762 = fneg float %3753
%3763 = fmul float %3758, %3762
%3764 = tail call float @llvm.fmuladd.f32(float %3755, float %3756, float %3763)
store float %3764, float* %110
%3765 = fneg float %3754
%3766 = fmul float %3756, %3765
%3767 = tail call float @llvm.fmuladd.f32(float %3753, float %3757, float %3766)
store float %3767, float* %114
%3768 = fsub float %11, %55
%3769 = fsub float %15, %57
%3770 = fsub float %20, %59
%3771 = fmul float %3769, %3764
%3772 = tail call float @llvm.fmuladd.f32(float %3768, float %3761, float %3771)
%3773 = tail call float @llvm.fmuladd.f32(float %3770, float %3767, float %3772)
%3774 = fcmp ule float %3773, 0.000000e+00
%3775 = zext i1 %3774 to i32
br label %6747
3776: ; preds = %3730
%3777 = fsub float %55, %60
%3778 = fsub float %57, %67
%3779 = fsub float %59, %74
%3780 = extractelement <2 x float> %132, i64 0
%3781 = fneg float %3780
%3782 = fmul float %3778, %3781
%3783 = extractelement <2 x float> %128, i64 0
%3784 = tail call float @llvm.fmuladd.f32(float %3783, float %3779, float %3782)
%3785 = extractelement <2 x float> %124, i64 0
%3786 = fneg float %3785
%3787 = fmul float %3779, %3786
%3788 = tail call float @llvm.fmuladd.f32(float %3780, float %3777, float %3787)
%3789 = fneg float %3783
%3790 = fmul float %3777, %3789
%3791 = tail call float @llvm.fmuladd.f32(float %3785, float %3778, float %3790)
%3792 = extractelement <2 x float> %128, i64 1
%3793 = fmul float %3792, %3788
%3794 = extractelement <2 x float> %124, i64 1
%3795 = tail call float @llvm.fmuladd.f32(float %3794, float %3784, float %3793)
%3796 = extractelement <2 x float> %132, i64 1
%3797 = tail call float @llvm.fmuladd.f32(float %3796, float %3791, float %3795)
%3798 = fcmp ogt float %3797, 0.000000e+00
br i1 %3798, label %6747, label %3799
3799: ; preds = %3776
%3800 = fsub float %11, %55
%3801 = fsub float %15, %57
%3802 = fsub float %20, %59
%3803 = fsub float %44, %55
%3804 = fsub float %47, %57
%3805 = fsub float %50, %59
%3806 = fneg float %3802
%3807 = fmul float %3804, %3806
%3808 = tail call float @llvm.fmuladd.f32(float %3801, float %3805, float %3807)
store float %3808, float* %106
%3809 = fneg float %3800
%3810 = fmul float %3805, %3809
%3811 = tail call float @llvm.fmuladd.f32(float %3802, float %3803, float %3810)
store float %3811, float* %110
%3812 = fneg float %3801
%3813 = fmul float %3803, %3812
%3814 = tail call float @llvm.fmuladd.f32(float %3800, float %3804, float %3813)
store float %3814, float* %114
%3815 = fsub float %24, %55
%3816 = fsub float %27, %57
%3817 = fsub float %30, %59
%3818 = fmul float %3816, %3811
%3819 = tail call float @llvm.fmuladd.f32(float %3815, float %3808, float %3818)
%3820 = tail call float @llvm.fmuladd.f32(float %3817, float %3814, float %3819)
%3821 = fcmp ule float %3820, 0.000000e+00
%3822 = zext i1 %3821 to i32
br label %6747
3823: ; preds = %3729
%3824 = fcmp ogt float %145, 0.000000e+00
%3825 = fcmp ogt float %120, 0.000000e+00
br i1 %3824, label %3826, label %3915
3826: ; preds = %3823
br i1 %3825, label %3827, label %3871
3827: ; preds = %3826
%3828 = fsub float %11, %44
%3829 = fsub float %15, %47
%3830 = fsub float %20, %50
%3831 = fneg float %3830
%3832 = fmul float %98, %3831
%3833 = tail call float @llvm.fmuladd.f32(float %3829, float %99, float %3832)
%3834 = fneg float %3828
%3835 = fmul float %99, %3834
%3836 = tail call float @llvm.fmuladd.f32(float %3830, float %97, float %3835)
%3837 = fneg float %3829
%3838 = fmul float %97, %3837
%3839 = tail call float @llvm.fmuladd.f32(float %3828, float %98, float %3838)
%3840 = fsub float %12, %44
%3841 = fsub float %17, %47
%3842 = fsub float %22, %50
%3843 = fmul float %3841, %3836
%3844 = tail call float @llvm.fmuladd.f32(float %3840, float %3833, float %3843)
%3845 = tail call float @llvm.fmuladd.f32(float %3842, float %3839, float %3844)
%3846 = fcmp ogt float %3845, 0.000000e+00
br i1 %3846, label %6747, label %3847
3847: ; preds = %3827
%3848 = fsub float %11, %55
%3849 = fsub float %15, %57
%3850 = fsub float %20, %59
%3851 = fsub float %60, %55
%3852 = fsub float %67, %57
%3853 = fsub float %74, %59
%3854 = fneg float %3850
%3855 = fmul float %3852, %3854
%3856 = tail call float @llvm.fmuladd.f32(float %3849, float %3853, float %3855)
store float %3856, float* %106
%3857 = fneg float %3848
%3858 = fmul float %3853, %3857
%3859 = tail call float @llvm.fmuladd.f32(float %3850, float %3851, float %3858)
store float %3859, float* %110
%3860 = fneg float %3849
%3861 = fmul float %3851, %3860
%3862 = tail call float @llvm.fmuladd.f32(float %3848, float %3852, float %3861)
store float %3862, float* %114
%3863 = fsub float %24, %55
%3864 = fsub float %27, %57
%3865 = fsub float %30, %59
%3866 = fmul float %3864, %3859
%3867 = tail call float @llvm.fmuladd.f32(float %3863, float %3856, float %3866)
%3868 = tail call float @llvm.fmuladd.f32(float %3865, float %3862, float %3867)
%3869 = fcmp ule float %3868, 0.000000e+00
%3870 = zext i1 %3869 to i32
br label %6747
3871: ; preds = %3826
%3872 = fsub float %55, %60
%3873 = fsub float %57, %67
%3874 = fsub float %59, %74
%3875 = extractelement <2 x float> %132, i64 1
%3876 = fneg float %3875
%3877 = fmul float %3873, %3876
%3878 = extractelement <2 x float> %128, i64 1
%3879 = tail call float @llvm.fmuladd.f32(float %3878, float %3874, float %3877)
%3880 = extractelement <2 x float> %124, i64 1
%3881 = fneg float %3880
%3882 = fmul float %3874, %3881
%3883 = tail call float @llvm.fmuladd.f32(float %3875, float %3872, float %3882)
%3884 = fneg float %3878
%3885 = fmul float %3872, %3884
%3886 = tail call float @llvm.fmuladd.f32(float %3880, float %3873, float %3885)
%3887 = fmul float %116, %3883
%3888 = tail call float @llvm.fmuladd.f32(float %115, float %3879, float %3887)
%3889 = tail call float @llvm.fmuladd.f32(float %117, float %3886, float %3888)
%3890 = fcmp ogt float %3889, 0.000000e+00
br i1 %3890, label %6747, label %3891
3891: ; preds = %3871
%3892 = fsub float %12, %55
%3893 = fsub float %17, %57
%3894 = fsub float %22, %59
%3895 = fsub float %44, %55
%3896 = fsub float %47, %57
%3897 = fsub float %50, %59
%3898 = fneg float %3894
%3899 = fmul float %3896, %3898
%3900 = tail call float @llvm.fmuladd.f32(float %3893, float %3897, float %3899)
store float %3900, float* %106
%3901 = fneg float %3892
%3902 = fmul float %3897, %3901
%3903 = tail call float @llvm.fmuladd.f32(float %3894, float %3895, float %3902)
store float %3903, float* %110
%3904 = fneg float %3893
%3905 = fmul float %3895, %3904
%3906 = tail call float @llvm.fmuladd.f32(float %3892, float %3896, float %3905)
store float %3906, float* %114
%3907 = fsub float %11, %55
%3908 = fsub float %15, %57
%3909 = fsub float %20, %59
%3910 = fmul float %3908, %3903
%3911 = tail call float @llvm.fmuladd.f32(float %3907, float %3900, float %3910)
%3912 = tail call float @llvm.fmuladd.f32(float %3909, float %3906, float %3911)
%3913 = fcmp ule float %3912, 0.000000e+00
%3914 = zext i1 %3913 to i32
br label %6747
3915: ; preds = %3823
br i1 %3825, label %3916, label %3960
3916: ; preds = %3915
%3917 = fsub float %55, %60
%3918 = fsub float %57, %67
%3919 = fsub float %59, %74
%3920 = fneg float %117
%3921 = fmul float %3918, %3920
%3922 = tail call float @llvm.fmuladd.f32(float %116, float %3919, float %3921)
%3923 = fneg float %115
%3924 = fmul float %3919, %3923
%3925 = tail call float @llvm.fmuladd.f32(float %117, float %3917, float %3924)
%3926 = fneg float %116
%3927 = fmul float %3917, %3926
%3928 = tail call float @llvm.fmuladd.f32(float %115, float %3918, float %3927)
%3929 = extractelement <2 x float> %128, i64 0
%3930 = fmul float %3929, %3925
%3931 = extractelement <2 x float> %124, i64 0
%3932 = tail call float @llvm.fmuladd.f32(float %3931, float %3922, float %3930)
%3933 = extractelement <2 x float> %132, i64 0
%3934 = tail call float @llvm.fmuladd.f32(float %3933, float %3928, float %3932)
%3935 = fcmp ogt float %3934, 0.000000e+00
br i1 %3935, label %6747, label %3936
3936: ; preds = %3916
%3937 = fsub float %24, %55
%3938 = fsub float %27, %57
%3939 = fsub float %30, %59
%3940 = fsub float %44, %55
%3941 = fsub float %47, %57
%3942 = fsub float %50, %59
%3943 = fneg float %3939
%3944 = fmul float %3941, %3943
%3945 = tail call float @llvm.fmuladd.f32(float %3938, float %3942, float %3944)
store float %3945, float* %106
%3946 = fneg float %3937
%3947 = fmul float %3942, %3946
%3948 = tail call float @llvm.fmuladd.f32(float %3939, float %3940, float %3947)
store float %3948, float* %110
%3949 = fneg float %3938
%3950 = fmul float %3940, %3949
%3951 = tail call float @llvm.fmuladd.f32(float %3937, float %3941, float %3950)
store float %3951, float* %114
%3952 = fsub float %12, %55
%3953 = fsub float %17, %57
%3954 = fsub float %22, %59
%3955 = fmul float %3953, %3948
%3956 = tail call float @llvm.fmuladd.f32(float %3952, float %3945, float %3955)
%3957 = tail call float @llvm.fmuladd.f32(float %3954, float %3951, float %3956)
%3958 = fcmp ule float %3957, 0.000000e+00
%3959 = zext i1 %3958 to i32
br label %6747
3960: ; preds = %3915
%3961 = fcmp olt float %120, 0.000000e+00
br i1 %3961, label %3962, label %4006
3962: ; preds = %3960
%3963 = fsub float %24, %44
%3964 = fsub float %27, %47
%3965 = fsub float %30, %50
%3966 = fneg float %3965
%3967 = fmul float %98, %3966
%3968 = tail call float @llvm.fmuladd.f32(float %3964, float %99, float %3967)
%3969 = fneg float %3963
%3970 = fmul float %99, %3969
%3971 = tail call float @llvm.fmuladd.f32(float %3965, float %97, float %3970)
%3972 = fneg float %3964
%3973 = fmul float %97, %3972
%3974 = tail call float @llvm.fmuladd.f32(float %3963, float %98, float %3973)
%3975 = fsub float %11, %44
%3976 = fsub float %15, %47
%3977 = fsub float %20, %50
%3978 = fmul float %3976, %3971
%3979 = tail call float @llvm.fmuladd.f32(float %3975, float %3968, float %3978)
%3980 = tail call float @llvm.fmuladd.f32(float %3977, float %3974, float %3979)
%3981 = fcmp ogt float %3980, 0.000000e+00
br i1 %3981, label %6747, label %3982
3982: ; preds = %3962
%3983 = fsub float %24, %55
%3984 = fsub float %27, %57
%3985 = fsub float %30, %59
%3986 = fsub float %60, %55
%3987 = fsub float %67, %57
%3988 = fsub float %74, %59
%3989 = fneg float %3985
%3990 = fmul float %3987, %3989
%3991 = tail call float @llvm.fmuladd.f32(float %3984, float %3988, float %3990)
store float %3991, float* %106
%3992 = fneg float %3983
%3993 = fmul float %3988, %3992
%3994 = tail call float @llvm.fmuladd.f32(float %3985, float %3986, float %3993)
store float %3994, float* %110
%3995 = fneg float %3984
%3996 = fmul float %3986, %3995
%3997 = tail call float @llvm.fmuladd.f32(float %3983, float %3987, float %3996)
store float %3997, float* %114
%3998 = fsub float %12, %55
%3999 = fsub float %17, %57
%4000 = fsub float %22, %59
%4001 = fmul float %3999, %3994
%4002 = tail call float @llvm.fmuladd.f32(float %3998, float %3991, float %4001)
%4003 = tail call float @llvm.fmuladd.f32(float %4000, float %3997, float %4002)
%4004 = fcmp ule float %4003, 0.000000e+00
%4005 = zext i1 %4004 to i32
br label %6747
4006: ; preds = %3960
%4007 = call i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...) bitcast (i32 (...)* @coplanar_tri_tri3d to i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...)*)(float* %1, float* %2, float* %0, float* %3, float* %5, float* %4, float* %106, float* %35)
br label %6747
4008: ; preds = %3448
br i1 %3450, label %4009, label %4142
4009: ; preds = %4008
%4010 = fcmp ogt float %120, 0.000000e+00
br i1 %4010, label %4011, label %4055
4011: ; preds = %4009
%4012 = fsub float %44, %60
%4013 = fsub float %47, %67
%4014 = fsub float %50, %74
%4015 = extractelement <2 x float> %132, i64 1
%4016 = fneg float %4015
%4017 = fmul float %4013, %4016
%4018 = extractelement <2 x float> %128, i64 1
%4019 = tail call float @llvm.fmuladd.f32(float %4018, float %4014, float %4017)
%4020 = extractelement <2 x float> %124, i64 1
%4021 = fneg float %4020
%4022 = fmul float %4014, %4021
%4023 = tail call float @llvm.fmuladd.f32(float %4015, float %4012, float %4022)
%4024 = fneg float %4018
%4025 = fmul float %4012, %4024
%4026 = tail call float @llvm.fmuladd.f32(float %4020, float %4013, float %4025)
%4027 = extractelement <2 x float> %128, i64 0
%4028 = fmul float %4027, %4023
%4029 = extractelement <2 x float> %124, i64 0
%4030 = tail call float @llvm.fmuladd.f32(float %4029, float %4019, float %4028)
%4031 = extractelement <2 x float> %132, i64 0
%4032 = tail call float @llvm.fmuladd.f32(float %4031, float %4026, float %4030)
%4033 = fcmp ogt float %4032, 0.000000e+00
br i1 %4033, label %6747, label %4034
4034: ; preds = %4011
%4035 = fsub float %12, %44
%4036 = fsub float %17, %47
%4037 = fsub float %22, %50
%4038 = fneg float %4037
%4039 = fmul float %98, %4038
%4040 = tail call float @llvm.fmuladd.f32(float %4036, float %99, float %4039)
store float %4040, float* %106
%4041 = fneg float %4035
%4042 = fmul float %99, %4041
%4043 = tail call float @llvm.fmuladd.f32(float %4037, float %97, float %4042)
store float %4043, float* %110
%4044 = fneg float %4036
%4045 = fmul float %97, %4044
%4046 = tail call float @llvm.fmuladd.f32(float %4035, float %98, float %4045)
store float %4046, float* %114
%4047 = fsub float %24, %44
%4048 = fsub float %27, %47
%4049 = fsub float %30, %50
%4050 = fmul float %4048, %4043
%4051 = tail call float @llvm.fmuladd.f32(float %4047, float %4040, float %4050)
%4052 = tail call float @llvm.fmuladd.f32(float %4049, float %4046, float %4051)
%4053 = fcmp ule float %4052, 0.000000e+00
%4054 = zext i1 %4053 to i32
br label %6747
4055: ; preds = %4009
%4056 = fcmp ogt float %145, 0.000000e+00
br i1 %4056, label %4057, label %4098
4057: ; preds = %4055
%4058 = fsub float %44, %60
%4059 = fsub float %47, %67
%4060 = fsub float %50, %74
%4061 = fneg float %117
%4062 = fmul float %4059, %4061
%4063 = tail call float @llvm.fmuladd.f32(float %116, float %4060, float %4062)
%4064 = fneg float %115
%4065 = fmul float %4060, %4064
%4066 = tail call float @llvm.fmuladd.f32(float %117, float %4058, float %4065)
%4067 = fneg float %116
%4068 = fmul float %4058, %4067
%4069 = tail call float @llvm.fmuladd.f32(float %115, float %4059, float %4068)
%4070 = extractelement <2 x float> %128, i64 1
%4071 = fmul float %4070, %4066
%4072 = extractelement <2 x float> %124, i64 1
%4073 = tail call float @llvm.fmuladd.f32(float %4072, float %4063, float %4071)
%4074 = extractelement <2 x float> %132, i64 1
%4075 = tail call float @llvm.fmuladd.f32(float %4074, float %4069, float %4073)
%4076 = fcmp ogt float %4075, 0.000000e+00
br i1 %4076, label %6747, label %4077
4077: ; preds = %4057
%4078 = fsub float %24, %44
%4079 = fsub float %27, %47
%4080 = fsub float %30, %50
%4081 = fneg float %4080
%4082 = fmul float %98, %4081
%4083 = tail call float @llvm.fmuladd.f32(float %4079, float %99, float %4082)
store float %4083, float* %106
%4084 = fneg float %4078
%4085 = fmul float %99, %4084
%4086 = tail call float @llvm.fmuladd.f32(float %4080, float %97, float %4085)
store float %4086, float* %110
%4087 = fneg float %4079
%4088 = fmul float %97, %4087
%4089 = tail call float @llvm.fmuladd.f32(float %4078, float %98, float %4088)
store float %4089, float* %114
%4090 = fsub float %11, %44
%4091 = fsub float %15, %47
%4092 = fsub float %20, %50
%4093 = fmul float %4091, %4086
%4094 = tail call float @llvm.fmuladd.f32(float %4090, float %4083, float %4093)
%4095 = tail call float @llvm.fmuladd.f32(float %4092, float %4089, float %4094)
%4096 = fcmp ule float %4095, 0.000000e+00
%4097 = zext i1 %4096 to i32
br label %6747
4098: ; preds = %4055
%4099 = fsub float %11, %55
%4100 = fsub float %15, %57
%4101 = fsub float %20, %59
%4102 = fsub float %44, %55
%4103 = fsub float %47, %57
%4104 = fsub float %50, %59
%4105 = fneg float %4101
%4106 = fmul float %4103, %4105
%4107 = tail call float @llvm.fmuladd.f32(float %4100, float %4104, float %4106)
%4108 = fneg float %4099
%4109 = fmul float %4104, %4108
%4110 = tail call float @llvm.fmuladd.f32(float %4101, float %4102, float %4109)
%4111 = fneg float %4100
%4112 = fmul float %4102, %4111
%4113 = tail call float @llvm.fmuladd.f32(float %4099, float %4103, float %4112)
%4114 = fsub float %24, %55
%4115 = fsub float %27, %57
%4116 = fsub float %30, %59
%4117 = fmul float %4115, %4110
%4118 = tail call float @llvm.fmuladd.f32(float %4114, float %4107, float %4117)
%4119 = tail call float @llvm.fmuladd.f32(float %4116, float %4113, float %4118)
%4120 = fcmp ogt float %4119, 0.000000e+00
br i1 %4120, label %6747, label %4121
4121: ; preds = %4098
%4122 = fsub float %11, %44
%4123 = fsub float %15, %47
%4124 = fsub float %20, %50
%4125 = fneg float %4124
%4126 = fmul float %101, %4125
%4127 = tail call float @llvm.fmuladd.f32(float %4123, float %102, float %4126)
store float %4127, float* %106
%4128 = fneg float %4122
%4129 = fmul float %102, %4128
%4130 = tail call float @llvm.fmuladd.f32(float %4124, float %100, float %4129)
store float %4130, float* %110
%4131 = fneg float %4123
%4132 = fmul float %100, %4131
%4133 = tail call float @llvm.fmuladd.f32(float %4122, float %101, float %4132)
store float %4133, float* %114
%4134 = fsub float %12, %44
%4135 = fsub float %17, %47
%4136 = fsub float %22, %50
%4137 = fmul float %4135, %4130
%4138 = tail call float @llvm.fmuladd.f32(float %4134, float %4127, float %4137)
%4139 = tail call float @llvm.fmuladd.f32(float %4136, float %4133, float %4138)
%4140 = fcmp ule float %4139, 0.000000e+00
%4141 = zext i1 %4140 to i32
br label %6747
4142: ; preds = %4008
%4143 = fcmp olt float %142, 0.000000e+00
%4144 = fcmp olt float %120, 0.000000e+00
br i1 %4143, label %4145, label %4277
4145: ; preds = %4142
br i1 %4144, label %4146, label %4190
4146: ; preds = %4145
%4147 = fsub float %12, %55
%4148 = fsub float %17, %57
%4149 = fsub float %22, %59
%4150 = fsub float %44, %55
%4151 = fsub float %47, %57
%4152 = fsub float %50, %59
%4153 = fneg float %4149
%4154 = fmul float %4151, %4153
%4155 = tail call float @llvm.fmuladd.f32(float %4148, float %4152, float %4154)
%4156 = fneg float %4147
%4157 = fmul float %4152, %4156
%4158 = tail call float @llvm.fmuladd.f32(float %4149, float %4150, float %4157)
%4159 = fneg float %4148
%4160 = fmul float %4150, %4159
%4161 = tail call float @llvm.fmuladd.f32(float %4147, float %4151, float %4160)
%4162 = fsub float %11, %55
%4163 = fsub float %15, %57
%4164 = fsub float %20, %59
%4165 = fmul float %4163, %4158
%4166 = tail call float @llvm.fmuladd.f32(float %4162, float %4155, float %4165)
%4167 = tail call float @llvm.fmuladd.f32(float %4164, float %4161, float %4166)
%4168 = fcmp ogt float %4167, 0.000000e+00
br i1 %4168, label %6747, label %4169
4169: ; preds = %4146
%4170 = fsub float %12, %44
%4171 = fsub float %17, %47
%4172 = fsub float %22, %50
%4173 = fneg float %4172
%4174 = fmul float %101, %4173
%4175 = tail call float @llvm.fmuladd.f32(float %4171, float %102, float %4174)
store float %4175, float* %106
%4176 = fneg float %4170
%4177 = fmul float %102, %4176
%4178 = tail call float @llvm.fmuladd.f32(float %4172, float %100, float %4177)
store float %4178, float* %110
%4179 = fneg float %4171
%4180 = fmul float %100, %4179
%4181 = tail call float @llvm.fmuladd.f32(float %4170, float %101, float %4180)
store float %4181, float* %114
%4182 = fsub float %24, %44
%4183 = fsub float %27, %47
%4184 = fsub float %30, %50
%4185 = fmul float %4183, %4178
%4186 = tail call float @llvm.fmuladd.f32(float %4182, float %4175, float %4185)
%4187 = tail call float @llvm.fmuladd.f32(float %4184, float %4181, float %4186)
%4188 = fcmp ule float %4187, 0.000000e+00
%4189 = zext i1 %4188 to i32
br label %6747
4190: ; preds = %4145
%4191 = fcmp olt float %145, 0.000000e+00
br i1 %4191, label %4192, label %4236
4192: ; preds = %4190
%4193 = fsub float %24, %55
%4194 = fsub float %27, %57
%4195 = fsub float %30, %59
%4196 = fsub float %44, %55
%4197 = fsub float %47, %57
%4198 = fsub float %50, %59
%4199 = fneg float %4195
%4200 = fmul float %4197, %4199
%4201 = tail call float @llvm.fmuladd.f32(float %4194, float %4198, float %4200)
%4202 = fneg float %4193
%4203 = fmul float %4198, %4202
%4204 = tail call float @llvm.fmuladd.f32(float %4195, float %4196, float %4203)
%4205 = fneg float %4194
%4206 = fmul float %4196, %4205
%4207 = tail call float @llvm.fmuladd.f32(float %4193, float %4197, float %4206)
%4208 = fsub float %12, %55
%4209 = fsub float %17, %57
%4210 = fsub float %22, %59
%4211 = fmul float %4209, %4204
%4212 = tail call float @llvm.fmuladd.f32(float %4208, float %4201, float %4211)
%4213 = tail call float @llvm.fmuladd.f32(float %4210, float %4207, float %4212)
%4214 = fcmp ogt float %4213, 0.000000e+00
br i1 %4214, label %6747, label %4215
4215: ; preds = %4192
%4216 = fsub float %24, %44
%4217 = fsub float %27, %47
%4218 = fsub float %30, %50
%4219 = fneg float %4218
%4220 = fmul float %101, %4219
%4221 = tail call float @llvm.fmuladd.f32(float %4217, float %102, float %4220)
store float %4221, float* %106
%4222 = fneg float %4216
%4223 = fmul float %102, %4222
%4224 = tail call float @llvm.fmuladd.f32(float %4218, float %100, float %4223)
store float %4224, float* %110
%4225 = fneg float %4217
%4226 = fmul float %100, %4225
%4227 = tail call float @llvm.fmuladd.f32(float %4216, float %101, float %4226)
store float %4227, float* %114
%4228 = fsub float %11, %44
%4229 = fsub float %15, %47
%4230 = fsub float %20, %50
%4231 = fmul float %4229, %4224
%4232 = tail call float @llvm.fmuladd.f32(float %4228, float %4221, float %4231)
%4233 = tail call float @llvm.fmuladd.f32(float %4230, float %4227, float %4232)
%4234 = fcmp ule float %4233, 0.000000e+00
%4235 = zext i1 %4234 to i32
br label %6747
4236: ; preds = %4190
%4237 = fsub float %44, %60
%4238 = fsub float %47, %67
%4239 = fsub float %50, %74
%4240 = extractelement <2 x float> %132, i64 0
%4241 = fneg float %4240
%4242 = fmul float %4238, %4241
%4243 = extractelement <2 x float> %128, i64 0
%4244 = tail call float @llvm.fmuladd.f32(float %4243, float %4239, float %4242)
%4245 = extractelement <2 x float> %124, i64 0
%4246 = fneg float %4245
%4247 = fmul float %4239, %4246
%4248 = tail call float @llvm.fmuladd.f32(float %4240, float %4237, float %4247)
%4249 = fneg float %4243
%4250 = fmul float %4237, %4249
%4251 = tail call float @llvm.fmuladd.f32(float %4245, float %4238, float %4250)
%4252 = fmul float %116, %4248
%4253 = tail call float @llvm.fmuladd.f32(float %115, float %4244, float %4252)
%4254 = tail call float @llvm.fmuladd.f32(float %117, float %4251, float %4253)
%4255 = fcmp ogt float %4254, 0.000000e+00
br i1 %4255, label %6747, label %4256
4256: ; preds = %4236
%4257 = fsub float %11, %44
%4258 = fsub float %15, %47
%4259 = fsub float %20, %50
%4260 = fneg float %4259
%4261 = fmul float %98, %4260
%4262 = tail call float @llvm.fmuladd.f32(float %4258, float %99, float %4261)
store float %4262, float* %106
%4263 = fneg float %4257
%4264 = fmul float %99, %4263
%4265 = tail call float @llvm.fmuladd.f32(float %4259, float %97, float %4264)
store float %4265, float* %110
%4266 = fneg float %4258
%4267 = fmul float %97, %4266
%4268 = tail call float @llvm.fmuladd.f32(float %4257, float %98, float %4267)
store float %4268, float* %114
%4269 = fsub float %12, %44
%4270 = fsub float %17, %47
%4271 = fsub float %22, %50
%4272 = fmul float %4270, %4265
%4273 = tail call float @llvm.fmuladd.f32(float %4269, float %4262, float %4272)
%4274 = tail call float @llvm.fmuladd.f32(float %4271, float %4268, float %4273)
%4275 = fcmp ule float %4274, 0.000000e+00
%4276 = zext i1 %4275 to i32
br label %6747
4277: ; preds = %4142
br i1 %4144, label %4278, label %4365
4278: ; preds = %4277
%4279 = fcmp ult float %145, 0.000000e+00
br i1 %4279, label %4321, label %4280
4280: ; preds = %4278
%4281 = fsub float %44, %60
%4282 = fsub float %47, %67
%4283 = fsub float %50, %74
%4284 = fneg float %117
%4285 = fmul float %4282, %4284
%4286 = tail call float @llvm.fmuladd.f32(float %116, float %4283, float %4285)
%4287 = fneg float %115
%4288 = fmul float %4283, %4287
%4289 = tail call float @llvm.fmuladd.f32(float %117, float %4281, float %4288)
%4290 = fneg float %116
%4291 = fmul float %4281, %4290
%4292 = tail call float @llvm.fmuladd.f32(float %115, float %4282, float %4291)
%4293 = extractelement <2 x float> %128, i64 1
%4294 = fmul float %4293, %4289
%4295 = extractelement <2 x float> %124, i64 1
%4296 = tail call float @llvm.fmuladd.f32(float %4295, float %4286, float %4294)
%4297 = extractelement <2 x float> %132, i64 1
%4298 = tail call float @llvm.fmuladd.f32(float %4297, float %4292, float %4296)
%4299 = fcmp ogt float %4298, 0.000000e+00
br i1 %4299, label %6747, label %4300
4300: ; preds = %4280
%4301 = fsub float %24, %44
%4302 = fsub float %27, %47
%4303 = fsub float %30, %50
%4304 = fneg float %4303
%4305 = fmul float %98, %4304
%4306 = tail call float @llvm.fmuladd.f32(float %4302, float %99, float %4305)
store float %4306, float* %106
%4307 = fneg float %4301
%4308 = fmul float %99, %4307
%4309 = tail call float @llvm.fmuladd.f32(float %4303, float %97, float %4308)
store float %4309, float* %110
%4310 = fneg float %4302
%4311 = fmul float %97, %4310
%4312 = tail call float @llvm.fmuladd.f32(float %4301, float %98, float %4311)
store float %4312, float* %114
%4313 = fsub float %11, %44
%4314 = fsub float %15, %47
%4315 = fsub float %20, %50
%4316 = fmul float %4314, %4309
%4317 = tail call float @llvm.fmuladd.f32(float %4313, float %4306, float %4316)
%4318 = tail call float @llvm.fmuladd.f32(float %4315, float %4312, float %4317)
%4319 = fcmp ule float %4318, 0.000000e+00
%4320 = zext i1 %4319 to i32
br label %6747
4321: ; preds = %4278
%4322 = fsub float %11, %55
%4323 = fsub float %15, %57
%4324 = fsub float %20, %59
%4325 = fsub float %44, %55
%4326 = fsub float %47, %57
%4327 = fsub float %50, %59
%4328 = fneg float %4324
%4329 = fmul float %4326, %4328
%4330 = tail call float @llvm.fmuladd.f32(float %4323, float %4327, float %4329)
%4331 = fneg float %4322
%4332 = fmul float %4327, %4331
%4333 = tail call float @llvm.fmuladd.f32(float %4324, float %4325, float %4332)
%4334 = fneg float %4323
%4335 = fmul float %4325, %4334
%4336 = tail call float @llvm.fmuladd.f32(float %4322, float %4326, float %4335)
%4337 = fsub float %24, %55
%4338 = fsub float %27, %57
%4339 = fsub float %30, %59
%4340 = fmul float %4338, %4333
%4341 = tail call float @llvm.fmuladd.f32(float %4337, float %4330, float %4340)
%4342 = tail call float @llvm.fmuladd.f32(float %4339, float %4336, float %4341)
%4343 = fcmp ogt float %4342, 0.000000e+00
br i1 %4343, label %6747, label %4344
4344: ; preds = %4321
%4345 = fsub float %11, %44
%4346 = fsub float %15, %47
%4347 = fsub float %20, %50
%4348 = fneg float %4347
%4349 = fmul float %101, %4348
%4350 = tail call float @llvm.fmuladd.f32(float %4346, float %102, float %4349)
store float %4350, float* %106
%4351 = fneg float %4345
%4352 = fmul float %102, %4351
%4353 = tail call float @llvm.fmuladd.f32(float %4347, float %100, float %4352)
store float %4353, float* %110
%4354 = fneg float %4346
%4355 = fmul float %100, %4354
%4356 = tail call float @llvm.fmuladd.f32(float %4345, float %101, float %4355)
store float %4356, float* %114
%4357 = fsub float %12, %44
%4358 = fsub float %17, %47
%4359 = fsub float %22, %50
%4360 = fmul float %4358, %4353
%4361 = tail call float @llvm.fmuladd.f32(float %4357, float %4350, float %4360)
%4362 = tail call float @llvm.fmuladd.f32(float %4359, float %4356, float %4361)
%4363 = fcmp ule float %4362, 0.000000e+00
%4364 = zext i1 %4363 to i32
br label %6747
4365: ; preds = %4277
%4366 = fcmp ogt float %120, 0.000000e+00
%4367 = fcmp ogt float %145, 0.000000e+00
br i1 %4366, label %4368, label %4454
4368: ; preds = %4365
br i1 %4367, label %4369, label %4410
4369: ; preds = %4368
%4370 = fsub float %44, %60
%4371 = fsub float %47, %67
%4372 = fsub float %50, %74
%4373 = extractelement <2 x float> %132, i64 0
%4374 = fneg float %4373
%4375 = fmul float %4371, %4374
%4376 = extractelement <2 x float> %128, i64 0
%4377 = tail call float @llvm.fmuladd.f32(float %4376, float %4372, float %4375)
%4378 = extractelement <2 x float> %124, i64 0
%4379 = fneg float %4378
%4380 = fmul float %4372, %4379
%4381 = tail call float @llvm.fmuladd.f32(float %4373, float %4370, float %4380)
%4382 = fneg float %4376
%4383 = fmul float %4370, %4382
%4384 = tail call float @llvm.fmuladd.f32(float %4378, float %4371, float %4383)
%4385 = fmul float %116, %4381
%4386 = tail call float @llvm.fmuladd.f32(float %115, float %4377, float %4385)
%4387 = tail call float @llvm.fmuladd.f32(float %117, float %4384, float %4386)
%4388 = fcmp ogt float %4387, 0.000000e+00
br i1 %4388, label %6747, label %4389
4389: ; preds = %4369
%4390 = fsub float %11, %44
%4391 = fsub float %15, %47
%4392 = fsub float %20, %50
%4393 = fneg float %4392
%4394 = fmul float %98, %4393
%4395 = tail call float @llvm.fmuladd.f32(float %4391, float %99, float %4394)
store float %4395, float* %106
%4396 = fneg float %4390
%4397 = fmul float %99, %4396
%4398 = tail call float @llvm.fmuladd.f32(float %4392, float %97, float %4397)
store float %4398, float* %110
%4399 = fneg float %4391
%4400 = fmul float %97, %4399
%4401 = tail call float @llvm.fmuladd.f32(float %4390, float %98, float %4400)
store float %4401, float* %114
%4402 = fsub float %12, %44
%4403 = fsub float %17, %47
%4404 = fsub float %22, %50
%4405 = fmul float %4403, %4398
%4406 = tail call float @llvm.fmuladd.f32(float %4402, float %4395, float %4405)
%4407 = tail call float @llvm.fmuladd.f32(float %4404, float %4401, float %4406)
%4408 = fcmp ule float %4407, 0.000000e+00
%4409 = zext i1 %4408 to i32
br label %6747
4410: ; preds = %4368
%4411 = fsub float %24, %55
%4412 = fsub float %27, %57
%4413 = fsub float %30, %59
%4414 = fsub float %44, %55
%4415 = fsub float %47, %57
%4416 = fsub float %50, %59
%4417 = fneg float %4413
%4418 = fmul float %4415, %4417
%4419 = tail call float @llvm.fmuladd.f32(float %4412, float %4416, float %4418)
%4420 = fneg float %4411
%4421 = fmul float %4416, %4420
%4422 = tail call float @llvm.fmuladd.f32(float %4413, float %4414, float %4421)
%4423 = fneg float %4412
%4424 = fmul float %4414, %4423
%4425 = tail call float @llvm.fmuladd.f32(float %4411, float %4415, float %4424)
%4426 = fsub float %12, %55
%4427 = fsub float %17, %57
%4428 = fsub float %22, %59
%4429 = fmul float %4427, %4422
%4430 = tail call float @llvm.fmuladd.f32(float %4426, float %4419, float %4429)
%4431 = tail call float @llvm.fmuladd.f32(float %4428, float %4425, float %4430)
%4432 = fcmp ogt float %4431, 0.000000e+00
br i1 %4432, label %6747, label %4433
4433: ; preds = %4410
%4434 = fsub float %24, %44
%4435 = fsub float %27, %47
%4436 = fsub float %30, %50
%4437 = fneg float %4436
%4438 = fmul float %101, %4437
%4439 = tail call float @llvm.fmuladd.f32(float %4435, float %102, float %4438)
store float %4439, float* %106
%4440 = fneg float %4434
%4441 = fmul float %102, %4440
%4442 = tail call float @llvm.fmuladd.f32(float %4436, float %100, float %4441)
store float %4442, float* %110
%4443 = fneg float %4435
%4444 = fmul float %100, %4443
%4445 = tail call float @llvm.fmuladd.f32(float %4434, float %101, float %4444)
store float %4445, float* %114
%4446 = fsub float %11, %44
%4447 = fsub float %15, %47
%4448 = fsub float %20, %50
%4449 = fmul float %4447, %4442
%4450 = tail call float @llvm.fmuladd.f32(float %4446, float %4439, float %4449)
%4451 = tail call float @llvm.fmuladd.f32(float %4448, float %4445, float %4450)
%4452 = fcmp ule float %4451, 0.000000e+00
%4453 = zext i1 %4452 to i32
br label %6747
4454: ; preds = %4365
br i1 %4367, label %4455, label %4499
4455: ; preds = %4454
%4456 = fsub float %12, %55
%4457 = fsub float %17, %57
%4458 = fsub float %22, %59
%4459 = fsub float %44, %55
%4460 = fsub float %47, %57
%4461 = fsub float %50, %59
%4462 = fneg float %4458
%4463 = fmul float %4460, %4462
%4464 = tail call float @llvm.fmuladd.f32(float %4457, float %4461, float %4463)
%4465 = fneg float %4456
%4466 = fmul float %4461, %4465
%4467 = tail call float @llvm.fmuladd.f32(float %4458, float %4459, float %4466)
%4468 = fneg float %4457
%4469 = fmul float %4459, %4468
%4470 = tail call float @llvm.fmuladd.f32(float %4456, float %4460, float %4469)
%4471 = fsub float %11, %55
%4472 = fsub float %15, %57
%4473 = fsub float %20, %59
%4474 = fmul float %4472, %4467
%4475 = tail call float @llvm.fmuladd.f32(float %4471, float %4464, float %4474)
%4476 = tail call float @llvm.fmuladd.f32(float %4473, float %4470, float %4475)
%4477 = fcmp ogt float %4476, 0.000000e+00
br i1 %4477, label %6747, label %4478
4478: ; preds = %4455
%4479 = fsub float %12, %44
%4480 = fsub float %17, %47
%4481 = fsub float %22, %50
%4482 = fneg float %4481
%4483 = fmul float %101, %4482
%4484 = tail call float @llvm.fmuladd.f32(float %4480, float %102, float %4483)
store float %4484, float* %106
%4485 = fneg float %4479
%4486 = fmul float %102, %4485
%4487 = tail call float @llvm.fmuladd.f32(float %4481, float %100, float %4486)
store float %4487, float* %110
%4488 = fneg float %4480
%4489 = fmul float %100, %4488
%4490 = tail call float @llvm.fmuladd.f32(float %4479, float %101, float %4489)
store float %4490, float* %114
%4491 = fsub float %24, %44
%4492 = fsub float %27, %47
%4493 = fsub float %30, %50
%4494 = fmul float %4492, %4487
%4495 = tail call float @llvm.fmuladd.f32(float %4491, float %4484, float %4494)
%4496 = tail call float @llvm.fmuladd.f32(float %4493, float %4490, float %4495)
%4497 = fcmp ule float %4496, 0.000000e+00
%4498 = zext i1 %4497 to i32
br label %6747
4499: ; preds = %4454
%4500 = fcmp olt float %145, 0.000000e+00
br i1 %4500, label %4501, label %4545
4501: ; preds = %4499
%4502 = fsub float %44, %60
%4503 = fsub float %47, %67
%4504 = fsub float %50, %74
%4505 = extractelement <2 x float> %132, i64 1
%4506 = fneg float %4505
%4507 = fmul float %4503, %4506
%4508 = extractelement <2 x float> %128, i64 1
%4509 = tail call float @llvm.fmuladd.f32(float %4508, float %4504, float %4507)
%4510 = extractelement <2 x float> %124, i64 1
%4511 = fneg float %4510
%4512 = fmul float %4504, %4511
%4513 = tail call float @llvm.fmuladd.f32(float %4505, float %4502, float %4512)
%4514 = fneg float %4508
%4515 = fmul float %4502, %4514
%4516 = tail call float @llvm.fmuladd.f32(float %4510, float %4503, float %4515)
%4517 = extractelement <2 x float> %128, i64 0
%4518 = fmul float %4517, %4513
%4519 = extractelement <2 x float> %124, i64 0
%4520 = tail call float @llvm.fmuladd.f32(float %4519, float %4509, float %4518)
%4521 = extractelement <2 x float> %132, i64 0
%4522 = tail call float @llvm.fmuladd.f32(float %4521, float %4516, float %4520)
%4523 = fcmp ogt float %4522, 0.000000e+00
br i1 %4523, label %6747, label %4524
4524: ; preds = %4501
%4525 = fsub float %12, %44
%4526 = fsub float %17, %47
%4527 = fsub float %22, %50
%4528 = fneg float %4527
%4529 = fmul float %98, %4528
%4530 = tail call float @llvm.fmuladd.f32(float %4526, float %99, float %4529)
store float %4530, float* %106
%4531 = fneg float %4525
%4532 = fmul float %99, %4531
%4533 = tail call float @llvm.fmuladd.f32(float %4527, float %97, float %4532)
store float %4533, float* %110
%4534 = fneg float %4526
%4535 = fmul float %97, %4534
%4536 = tail call float @llvm.fmuladd.f32(float %4525, float %98, float %4535)
store float %4536, float* %114
%4537 = fsub float %24, %44
%4538 = fsub float %27, %47
%4539 = fsub float %30, %50
%4540 = fmul float %4538, %4533
%4541 = tail call float @llvm.fmuladd.f32(float %4537, float %4530, float %4540)
%4542 = tail call float @llvm.fmuladd.f32(float %4539, float %4536, float %4541)
%4543 = fcmp ule float %4542, 0.000000e+00
%4544 = zext i1 %4543 to i32
br label %6747
4545: ; preds = %4499
%4546 = call i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...) bitcast (i32 (...)* @coplanar_tri_tri3d to i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...)*)(float* %0, float* %1, float* %2, float* %3, float* %4, float* %5, float* %106, float* %35)
br label %6747
4547: ; preds = %3447
%4548 = fcmp ogt <2 x float> %88, zeroinitializer
%4549 = extractelement <2 x i1> %4548, i64 1
br i1 %4549, label %4550, label %5649
4550: ; preds = %4547
%4551 = fcmp ogt float %142, 0.000000e+00
%4552 = extractelement <2 x i1> %4548, i64 0
br i1 %4552, label %4553, label %5092
4553: ; preds = %4550
br i1 %4551, label %4554, label %4684
4554: ; preds = %4553
%4555 = fcmp ogt float %145, 0.000000e+00
br i1 %4555, label %4556, label %4597
4556: ; preds = %4554
%4557 = fsub float %44, %60
%4558 = fsub float %47, %67
%4559 = fsub float %50, %74
%4560 = fneg float %117
%4561 = fmul float %4558, %4560
%4562 = tail call float @llvm.fmuladd.f32(float %116, float %4559, float %4561)
%4563 = fneg float %115
%4564 = fmul float %4559, %4563
%4565 = tail call float @llvm.fmuladd.f32(float %117, float %4557, float %4564)
%4566 = fneg float %116
%4567 = fmul float %4557, %4566
%4568 = tail call float @llvm.fmuladd.f32(float %115, float %4558, float %4567)
%4569 = extractelement <2 x float> %128, i64 0
%4570 = fmul float %4569, %4565
%4571 = extractelement <2 x float> %124, i64 0
%4572 = tail call float @llvm.fmuladd.f32(float %4571, float %4562, float %4570)
%4573 = extractelement <2 x float> %132, i64 0
%4574 = tail call float @llvm.fmuladd.f32(float %4573, float %4568, float %4572)
%4575 = fcmp ogt float %4574, 0.000000e+00
br i1 %4575, label %6747, label %4576
4576: ; preds = %4556
%4577 = fsub float %24, %44
%4578 = fsub float %27, %47
%4579 = fsub float %30, %50
%4580 = fneg float %4579
%4581 = fmul float %98, %4580
%4582 = tail call float @llvm.fmuladd.f32(float %4578, float %99, float %4581)
store float %4582, float* %106
%4583 = fneg float %4577
%4584 = fmul float %99, %4583
%4585 = tail call float @llvm.fmuladd.f32(float %4579, float %97, float %4584)
store float %4585, float* %110
%4586 = fneg float %4578
%4587 = fmul float %97, %4586
%4588 = tail call float @llvm.fmuladd.f32(float %4577, float %98, float %4587)
store float %4588, float* %114
%4589 = fsub float %12, %44
%4590 = fsub float %17, %47
%4591 = fsub float %22, %50
%4592 = fmul float %4590, %4585
%4593 = tail call float @llvm.fmuladd.f32(float %4589, float %4582, float %4592)
%4594 = tail call float @llvm.fmuladd.f32(float %4591, float %4588, float %4593)
%4595 = fcmp ule float %4594, 0.000000e+00
%4596 = zext i1 %4595 to i32
br label %6747
4597: ; preds = %4554
%4598 = fcmp ogt float %120, 0.000000e+00
br i1 %4598, label %4599, label %4640
4599: ; preds = %4597
%4600 = fsub float %44, %60
%4601 = fsub float %47, %67
%4602 = fsub float %50, %74
%4603 = extractelement <2 x float> %132, i64 1
%4604 = fneg float %4603
%4605 = fmul float %4601, %4604
%4606 = extractelement <2 x float> %128, i64 1
%4607 = tail call float @llvm.fmuladd.f32(float %4606, float %4602, float %4605)
%4608 = extractelement <2 x float> %124, i64 1
%4609 = fneg float %4608
%4610 = fmul float %4602, %4609
%4611 = tail call float @llvm.fmuladd.f32(float %4603, float %4600, float %4610)
%4612 = fneg float %4606
%4613 = fmul float %4600, %4612
%4614 = tail call float @llvm.fmuladd.f32(float %4608, float %4601, float %4613)
%4615 = fmul float %116, %4611
%4616 = tail call float @llvm.fmuladd.f32(float %115, float %4607, float %4615)
%4617 = tail call float @llvm.fmuladd.f32(float %117, float %4614, float %4616)
%4618 = fcmp ogt float %4617, 0.000000e+00
br i1 %4618, label %6747, label %4619
4619: ; preds = %4599
%4620 = fsub float %12, %44
%4621 = fsub float %17, %47
%4622 = fsub float %22, %50
%4623 = fneg float %4622
%4624 = fmul float %98, %4623
%4625 = tail call float @llvm.fmuladd.f32(float %4621, float %99, float %4624)
store float %4625, float* %106
%4626 = fneg float %4620
%4627 = fmul float %99, %4626
%4628 = tail call float @llvm.fmuladd.f32(float %4622, float %97, float %4627)
store float %4628, float* %110
%4629 = fneg float %4621
%4630 = fmul float %97, %4629
%4631 = tail call float @llvm.fmuladd.f32(float %4620, float %98, float %4630)
store float %4631, float* %114
%4632 = fsub float %11, %44
%4633 = fsub float %15, %47
%4634 = fsub float %20, %50
%4635 = fmul float %4633, %4628
%4636 = tail call float @llvm.fmuladd.f32(float %4632, float %4625, float %4635)
%4637 = tail call float @llvm.fmuladd.f32(float %4634, float %4631, float %4636)
%4638 = fcmp ule float %4637, 0.000000e+00
%4639 = zext i1 %4638 to i32
br label %6747
4640: ; preds = %4597
%4641 = fsub float %11, %55
%4642 = fsub float %15, %57
%4643 = fsub float %20, %59
%4644 = fsub float %44, %55
%4645 = fsub float %47, %57
%4646 = fsub float %50, %59
%4647 = fneg float %4643
%4648 = fmul float %4645, %4647
%4649 = tail call float @llvm.fmuladd.f32(float %4642, float %4646, float %4648)
%4650 = fneg float %4641
%4651 = fmul float %4646, %4650
%4652 = tail call float @llvm.fmuladd.f32(float %4643, float %4644, float %4651)
%4653 = fneg float %4642
%4654 = fmul float %4644, %4653
%4655 = tail call float @llvm.fmuladd.f32(float %4641, float %4645, float %4654)
%4656 = fsub float %12, %55
%4657 = fsub float %17, %57
%4658 = fsub float %22, %59
%4659 = fmul float %4657, %4652
%4660 = tail call float @llvm.fmuladd.f32(float %4656, float %4649, float %4659)
%4661 = tail call float @llvm.fmuladd.f32(float %4658, float %4655, float %4660)
%4662 = fcmp ogt float %4661, 0.000000e+00
br i1 %4662, label %6747, label %4663
4663: ; preds = %4640
%4664 = fsub float %11, %44
%4665 = fsub float %15, %47
%4666 = fsub float %20, %50
%4667 = fneg float %4666
%4668 = fmul float %101, %4667
%4669 = tail call float @llvm.fmuladd.f32(float %4665, float %102, float %4668)
store float %4669, float* %106
%4670 = fneg float %4664
%4671 = fmul float %102, %4670
%4672 = tail call float @llvm.fmuladd.f32(float %4666, float %100, float %4671)
store float %4672, float* %110
%4673 = fneg float %4665
%4674 = fmul float %100, %4673
%4675 = tail call float @llvm.fmuladd.f32(float %4664, float %101, float %4674)
store float %4675, float* %114
%4676 = fsub float %24, %44
%4677 = fsub float %27, %47
%4678 = fsub float %30, %50
%4679 = fmul float %4677, %4672
%4680 = tail call float @llvm.fmuladd.f32(float %4676, float %4669, float %4679)
%4681 = tail call float @llvm.fmuladd.f32(float %4678, float %4675, float %4680)
%4682 = fcmp ule float %4681, 0.000000e+00
%4683 = zext i1 %4682 to i32
br label %6747
4684: ; preds = %4553
%4685 = fcmp olt float %142, 0.000000e+00
%4686 = fcmp olt float %145, 0.000000e+00
br i1 %4685, label %4687, label %4822
4687: ; preds = %4684
br i1 %4686, label %4688, label %4732
4688: ; preds = %4687
%4689 = fsub float %24, %55
%4690 = fsub float %27, %57
%4691 = fsub float %30, %59
%4692 = fsub float %44, %55
%4693 = fsub float %47, %57
%4694 = fsub float %50, %59
%4695 = fneg float %4691
%4696 = fmul float %4693, %4695
%4697 = tail call float @llvm.fmuladd.f32(float %4690, float %4694, float %4696)
%4698 = fneg float %4689
%4699 = fmul float %4694, %4698
%4700 = tail call float @llvm.fmuladd.f32(float %4691, float %4692, float %4699)
%4701 = fneg float %4690
%4702 = fmul float %4692, %4701
%4703 = tail call float @llvm.fmuladd.f32(float %4689, float %4693, float %4702)
%4704 = fsub float %11, %55
%4705 = fsub float %15, %57
%4706 = fsub float %20, %59
%4707 = fmul float %4705, %4700
%4708 = tail call float @llvm.fmuladd.f32(float %4704, float %4697, float %4707)
%4709 = tail call float @llvm.fmuladd.f32(float %4706, float %4703, float %4708)
%4710 = fcmp ogt float %4709, 0.000000e+00
br i1 %4710, label %6747, label %4711
4711: ; preds = %4688
%4712 = fsub float %24, %44
%4713 = fsub float %27, %47
%4714 = fsub float %30, %50
%4715 = fneg float %4714
%4716 = fmul float %101, %4715
%4717 = tail call float @llvm.fmuladd.f32(float %4713, float %102, float %4716)
store float %4717, float* %106
%4718 = fneg float %4712
%4719 = fmul float %102, %4718
%4720 = tail call float @llvm.fmuladd.f32(float %4714, float %100, float %4719)
store float %4720, float* %110
%4721 = fneg float %4713
%4722 = fmul float %100, %4721
%4723 = tail call float @llvm.fmuladd.f32(float %4712, float %101, float %4722)
store float %4723, float* %114
%4724 = fsub float %12, %44
%4725 = fsub float %17, %47
%4726 = fsub float %22, %50
%4727 = fmul float %4725, %4720
%4728 = tail call float @llvm.fmuladd.f32(float %4724, float %4717, float %4727)
%4729 = tail call float @llvm.fmuladd.f32(float %4726, float %4723, float %4728)
%4730 = fcmp ule float %4729, 0.000000e+00
%4731 = zext i1 %4730 to i32
br label %6747
4732: ; preds = %4687
%4733 = fcmp olt float %120, 0.000000e+00
br i1 %4733, label %4734, label %4778
4734: ; preds = %4732
%4735 = fsub float %12, %55
%4736 = fsub float %17, %57
%4737 = fsub float %22, %59
%4738 = fsub float %44, %55
%4739 = fsub float %47, %57
%4740 = fsub float %50, %59
%4741 = fneg float %4737
%4742 = fmul float %4739, %4741
%4743 = tail call float @llvm.fmuladd.f32(float %4736, float %4740, float %4742)
%4744 = fneg float %4735
%4745 = fmul float %4740, %4744
%4746 = tail call float @llvm.fmuladd.f32(float %4737, float %4738, float %4745)
%4747 = fneg float %4736
%4748 = fmul float %4738, %4747
%4749 = tail call float @llvm.fmuladd.f32(float %4735, float %4739, float %4748)
%4750 = fsub float %24, %55
%4751 = fsub float %27, %57
%4752 = fsub float %30, %59
%4753 = fmul float %4751, %4746
%4754 = tail call float @llvm.fmuladd.f32(float %4750, float %4743, float %4753)
%4755 = tail call float @llvm.fmuladd.f32(float %4752, float %4749, float %4754)
%4756 = fcmp ogt float %4755, 0.000000e+00
br i1 %4756, label %6747, label %4757
4757: ; preds = %4734
%4758 = fsub float %12, %44
%4759 = fsub float %17, %47
%4760 = fsub float %22, %50
%4761 = fneg float %4760
%4762 = fmul float %101, %4761
%4763 = tail call float @llvm.fmuladd.f32(float %4759, float %102, float %4762)
store float %4763, float* %106
%4764 = fneg float %4758
%4765 = fmul float %102, %4764
%4766 = tail call float @llvm.fmuladd.f32(float %4760, float %100, float %4765)
store float %4766, float* %110
%4767 = fneg float %4759
%4768 = fmul float %100, %4767
%4769 = tail call float @llvm.fmuladd.f32(float %4758, float %101, float %4768)
store float %4769, float* %114
%4770 = fsub float %11, %44
%4771 = fsub float %15, %47
%4772 = fsub float %20, %50
%4773 = fmul float %4771, %4766
%4774 = tail call float @llvm.fmuladd.f32(float %4770, float %4763, float %4773)
%4775 = tail call float @llvm.fmuladd.f32(float %4772, float %4769, float %4774)
%4776 = fcmp ule float %4775, 0.000000e+00
%4777 = zext i1 %4776 to i32
br label %6747
4778: ; preds = %4732
%4779 = fsub float %44, %60
%4780 = fsub float %47, %67
%4781 = fsub float %50, %74
%4782 = extractelement <2 x float> %132, i64 0
%4783 = fneg float %4782
%4784 = fmul float %4780, %4783
%4785 = extractelement <2 x float> %128, i64 0
%4786 = tail call float @llvm.fmuladd.f32(float %4785, float %4781, float %4784)
%4787 = extractelement <2 x float> %124, i64 0
%4788 = fneg float %4787
%4789 = fmul float %4781, %4788
%4790 = tail call float @llvm.fmuladd.f32(float %4782, float %4779, float %4789)
%4791 = fneg float %4785
%4792 = fmul float %4779, %4791
%4793 = tail call float @llvm.fmuladd.f32(float %4787, float %4780, float %4792)
%4794 = extractelement <2 x float> %128, i64 1
%4795 = fmul float %4794, %4790
%4796 = extractelement <2 x float> %124, i64 1
%4797 = tail call float @llvm.fmuladd.f32(float %4796, float %4786, float %4795)
%4798 = extractelement <2 x float> %132, i64 1
%4799 = tail call float @llvm.fmuladd.f32(float %4798, float %4793, float %4797)
%4800 = fcmp ogt float %4799, 0.000000e+00
br i1 %4800, label %6747, label %4801
4801: ; preds = %4778
%4802 = fsub float %11, %44
%4803 = fsub float %15, %47
%4804 = fsub float %20, %50
%4805 = fneg float %4804
%4806 = fmul float %98, %4805
%4807 = tail call float @llvm.fmuladd.f32(float %4803, float %99, float %4806)
store float %4807, float* %106
%4808 = fneg float %4802
%4809 = fmul float %99, %4808
%4810 = tail call float @llvm.fmuladd.f32(float %4804, float %97, float %4809)
store float %4810, float* %110
%4811 = fneg float %4803
%4812 = fmul float %97, %4811
%4813 = tail call float @llvm.fmuladd.f32(float %4802, float %98, float %4812)
store float %4813, float* %114
%4814 = fsub float %24, %44
%4815 = fsub float %27, %47
%4816 = fsub float %30, %50
%4817 = fmul float %4815, %4810
%4818 = tail call float @llvm.fmuladd.f32(float %4814, float %4807, float %4817)
%4819 = tail call float @llvm.fmuladd.f32(float %4816, float %4813, float %4818)
%4820 = fcmp ule float %4819, 0.000000e+00
%4821 = zext i1 %4820 to i32
br label %6747
4822: ; preds = %4684
br i1 %4686, label %4823, label %4910
4823: ; preds = %4822
%4824 = fcmp ult float %120, 0.000000e+00
br i1 %4824, label %4866, label %4825
4825: ; preds = %4823
%4826 = fsub float %44, %60
%4827 = fsub float %47, %67
%4828 = fsub float %50, %74
%4829 = extractelement <2 x float> %132, i64 1
%4830 = fneg float %4829
%4831 = fmul float %4827, %4830
%4832 = extractelement <2 x float> %128, i64 1
%4833 = tail call float @llvm.fmuladd.f32(float %4832, float %4828, float %4831)
%4834 = extractelement <2 x float> %124, i64 1
%4835 = fneg float %4834
%4836 = fmul float %4828, %4835
%4837 = tail call float @llvm.fmuladd.f32(float %4829, float %4826, float %4836)
%4838 = fneg float %4832
%4839 = fmul float %4826, %4838
%4840 = tail call float @llvm.fmuladd.f32(float %4834, float %4827, float %4839)
%4841 = fmul float %116, %4837
%4842 = tail call float @llvm.fmuladd.f32(float %115, float %4833, float %4841)
%4843 = tail call float @llvm.fmuladd.f32(float %117, float %4840, float %4842)
%4844 = fcmp ogt float %4843, 0.000000e+00
br i1 %4844, label %6747, label %4845
4845: ; preds = %4825
%4846 = fsub float %12, %44
%4847 = fsub float %17, %47
%4848 = fsub float %22, %50
%4849 = fneg float %4848
%4850 = fmul float %98, %4849
%4851 = tail call float @llvm.fmuladd.f32(float %4847, float %99, float %4850)
store float %4851, float* %106
%4852 = fneg float %4846
%4853 = fmul float %99, %4852
%4854 = tail call float @llvm.fmuladd.f32(float %4848, float %97, float %4853)
store float %4854, float* %110
%4855 = fneg float %4847
%4856 = fmul float %97, %4855
%4857 = tail call float @llvm.fmuladd.f32(float %4846, float %98, float %4856)
store float %4857, float* %114
%4858 = fsub float %11, %44
%4859 = fsub float %15, %47
%4860 = fsub float %20, %50
%4861 = fmul float %4859, %4854
%4862 = tail call float @llvm.fmuladd.f32(float %4858, float %4851, float %4861)
%4863 = tail call float @llvm.fmuladd.f32(float %4860, float %4857, float %4862)
%4864 = fcmp ule float %4863, 0.000000e+00
%4865 = zext i1 %4864 to i32
br label %6747
4866: ; preds = %4823
%4867 = fsub float %11, %55
%4868 = fsub float %15, %57
%4869 = fsub float %20, %59
%4870 = fsub float %44, %55
%4871 = fsub float %47, %57
%4872 = fsub float %50, %59
%4873 = fneg float %4869
%4874 = fmul float %4871, %4873
%4875 = tail call float @llvm.fmuladd.f32(float %4868, float %4872, float %4874)
%4876 = fneg float %4867
%4877 = fmul float %4872, %4876
%4878 = tail call float @llvm.fmuladd.f32(float %4869, float %4870, float %4877)
%4879 = fneg float %4868
%4880 = fmul float %4870, %4879
%4881 = tail call float @llvm.fmuladd.f32(float %4867, float %4871, float %4880)
%4882 = fsub float %12, %55
%4883 = fsub float %17, %57
%4884 = fsub float %22, %59
%4885 = fmul float %4883, %4878
%4886 = tail call float @llvm.fmuladd.f32(float %4882, float %4875, float %4885)
%4887 = tail call float @llvm.fmuladd.f32(float %4884, float %4881, float %4886)
%4888 = fcmp ogt float %4887, 0.000000e+00
br i1 %4888, label %6747, label %4889
4889: ; preds = %4866
%4890 = fsub float %11, %44
%4891 = fsub float %15, %47
%4892 = fsub float %20, %50
%4893 = fneg float %4892
%4894 = fmul float %101, %4893
%4895 = tail call float @llvm.fmuladd.f32(float %4891, float %102, float %4894)
store float %4895, float* %106
%4896 = fneg float %4890
%4897 = fmul float %102, %4896
%4898 = tail call float @llvm.fmuladd.f32(float %4892, float %100, float %4897)
store float %4898, float* %110
%4899 = fneg float %4891
%4900 = fmul float %100, %4899
%4901 = tail call float @llvm.fmuladd.f32(float %4890, float %101, float %4900)
store float %4901, float* %114
%4902 = fsub float %24, %44
%4903 = fsub float %27, %47
%4904 = fsub float %30, %50
%4905 = fmul float %4903, %4898
%4906 = tail call float @llvm.fmuladd.f32(float %4902, float %4895, float %4905)
%4907 = tail call float @llvm.fmuladd.f32(float %4904, float %4901, float %4906)
%4908 = fcmp ule float %4907, 0.000000e+00
%4909 = zext i1 %4908 to i32
br label %6747
4910: ; preds = %4822
%4911 = fcmp ogt float %145, 0.000000e+00
%4912 = fcmp ogt float %120, 0.000000e+00
br i1 %4911, label %4913, label %5002
4913: ; preds = %4910
br i1 %4912, label %4914, label %4958
4914: ; preds = %4913
%4915 = fsub float %44, %60
%4916 = fsub float %47, %67
%4917 = fsub float %50, %74
%4918 = extractelement <2 x float> %132, i64 0
%4919 = fneg float %4918
%4920 = fmul float %4916, %4919
%4921 = extractelement <2 x float> %128, i64 0
%4922 = tail call float @llvm.fmuladd.f32(float %4921, float %4917, float %4920)
%4923 = extractelement <2 x float> %124, i64 0
%4924 = fneg float %4923
%4925 = fmul float %4917, %4924
%4926 = tail call float @llvm.fmuladd.f32(float %4918, float %4915, float %4925)
%4927 = fneg float %4921
%4928 = fmul float %4915, %4927
%4929 = tail call float @llvm.fmuladd.f32(float %4923, float %4916, float %4928)
%4930 = extractelement <2 x float> %128, i64 1
%4931 = fmul float %4930, %4926
%4932 = extractelement <2 x float> %124, i64 1
%4933 = tail call float @llvm.fmuladd.f32(float %4932, float %4922, float %4931)
%4934 = extractelement <2 x float> %132, i64 1
%4935 = tail call float @llvm.fmuladd.f32(float %4934, float %4929, float %4933)
%4936 = fcmp ogt float %4935, 0.000000e+00
br i1 %4936, label %6747, label %4937
4937: ; preds = %4914
%4938 = fsub float %11, %44
%4939 = fsub float %15, %47
%4940 = fsub float %20, %50
%4941 = fneg float %4940
%4942 = fmul float %98, %4941
%4943 = tail call float @llvm.fmuladd.f32(float %4939, float %99, float %4942)
store float %4943, float* %106
%4944 = fneg float %4938
%4945 = fmul float %99, %4944
%4946 = tail call float @llvm.fmuladd.f32(float %4940, float %97, float %4945)
store float %4946, float* %110
%4947 = fneg float %4939
%4948 = fmul float %97, %4947
%4949 = tail call float @llvm.fmuladd.f32(float %4938, float %98, float %4948)
store float %4949, float* %114
%4950 = fsub float %24, %44
%4951 = fsub float %27, %47
%4952 = fsub float %30, %50
%4953 = fmul float %4951, %4946
%4954 = tail call float @llvm.fmuladd.f32(float %4950, float %4943, float %4953)
%4955 = tail call float @llvm.fmuladd.f32(float %4952, float %4949, float %4954)
%4956 = fcmp ule float %4955, 0.000000e+00
%4957 = zext i1 %4956 to i32
br label %6747
4958: ; preds = %4913
%4959 = fsub float %12, %55
%4960 = fsub float %17, %57
%4961 = fsub float %22, %59
%4962 = fsub float %44, %55
%4963 = fsub float %47, %57
%4964 = fsub float %50, %59
%4965 = fneg float %4961
%4966 = fmul float %4963, %4965
%4967 = tail call float @llvm.fmuladd.f32(float %4960, float %4964, float %4966)
%4968 = fneg float %4959
%4969 = fmul float %4964, %4968
%4970 = tail call float @llvm.fmuladd.f32(float %4961, float %4962, float %4969)
%4971 = fneg float %4960
%4972 = fmul float %4962, %4971
%4973 = tail call float @llvm.fmuladd.f32(float %4959, float %4963, float %4972)
%4974 = fsub float %24, %55
%4975 = fsub float %27, %57
%4976 = fsub float %30, %59
%4977 = fmul float %4975, %4970
%4978 = tail call float @llvm.fmuladd.f32(float %4974, float %4967, float %4977)
%4979 = tail call float @llvm.fmuladd.f32(float %4976, float %4973, float %4978)
%4980 = fcmp ogt float %4979, 0.000000e+00
br i1 %4980, label %6747, label %4981
4981: ; preds = %4958
%4982 = fsub float %12, %44
%4983 = fsub float %17, %47
%4984 = fsub float %22, %50
%4985 = fneg float %4984
%4986 = fmul float %101, %4985
%4987 = tail call float @llvm.fmuladd.f32(float %4983, float %102, float %4986)
store float %4987, float* %106
%4988 = fneg float %4982
%4989 = fmul float %102, %4988
%4990 = tail call float @llvm.fmuladd.f32(float %4984, float %100, float %4989)
store float %4990, float* %110
%4991 = fneg float %4983
%4992 = fmul float %100, %4991
%4993 = tail call float @llvm.fmuladd.f32(float %4982, float %101, float %4992)
store float %4993, float* %114
%4994 = fsub float %11, %44
%4995 = fsub float %15, %47
%4996 = fsub float %20, %50
%4997 = fmul float %4995, %4990
%4998 = tail call float @llvm.fmuladd.f32(float %4994, float %4987, float %4997)
%4999 = tail call float @llvm.fmuladd.f32(float %4996, float %4993, float %4998)
%5000 = fcmp ule float %4999, 0.000000e+00
%5001 = zext i1 %5000 to i32
br label %6747
5002: ; preds = %4910
br i1 %4912, label %5003, label %5047
5003: ; preds = %5002
%5004 = fsub float %24, %55
%5005 = fsub float %27, %57
%5006 = fsub float %30, %59
%5007 = fsub float %44, %55
%5008 = fsub float %47, %57
%5009 = fsub float %50, %59
%5010 = fneg float %5006
%5011 = fmul float %5008, %5010
%5012 = tail call float @llvm.fmuladd.f32(float %5005, float %5009, float %5011)
%5013 = fneg float %5004
%5014 = fmul float %5009, %5013
%5015 = tail call float @llvm.fmuladd.f32(float %5006, float %5007, float %5014)
%5016 = fneg float %5005
%5017 = fmul float %5007, %5016
%5018 = tail call float @llvm.fmuladd.f32(float %5004, float %5008, float %5017)
%5019 = fsub float %11, %55
%5020 = fsub float %15, %57
%5021 = fsub float %20, %59
%5022 = fmul float %5020, %5015
%5023 = tail call float @llvm.fmuladd.f32(float %5019, float %5012, float %5022)
%5024 = tail call float @llvm.fmuladd.f32(float %5021, float %5018, float %5023)
%5025 = fcmp ogt float %5024, 0.000000e+00
br i1 %5025, label %6747, label %5026
5026: ; preds = %5003
%5027 = fsub float %24, %44
%5028 = fsub float %27, %47
%5029 = fsub float %30, %50
%5030 = fneg float %5029
%5031 = fmul float %101, %5030
%5032 = tail call float @llvm.fmuladd.f32(float %5028, float %102, float %5031)
store float %5032, float* %106
%5033 = fneg float %5027
%5034 = fmul float %102, %5033
%5035 = tail call float @llvm.fmuladd.f32(float %5029, float %100, float %5034)
store float %5035, float* %110
%5036 = fneg float %5028
%5037 = fmul float %100, %5036
%5038 = tail call float @llvm.fmuladd.f32(float %5027, float %101, float %5037)
store float %5038, float* %114
%5039 = fsub float %12, %44
%5040 = fsub float %17, %47
%5041 = fsub float %22, %50
%5042 = fmul float %5040, %5035
%5043 = tail call float @llvm.fmuladd.f32(float %5039, float %5032, float %5042)
%5044 = tail call float @llvm.fmuladd.f32(float %5041, float %5038, float %5043)
%5045 = fcmp ule float %5044, 0.000000e+00
%5046 = zext i1 %5045 to i32
br label %6747
5047: ; preds = %5002
%5048 = fcmp olt float %120, 0.000000e+00
br i1 %5048, label %5049, label %5090
5049: ; preds = %5047
%5050 = fsub float %44, %60
%5051 = fsub float %47, %67
%5052 = fsub float %50, %74
%5053 = fneg float %117
%5054 = fmul float %5051, %5053
%5055 = tail call float @llvm.fmuladd.f32(float %116, float %5052, float %5054)
%5056 = fneg float %115
%5057 = fmul float %5052, %5056
%5058 = tail call float @llvm.fmuladd.f32(float %117, float %5050, float %5057)
%5059 = fneg float %116
%5060 = fmul float %5050, %5059
%5061 = tail call float @llvm.fmuladd.f32(float %115, float %5051, float %5060)
%5062 = extractelement <2 x float> %128, i64 0
%5063 = fmul float %5062, %5058
%5064 = extractelement <2 x float> %124, i64 0
%5065 = tail call float @llvm.fmuladd.f32(float %5064, float %5055, float %5063)
%5066 = extractelement <2 x float> %132, i64 0
%5067 = tail call float @llvm.fmuladd.f32(float %5066, float %5061, float %5065)
%5068 = fcmp ogt float %5067, 0.000000e+00
br i1 %5068, label %6747, label %5069
5069: ; preds = %5049
%5070 = fsub float %24, %44
%5071 = fsub float %27, %47
%5072 = fsub float %30, %50
%5073 = fneg float %5072
%5074 = fmul float %98, %5073
%5075 = tail call float @llvm.fmuladd.f32(float %5071, float %99, float %5074)
store float %5075, float* %106
%5076 = fneg float %5070
%5077 = fmul float %99, %5076
%5078 = tail call float @llvm.fmuladd.f32(float %5072, float %97, float %5077)
store float %5078, float* %110
%5079 = fneg float %5071
%5080 = fmul float %97, %5079
%5081 = tail call float @llvm.fmuladd.f32(float %5070, float %98, float %5080)
store float %5081, float* %114
%5082 = fsub float %12, %44
%5083 = fsub float %17, %47
%5084 = fsub float %22, %50
%5085 = fmul float %5083, %5078
%5086 = tail call float @llvm.fmuladd.f32(float %5082, float %5075, float %5085)
%5087 = tail call float @llvm.fmuladd.f32(float %5084, float %5081, float %5086)
%5088 = fcmp ule float %5087, 0.000000e+00
%5089 = zext i1 %5088 to i32
br label %6747
5090: ; preds = %5047
%5091 = call i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...) bitcast (i32 (...)* @coplanar_tri_tri3d to i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...)*)(float* %0, float* %1, float* %2, float* %3, float* %5, float* %4, float* %106, float* %35)
br label %6747
5092: ; preds = %4550
br i1 %4551, label %5093, label %5229
5093: ; preds = %5092
%5094 = fcmp ogt float %120, 0.000000e+00
br i1 %5094, label %5095, label %5139
5095: ; preds = %5093
%5096 = fsub float %12, %44
%5097 = fsub float %17, %47
%5098 = fsub float %22, %50
%5099 = fneg float %5098
%5100 = fmul float %98, %5099
%5101 = tail call float @llvm.fmuladd.f32(float %5097, float %99, float %5100)
%5102 = fneg float %5096
%5103 = fmul float %99, %5102
%5104 = tail call float @llvm.fmuladd.f32(float %5098, float %97, float %5103)
%5105 = fneg float %5097
%5106 = fmul float %97, %5105
%5107 = tail call float @llvm.fmuladd.f32(float %5096, float %98, float %5106)
%5108 = fsub float %11, %44
%5109 = fsub float %15, %47
%5110 = fsub float %20, %50
%5111 = fmul float %5109, %5104
%5112 = tail call float @llvm.fmuladd.f32(float %5108, float %5101, float %5111)
%5113 = tail call float @llvm.fmuladd.f32(float %5110, float %5107, float %5112)
%5114 = fcmp ogt float %5113, 0.000000e+00
br i1 %5114, label %6747, label %5115
5115: ; preds = %5095
%5116 = fsub float %12, %55
%5117 = fsub float %17, %57
%5118 = fsub float %22, %59
%5119 = fsub float %60, %55
%5120 = fsub float %67, %57
%5121 = fsub float %74, %59
%5122 = fneg float %5118
%5123 = fmul float %5120, %5122
%5124 = tail call float @llvm.fmuladd.f32(float %5117, float %5121, float %5123)
store float %5124, float* %106
%5125 = fneg float %5116
%5126 = fmul float %5121, %5125
%5127 = tail call float @llvm.fmuladd.f32(float %5118, float %5119, float %5126)
store float %5127, float* %110
%5128 = fneg float %5117
%5129 = fmul float %5119, %5128
%5130 = tail call float @llvm.fmuladd.f32(float %5116, float %5120, float %5129)
store float %5130, float* %114
%5131 = fsub float %24, %55
%5132 = fsub float %27, %57
%5133 = fsub float %30, %59
%5134 = fmul float %5132, %5127
%5135 = tail call float @llvm.fmuladd.f32(float %5131, float %5124, float %5134)
%5136 = tail call float @llvm.fmuladd.f32(float %5133, float %5130, float %5135)
%5137 = fcmp ule float %5136, 0.000000e+00
%5138 = zext i1 %5137 to i32
br label %6747
5139: ; preds = %5093
%5140 = fcmp ogt float %145, 0.000000e+00
br i1 %5140, label %5141, label %5185
5141: ; preds = %5139
%5142 = fsub float %24, %44
%5143 = fsub float %27, %47
%5144 = fsub float %30, %50
%5145 = fneg float %5144
%5146 = fmul float %98, %5145
%5147 = tail call float @llvm.fmuladd.f32(float %5143, float %99, float %5146)
%5148 = fneg float %5142
%5149 = fmul float %99, %5148
%5150 = tail call float @llvm.fmuladd.f32(float %5144, float %97, float %5149)
%5151 = fneg float %5143
%5152 = fmul float %97, %5151
%5153 = tail call float @llvm.fmuladd.f32(float %5142, float %98, float %5152)
%5154 = fsub float %12, %44
%5155 = fsub float %17, %47
%5156 = fsub float %22, %50
%5157 = fmul float %5155, %5150
%5158 = tail call float @llvm.fmuladd.f32(float %5154, float %5147, float %5157)
%5159 = tail call float @llvm.fmuladd.f32(float %5156, float %5153, float %5158)
%5160 = fcmp ogt float %5159, 0.000000e+00
br i1 %5160, label %6747, label %5161
5161: ; preds = %5141
%5162 = fsub float %24, %55
%5163 = fsub float %27, %57
%5164 = fsub float %30, %59
%5165 = fsub float %60, %55
%5166 = fsub float %67, %57
%5167 = fsub float %74, %59
%5168 = fneg float %5164
%5169 = fmul float %5166, %5168
%5170 = tail call float @llvm.fmuladd.f32(float %5163, float %5167, float %5169)
store float %5170, float* %106
%5171 = fneg float %5162
%5172 = fmul float %5167, %5171
%5173 = tail call float @llvm.fmuladd.f32(float %5164, float %5165, float %5172)
store float %5173, float* %110
%5174 = fneg float %5163
%5175 = fmul float %5165, %5174
%5176 = tail call float @llvm.fmuladd.f32(float %5162, float %5166, float %5175)
store float %5176, float* %114
%5177 = fsub float %11, %55
%5178 = fsub float %15, %57
%5179 = fsub float %20, %59
%5180 = fmul float %5178, %5173
%5181 = tail call float @llvm.fmuladd.f32(float %5177, float %5170, float %5180)
%5182 = tail call float @llvm.fmuladd.f32(float %5179, float %5176, float %5181)
%5183 = fcmp ule float %5182, 0.000000e+00
%5184 = zext i1 %5183 to i32
br label %6747
5185: ; preds = %5139
%5186 = fsub float %55, %60
%5187 = fsub float %57, %67
%5188 = fsub float %59, %74
%5189 = extractelement <2 x float> %132, i64 0
%5190 = fneg float %5189
%5191 = fmul float %5187, %5190
%5192 = extractelement <2 x float> %128, i64 0
%5193 = tail call float @llvm.fmuladd.f32(float %5192, float %5188, float %5191)
%5194 = extractelement <2 x float> %124, i64 0
%5195 = fneg float %5194
%5196 = fmul float %5188, %5195
%5197 = tail call float @llvm.fmuladd.f32(float %5189, float %5186, float %5196)
%5198 = fneg float %5192
%5199 = fmul float %5186, %5198
%5200 = tail call float @llvm.fmuladd.f32(float %5194, float %5187, float %5199)
%5201 = fmul float %116, %5197
%5202 = tail call float @llvm.fmuladd.f32(float %115, float %5193, float %5201)
%5203 = tail call float @llvm.fmuladd.f32(float %117, float %5200, float %5202)
%5204 = fcmp ogt float %5203, 0.000000e+00
br i1 %5204, label %6747, label %5205
5205: ; preds = %5185
%5206 = fsub float %11, %55
%5207 = fsub float %15, %57
%5208 = fsub float %20, %59
%5209 = fsub float %44, %55
%5210 = fsub float %47, %57
%5211 = fsub float %50, %59
%5212 = fneg float %5208
%5213 = fmul float %5210, %5212
%5214 = tail call float @llvm.fmuladd.f32(float %5207, float %5211, float %5213)
store float %5214, float* %106
%5215 = fneg float %5206
%5216 = fmul float %5211, %5215
%5217 = tail call float @llvm.fmuladd.f32(float %5208, float %5209, float %5216)
store float %5217, float* %110
%5218 = fneg float %5207
%5219 = fmul float %5209, %5218
%5220 = tail call float @llvm.fmuladd.f32(float %5206, float %5210, float %5219)
store float %5220, float* %114
%5221 = fsub float %12, %55
%5222 = fsub float %17, %57
%5223 = fsub float %22, %59
%5224 = fmul float %5222, %5217
%5225 = tail call float @llvm.fmuladd.f32(float %5221, float %5214, float %5224)
%5226 = tail call float @llvm.fmuladd.f32(float %5223, float %5220, float %5225)
%5227 = fcmp ule float %5226, 0.000000e+00
%5228 = zext i1 %5227 to i32
br label %6747
5229: ; preds = %5092
%5230 = fcmp olt float %142, 0.000000e+00
%5231 = fcmp olt float %120, 0.000000e+00
br i1 %5230, label %5232, label %5370
5232: ; preds = %5229
br i1 %5231, label %5233, label %5280
5233: ; preds = %5232
%5234 = fsub float %55, %60
%5235 = fsub float %57, %67
%5236 = fsub float %59, %74
%5237 = extractelement <2 x float> %132, i64 1
%5238 = fneg float %5237
%5239 = fmul float %5235, %5238
%5240 = extractelement <2 x float> %128, i64 1
%5241 = tail call float @llvm.fmuladd.f32(float %5240, float %5236, float %5239)
%5242 = extractelement <2 x float> %124, i64 1
%5243 = fneg float %5242
%5244 = fmul float %5236, %5243
%5245 = tail call float @llvm.fmuladd.f32(float %5237, float %5234, float %5244)
%5246 = fneg float %5240
%5247 = fmul float %5234, %5246
%5248 = tail call float @llvm.fmuladd.f32(float %5242, float %5235, float %5247)
%5249 = extractelement <2 x float> %128, i64 0
%5250 = fmul float %5249, %5245
%5251 = extractelement <2 x float> %124, i64 0
%5252 = tail call float @llvm.fmuladd.f32(float %5251, float %5241, float %5250)
%5253 = extractelement <2 x float> %132, i64 0
%5254 = tail call float @llvm.fmuladd.f32(float %5253, float %5248, float %5252)
%5255 = fcmp ogt float %5254, 0.000000e+00
br i1 %5255, label %6747, label %5256
5256: ; preds = %5233
%5257 = fsub float %12, %55
%5258 = fsub float %17, %57
%5259 = fsub float %22, %59
%5260 = fsub float %44, %55
%5261 = fsub float %47, %57
%5262 = fsub float %50, %59
%5263 = fneg float %5259
%5264 = fmul float %5261, %5263
%5265 = tail call float @llvm.fmuladd.f32(float %5258, float %5262, float %5264)
store float %5265, float* %106
%5266 = fneg float %5257
%5267 = fmul float %5262, %5266
%5268 = tail call float @llvm.fmuladd.f32(float %5259, float %5260, float %5267)
store float %5268, float* %110
%5269 = fneg float %5258
%5270 = fmul float %5260, %5269
%5271 = tail call float @llvm.fmuladd.f32(float %5257, float %5261, float %5270)
store float %5271, float* %114
%5272 = fsub float %24, %55
%5273 = fsub float %27, %57
%5274 = fsub float %30, %59
%5275 = fmul float %5273, %5268
%5276 = tail call float @llvm.fmuladd.f32(float %5272, float %5265, float %5275)
%5277 = tail call float @llvm.fmuladd.f32(float %5274, float %5271, float %5276)
%5278 = fcmp ule float %5277, 0.000000e+00
%5279 = zext i1 %5278 to i32
br label %6747
5280: ; preds = %5232
%5281 = fcmp olt float %145, 0.000000e+00
br i1 %5281, label %5282, label %5326
5282: ; preds = %5280
%5283 = fsub float %55, %60
%5284 = fsub float %57, %67
%5285 = fsub float %59, %74
%5286 = fneg float %117
%5287 = fmul float %5284, %5286
%5288 = tail call float @llvm.fmuladd.f32(float %116, float %5285, float %5287)
%5289 = fneg float %115
%5290 = fmul float %5285, %5289
%5291 = tail call float @llvm.fmuladd.f32(float %117, float %5283, float %5290)
%5292 = fneg float %116
%5293 = fmul float %5283, %5292
%5294 = tail call float @llvm.fmuladd.f32(float %115, float %5284, float %5293)
%5295 = extractelement <2 x float> %128, i64 1
%5296 = fmul float %5295, %5291
%5297 = extractelement <2 x float> %124, i64 1
%5298 = tail call float @llvm.fmuladd.f32(float %5297, float %5288, float %5296)
%5299 = extractelement <2 x float> %132, i64 1
%5300 = tail call float @llvm.fmuladd.f32(float %5299, float %5294, float %5298)
%5301 = fcmp ogt float %5300, 0.000000e+00
br i1 %5301, label %6747, label %5302
5302: ; preds = %5282
%5303 = fsub float %24, %55
%5304 = fsub float %27, %57
%5305 = fsub float %30, %59
%5306 = fsub float %44, %55
%5307 = fsub float %47, %57
%5308 = fsub float %50, %59
%5309 = fneg float %5305
%5310 = fmul float %5307, %5309
%5311 = tail call float @llvm.fmuladd.f32(float %5304, float %5308, float %5310)
store float %5311, float* %106
%5312 = fneg float %5303
%5313 = fmul float %5308, %5312
%5314 = tail call float @llvm.fmuladd.f32(float %5305, float %5306, float %5313)
store float %5314, float* %110
%5315 = fneg float %5304
%5316 = fmul float %5306, %5315
%5317 = tail call float @llvm.fmuladd.f32(float %5303, float %5307, float %5316)
store float %5317, float* %114
%5318 = fsub float %11, %55
%5319 = fsub float %15, %57
%5320 = fsub float %20, %59
%5321 = fmul float %5319, %5314
%5322 = tail call float @llvm.fmuladd.f32(float %5318, float %5311, float %5321)
%5323 = tail call float @llvm.fmuladd.f32(float %5320, float %5317, float %5322)
%5324 = fcmp ule float %5323, 0.000000e+00
%5325 = zext i1 %5324 to i32
br label %6747
5326: ; preds = %5280
%5327 = fsub float %11, %44
%5328 = fsub float %15, %47
%5329 = fsub float %20, %50
%5330 = fneg float %5329
%5331 = fmul float %98, %5330
%5332 = tail call float @llvm.fmuladd.f32(float %5328, float %99, float %5331)
%5333 = fneg float %5327
%5334 = fmul float %99, %5333
%5335 = tail call float @llvm.fmuladd.f32(float %5329, float %97, float %5334)
%5336 = fneg float %5328
%5337 = fmul float %97, %5336
%5338 = tail call float @llvm.fmuladd.f32(float %5327, float %98, float %5337)
%5339 = fsub float %24, %44
%5340 = fsub float %27, %47
%5341 = fsub float %30, %50
%5342 = fmul float %5340, %5335
%5343 = tail call float @llvm.fmuladd.f32(float %5339, float %5332, float %5342)
%5344 = tail call float @llvm.fmuladd.f32(float %5341, float %5338, float %5343)
%5345 = fcmp ogt float %5344, 0.000000e+00
br i1 %5345, label %6747, label %5346
5346: ; preds = %5326
%5347 = fsub float %11, %55
%5348 = fsub float %15, %57
%5349 = fsub float %20, %59
%5350 = fsub float %60, %55
%5351 = fsub float %67, %57
%5352 = fsub float %74, %59
%5353 = fneg float %5349
%5354 = fmul float %5351, %5353
%5355 = tail call float @llvm.fmuladd.f32(float %5348, float %5352, float %5354)
store float %5355, float* %106
%5356 = fneg float %5347
%5357 = fmul float %5352, %5356
%5358 = tail call float @llvm.fmuladd.f32(float %5349, float %5350, float %5357)
store float %5358, float* %110
%5359 = fneg float %5348
%5360 = fmul float %5350, %5359
%5361 = tail call float @llvm.fmuladd.f32(float %5347, float %5351, float %5360)
store float %5361, float* %114
%5362 = fsub float %12, %55
%5363 = fsub float %17, %57
%5364 = fsub float %22, %59
%5365 = fmul float %5363, %5358
%5366 = tail call float @llvm.fmuladd.f32(float %5362, float %5355, float %5365)
%5367 = tail call float @llvm.fmuladd.f32(float %5364, float %5361, float %5366)
%5368 = fcmp ule float %5367, 0.000000e+00
%5369 = zext i1 %5368 to i32
br label %6747
5370: ; preds = %5229
br i1 %5231, label %5371, label %5461
5371: ; preds = %5370
%5372 = fcmp ult float %145, 0.000000e+00
br i1 %5372, label %5417, label %5373
5373: ; preds = %5371
%5374 = fsub float %24, %44
%5375 = fsub float %27, %47
%5376 = fsub float %30, %50
%5377 = fneg float %5376
%5378 = fmul float %98, %5377
%5379 = tail call float @llvm.fmuladd.f32(float %5375, float %99, float %5378)
%5380 = fneg float %5374
%5381 = fmul float %99, %5380
%5382 = tail call float @llvm.fmuladd.f32(float %5376, float %97, float %5381)
%5383 = fneg float %5375
%5384 = fmul float %97, %5383
%5385 = tail call float @llvm.fmuladd.f32(float %5374, float %98, float %5384)
%5386 = fsub float %12, %44
%5387 = fsub float %17, %47
%5388 = fsub float %22, %50
%5389 = fmul float %5387, %5382
%5390 = tail call float @llvm.fmuladd.f32(float %5386, float %5379, float %5389)
%5391 = tail call float @llvm.fmuladd.f32(float %5388, float %5385, float %5390)
%5392 = fcmp ogt float %5391, 0.000000e+00
br i1 %5392, label %6747, label %5393
5393: ; preds = %5373
%5394 = fsub float %24, %55
%5395 = fsub float %27, %57
%5396 = fsub float %30, %59
%5397 = fsub float %60, %55
%5398 = fsub float %67, %57
%5399 = fsub float %74, %59
%5400 = fneg float %5396
%5401 = fmul float %5398, %5400
%5402 = tail call float @llvm.fmuladd.f32(float %5395, float %5399, float %5401)
store float %5402, float* %106
%5403 = fneg float %5394
%5404 = fmul float %5399, %5403
%5405 = tail call float @llvm.fmuladd.f32(float %5396, float %5397, float %5404)
store float %5405, float* %110
%5406 = fneg float %5395
%5407 = fmul float %5397, %5406
%5408 = tail call float @llvm.fmuladd.f32(float %5394, float %5398, float %5407)
store float %5408, float* %114
%5409 = fsub float %11, %55
%5410 = fsub float %15, %57
%5411 = fsub float %20, %59
%5412 = fmul float %5410, %5405
%5413 = tail call float @llvm.fmuladd.f32(float %5409, float %5402, float %5412)
%5414 = tail call float @llvm.fmuladd.f32(float %5411, float %5408, float %5413)
%5415 = fcmp ule float %5414, 0.000000e+00
%5416 = zext i1 %5415 to i32
br label %6747
5417: ; preds = %5371
%5418 = fsub float %55, %60
%5419 = fsub float %57, %67
%5420 = fsub float %59, %74
%5421 = extractelement <2 x float> %132, i64 0
%5422 = fneg float %5421
%5423 = fmul float %5419, %5422
%5424 = extractelement <2 x float> %128, i64 0
%5425 = tail call float @llvm.fmuladd.f32(float %5424, float %5420, float %5423)
%5426 = extractelement <2 x float> %124, i64 0
%5427 = fneg float %5426
%5428 = fmul float %5420, %5427
%5429 = tail call float @llvm.fmuladd.f32(float %5421, float %5418, float %5428)
%5430 = fneg float %5424
%5431 = fmul float %5418, %5430
%5432 = tail call float @llvm.fmuladd.f32(float %5426, float %5419, float %5431)
%5433 = fmul float %116, %5429
%5434 = tail call float @llvm.fmuladd.f32(float %115, float %5425, float %5433)
%5435 = tail call float @llvm.fmuladd.f32(float %117, float %5432, float %5434)
%5436 = fcmp ogt float %5435, 0.000000e+00
br i1 %5436, label %6747, label %5437
5437: ; preds = %5417
%5438 = fsub float %11, %55
%5439 = fsub float %15, %57
%5440 = fsub float %20, %59
%5441 = fsub float %44, %55
%5442 = fsub float %47, %57
%5443 = fsub float %50, %59
%5444 = fneg float %5440
%5445 = fmul float %5442, %5444
%5446 = tail call float @llvm.fmuladd.f32(float %5439, float %5443, float %5445)
store float %5446, float* %106
%5447 = fneg float %5438
%5448 = fmul float %5443, %5447
%5449 = tail call float @llvm.fmuladd.f32(float %5440, float %5441, float %5448)
store float %5449, float* %110
%5450 = fneg float %5439
%5451 = fmul float %5441, %5450
%5452 = tail call float @llvm.fmuladd.f32(float %5438, float %5442, float %5451)
store float %5452, float* %114
%5453 = fsub float %12, %55
%5454 = fsub float %17, %57
%5455 = fsub float %22, %59
%5456 = fmul float %5454, %5449
%5457 = tail call float @llvm.fmuladd.f32(float %5453, float %5446, float %5456)
%5458 = tail call float @llvm.fmuladd.f32(float %5455, float %5452, float %5457)
%5459 = fcmp ule float %5458, 0.000000e+00
%5460 = zext i1 %5459 to i32
br label %6747
5461: ; preds = %5370
%5462 = fcmp ogt float %120, 0.000000e+00
%5463 = fcmp ogt float %145, 0.000000e+00
br i1 %5462, label %5464, label %5553
5464: ; preds = %5461
br i1 %5463, label %5465, label %5509
5465: ; preds = %5464
%5466 = fsub float %11, %44
%5467 = fsub float %15, %47
%5468 = fsub float %20, %50
%5469 = fneg float %5468
%5470 = fmul float %98, %5469
%5471 = tail call float @llvm.fmuladd.f32(float %5467, float %99, float %5470)
%5472 = fneg float %5466
%5473 = fmul float %99, %5472
%5474 = tail call float @llvm.fmuladd.f32(float %5468, float %97, float %5473)
%5475 = fneg float %5467
%5476 = fmul float %97, %5475
%5477 = tail call float @llvm.fmuladd.f32(float %5466, float %98, float %5476)
%5478 = fsub float %24, %44
%5479 = fsub float %27, %47
%5480 = fsub float %30, %50
%5481 = fmul float %5479, %5474
%5482 = tail call float @llvm.fmuladd.f32(float %5478, float %5471, float %5481)
%5483 = tail call float @llvm.fmuladd.f32(float %5480, float %5477, float %5482)
%5484 = fcmp ogt float %5483, 0.000000e+00
br i1 %5484, label %6747, label %5485
5485: ; preds = %5465
%5486 = fsub float %11, %55
%5487 = fsub float %15, %57
%5488 = fsub float %20, %59
%5489 = fsub float %60, %55
%5490 = fsub float %67, %57
%5491 = fsub float %74, %59
%5492 = fneg float %5488
%5493 = fmul float %5490, %5492
%5494 = tail call float @llvm.fmuladd.f32(float %5487, float %5491, float %5493)
store float %5494, float* %106
%5495 = fneg float %5486
%5496 = fmul float %5491, %5495
%5497 = tail call float @llvm.fmuladd.f32(float %5488, float %5489, float %5496)
store float %5497, float* %110
%5498 = fneg float %5487
%5499 = fmul float %5489, %5498
%5500 = tail call float @llvm.fmuladd.f32(float %5486, float %5490, float %5499)
store float %5500, float* %114
%5501 = fsub float %12, %55
%5502 = fsub float %17, %57
%5503 = fsub float %22, %59
%5504 = fmul float %5502, %5497
%5505 = tail call float @llvm.fmuladd.f32(float %5501, float %5494, float %5504)
%5506 = tail call float @llvm.fmuladd.f32(float %5503, float %5500, float %5505)
%5507 = fcmp ule float %5506, 0.000000e+00
%5508 = zext i1 %5507 to i32
br label %6747
5509: ; preds = %5464
%5510 = fsub float %55, %60
%5511 = fsub float %57, %67
%5512 = fsub float %59, %74
%5513 = fneg float %117
%5514 = fmul float %5511, %5513
%5515 = tail call float @llvm.fmuladd.f32(float %116, float %5512, float %5514)
%5516 = fneg float %115
%5517 = fmul float %5512, %5516
%5518 = tail call float @llvm.fmuladd.f32(float %117, float %5510, float %5517)
%5519 = fneg float %116
%5520 = fmul float %5510, %5519
%5521 = tail call float @llvm.fmuladd.f32(float %115, float %5511, float %5520)
%5522 = extractelement <2 x float> %128, i64 1
%5523 = fmul float %5522, %5518
%5524 = extractelement <2 x float> %124, i64 1
%5525 = tail call float @llvm.fmuladd.f32(float %5524, float %5515, float %5523)
%5526 = extractelement <2 x float> %132, i64 1
%5527 = tail call float @llvm.fmuladd.f32(float %5526, float %5521, float %5525)
%5528 = fcmp ogt float %5527, 0.000000e+00
br i1 %5528, label %6747, label %5529
5529: ; preds = %5509
%5530 = fsub float %24, %55
%5531 = fsub float %27, %57
%5532 = fsub float %30, %59
%5533 = fsub float %44, %55
%5534 = fsub float %47, %57
%5535 = fsub float %50, %59
%5536 = fneg float %5532
%5537 = fmul float %5534, %5536
%5538 = tail call float @llvm.fmuladd.f32(float %5531, float %5535, float %5537)
store float %5538, float* %106
%5539 = fneg float %5530
%5540 = fmul float %5535, %5539
%5541 = tail call float @llvm.fmuladd.f32(float %5532, float %5533, float %5540)
store float %5541, float* %110
%5542 = fneg float %5531
%5543 = fmul float %5533, %5542
%5544 = tail call float @llvm.fmuladd.f32(float %5530, float %5534, float %5543)
store float %5544, float* %114
%5545 = fsub float %11, %55
%5546 = fsub float %15, %57
%5547 = fsub float %20, %59
%5548 = fmul float %5546, %5541
%5549 = tail call float @llvm.fmuladd.f32(float %5545, float %5538, float %5548)
%5550 = tail call float @llvm.fmuladd.f32(float %5547, float %5544, float %5549)
%5551 = fcmp ule float %5550, 0.000000e+00
%5552 = zext i1 %5551 to i32
br label %6747
5553: ; preds = %5461
br i1 %5463, label %5554, label %5601
5554: ; preds = %5553
%5555 = fsub float %55, %60
%5556 = fsub float %57, %67
%5557 = fsub float %59, %74
%5558 = extractelement <2 x float> %132, i64 1
%5559 = fneg float %5558
%5560 = fmul float %5556, %5559
%5561 = extractelement <2 x float> %128, i64 1
%5562 = tail call float @llvm.fmuladd.f32(float %5561, float %5557, float %5560)
%5563 = extractelement <2 x float> %124, i64 1
%5564 = fneg float %5563
%5565 = fmul float %5557, %5564
%5566 = tail call float @llvm.fmuladd.f32(float %5558, float %5555, float %5565)
%5567 = fneg float %5561
%5568 = fmul float %5555, %5567
%5569 = tail call float @llvm.fmuladd.f32(float %5563, float %5556, float %5568)
%5570 = extractelement <2 x float> %128, i64 0
%5571 = fmul float %5570, %5566
%5572 = extractelement <2 x float> %124, i64 0
%5573 = tail call float @llvm.fmuladd.f32(float %5572, float %5562, float %5571)
%5574 = extractelement <2 x float> %132, i64 0
%5575 = tail call float @llvm.fmuladd.f32(float %5574, float %5569, float %5573)
%5576 = fcmp ogt float %5575, 0.000000e+00
br i1 %5576, label %6747, label %5577
5577: ; preds = %5554
%5578 = fsub float %12, %55
%5579 = fsub float %17, %57
%5580 = fsub float %22, %59
%5581 = fsub float %44, %55
%5582 = fsub float %47, %57
%5583 = fsub float %50, %59
%5584 = fneg float %5580
%5585 = fmul float %5582, %5584
%5586 = tail call float @llvm.fmuladd.f32(float %5579, float %5583, float %5585)
store float %5586, float* %106
%5587 = fneg float %5578
%5588 = fmul float %5583, %5587
%5589 = tail call float @llvm.fmuladd.f32(float %5580, float %5581, float %5588)
store float %5589, float* %110
%5590 = fneg float %5579
%5591 = fmul float %5581, %5590
%5592 = tail call float @llvm.fmuladd.f32(float %5578, float %5582, float %5591)
store float %5592, float* %114
%5593 = fsub float %24, %55
%5594 = fsub float %27, %57
%5595 = fsub float %30, %59
%5596 = fmul float %5594, %5589
%5597 = tail call float @llvm.fmuladd.f32(float %5593, float %5586, float %5596)
%5598 = tail call float @llvm.fmuladd.f32(float %5595, float %5592, float %5597)
%5599 = fcmp ule float %5598, 0.000000e+00
%5600 = zext i1 %5599 to i32
br label %6747
5601: ; preds = %5553
%5602 = fcmp olt float %145, 0.000000e+00
br i1 %5602, label %5603, label %5647
5603: ; preds = %5601
%5604 = fsub float %12, %44
%5605 = fsub float %17, %47
%5606 = fsub float %22, %50
%5607 = fneg float %5606
%5608 = fmul float %98, %5607
%5609 = tail call float @llvm.fmuladd.f32(float %5605, float %99, float %5608)
%5610 = fneg float %5604
%5611 = fmul float %99, %5610
%5612 = tail call float @llvm.fmuladd.f32(float %5606, float %97, float %5611)
%5613 = fneg float %5605
%5614 = fmul float %97, %5613
%5615 = tail call float @llvm.fmuladd.f32(float %5604, float %98, float %5614)
%5616 = fsub float %11, %44
%5617 = fsub float %15, %47
%5618 = fsub float %20, %50
%5619 = fmul float %5617, %5612
%5620 = tail call float @llvm.fmuladd.f32(float %5616, float %5609, float %5619)
%5621 = tail call float @llvm.fmuladd.f32(float %5618, float %5615, float %5620)
%5622 = fcmp ogt float %5621, 0.000000e+00
br i1 %5622, label %6747, label %5623
5623: ; preds = %5603
%5624 = fsub float %12, %55
%5625 = fsub float %17, %57
%5626 = fsub float %22, %59
%5627 = fsub float %60, %55
%5628 = fsub float %67, %57
%5629 = fsub float %74, %59
%5630 = fneg float %5626
%5631 = fmul float %5628, %5630
%5632 = tail call float @llvm.fmuladd.f32(float %5625, float %5629, float %5631)
store float %5632, float* %106
%5633 = fneg float %5624
%5634 = fmul float %5629, %5633
%5635 = tail call float @llvm.fmuladd.f32(float %5626, float %5627, float %5634)
store float %5635, float* %110
%5636 = fneg float %5625
%5637 = fmul float %5627, %5636
%5638 = tail call float @llvm.fmuladd.f32(float %5624, float %5628, float %5637)
store float %5638, float* %114
%5639 = fsub float %24, %55
%5640 = fsub float %27, %57
%5641 = fsub float %30, %59
%5642 = fmul float %5640, %5635
%5643 = tail call float @llvm.fmuladd.f32(float %5639, float %5632, float %5642)
%5644 = tail call float @llvm.fmuladd.f32(float %5641, float %5638, float %5643)
%5645 = fcmp ule float %5644, 0.000000e+00
%5646 = zext i1 %5645 to i32
br label %6747
5647: ; preds = %5601
%5648 = call i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...) bitcast (i32 (...)* @coplanar_tri_tri3d to i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...)*)(float* %1, float* %2, float* %0, float* %3, float* %4, float* %5, float* %106, float* %35)
br label %6747
5649: ; preds = %4547
%5650 = extractelement <2 x i1> %4548, i64 0
br i1 %5650, label %5651, label %6197
5651: ; preds = %5649
%5652 = fcmp ogt float %142, 0.000000e+00
br i1 %5652, label %5653, label %5789
5653: ; preds = %5651
%5654 = fcmp ogt float %120, 0.000000e+00
br i1 %5654, label %5655, label %5699
5655: ; preds = %5653
%5656 = fsub float %12, %55
%5657 = fsub float %17, %57
%5658 = fsub float %22, %59
%5659 = fsub float %60, %55
%5660 = fsub float %67, %57
%5661 = fsub float %74, %59
%5662 = fneg float %5658
%5663 = fmul float %5660, %5662
%5664 = tail call float @llvm.fmuladd.f32(float %5657, float %5661, float %5663)
%5665 = fneg float %5656
%5666 = fmul float %5661, %5665
%5667 = tail call float @llvm.fmuladd.f32(float %5658, float %5659, float %5666)
%5668 = fneg float %5657
%5669 = fmul float %5659, %5668
%5670 = tail call float @llvm.fmuladd.f32(float %5656, float %5660, float %5669)
%5671 = fsub float %11, %55
%5672 = fsub float %15, %57
%5673 = fsub float %20, %59
%5674 = fmul float %5672, %5667
%5675 = tail call float @llvm.fmuladd.f32(float %5671, float %5664, float %5674)
%5676 = tail call float @llvm.fmuladd.f32(float %5673, float %5670, float %5675)
%5677 = fcmp ogt float %5676, 0.000000e+00
br i1 %5677, label %6747, label %5678
5678: ; preds = %5655
%5679 = fsub float %44, %60
%5680 = fsub float %47, %67
%5681 = fsub float %50, %74
%5682 = extractelement <2 x float> %132, i64 1
%5683 = fneg float %5682
%5684 = fmul float %5680, %5683
%5685 = extractelement <2 x float> %128, i64 1
%5686 = tail call float @llvm.fmuladd.f32(float %5685, float %5681, float %5684)
store float %5686, float* %106
%5687 = extractelement <2 x float> %124, i64 1
%5688 = fneg float %5687
%5689 = fmul float %5681, %5688
%5690 = tail call float @llvm.fmuladd.f32(float %5682, float %5679, float %5689)
store float %5690, float* %110
%5691 = fneg float %5685
%5692 = fmul float %5679, %5691
%5693 = tail call float @llvm.fmuladd.f32(float %5687, float %5680, float %5692)
store float %5693, float* %114
%5694 = fmul float %116, %5690
%5695 = tail call float @llvm.fmuladd.f32(float %115, float %5686, float %5694)
%5696 = tail call float @llvm.fmuladd.f32(float %117, float %5693, float %5695)
%5697 = fcmp ule float %5696, 0.000000e+00
%5698 = zext i1 %5697 to i32
br label %6747
5699: ; preds = %5653
%5700 = fcmp ogt float %145, 0.000000e+00
br i1 %5700, label %5701, label %5745
5701: ; preds = %5699
%5702 = fsub float %24, %55
%5703 = fsub float %27, %57
%5704 = fsub float %30, %59
%5705 = fsub float %60, %55
%5706 = fsub float %67, %57
%5707 = fsub float %74, %59
%5708 = fneg float %5704
%5709 = fmul float %5706, %5708
%5710 = tail call float @llvm.fmuladd.f32(float %5703, float %5707, float %5709)
%5711 = fneg float %5702
%5712 = fmul float %5707, %5711
%5713 = tail call float @llvm.fmuladd.f32(float %5704, float %5705, float %5712)
%5714 = fneg float %5703
%5715 = fmul float %5705, %5714
%5716 = tail call float @llvm.fmuladd.f32(float %5702, float %5706, float %5715)
%5717 = fsub float %12, %55
%5718 = fsub float %17, %57
%5719 = fsub float %22, %59
%5720 = fmul float %5718, %5713
%5721 = tail call float @llvm.fmuladd.f32(float %5717, float %5710, float %5720)
%5722 = tail call float @llvm.fmuladd.f32(float %5719, float %5716, float %5721)
%5723 = fcmp ogt float %5722, 0.000000e+00
br i1 %5723, label %6747, label %5724
5724: ; preds = %5701
%5725 = fsub float %44, %60
%5726 = fsub float %47, %67
%5727 = fsub float %50, %74
%5728 = fneg float %117
%5729 = fmul float %5726, %5728
%5730 = tail call float @llvm.fmuladd.f32(float %116, float %5727, float %5729)
store float %5730, float* %106
%5731 = fneg float %115
%5732 = fmul float %5727, %5731
%5733 = tail call float @llvm.fmuladd.f32(float %117, float %5725, float %5732)
store float %5733, float* %110
%5734 = fneg float %116
%5735 = fmul float %5725, %5734
%5736 = tail call float @llvm.fmuladd.f32(float %115, float %5726, float %5735)
store float %5736, float* %114
%5737 = extractelement <2 x float> %128, i64 0
%5738 = fmul float %5737, %5733
%5739 = extractelement <2 x float> %124, i64 0
%5740 = tail call float @llvm.fmuladd.f32(float %5739, float %5730, float %5738)
%5741 = extractelement <2 x float> %132, i64 0
%5742 = tail call float @llvm.fmuladd.f32(float %5741, float %5736, float %5740)
%5743 = fcmp ule float %5742, 0.000000e+00
%5744 = zext i1 %5743 to i32
br label %6747
5745: ; preds = %5699
%5746 = fsub float %11, %44
%5747 = fsub float %15, %47
%5748 = fsub float %20, %50
%5749 = fneg float %5748
%5750 = fmul float %101, %5749
%5751 = tail call float @llvm.fmuladd.f32(float %5747, float %102, float %5750)
%5752 = fneg float %5746
%5753 = fmul float %102, %5752
%5754 = tail call float @llvm.fmuladd.f32(float %5748, float %100, float %5753)
%5755 = fneg float %5747
%5756 = fmul float %100, %5755
%5757 = tail call float @llvm.fmuladd.f32(float %5746, float %101, float %5756)
%5758 = fsub float %24, %44
%5759 = fsub float %27, %47
%5760 = fsub float %30, %50
%5761 = fmul float %5759, %5754
%5762 = tail call float @llvm.fmuladd.f32(float %5758, float %5751, float %5761)
%5763 = tail call float @llvm.fmuladd.f32(float %5760, float %5757, float %5762)
%5764 = fcmp ogt float %5763, 0.000000e+00
br i1 %5764, label %6747, label %5765
5765: ; preds = %5745
%5766 = fsub float %55, %60
%5767 = fsub float %57, %67
%5768 = fsub float %59, %74
%5769 = extractelement <2 x float> %132, i64 0
%5770 = fneg float %5769
%5771 = fmul float %5767, %5770
%5772 = extractelement <2 x float> %128, i64 0
%5773 = tail call float @llvm.fmuladd.f32(float %5772, float %5768, float %5771)
store float %5773, float* %106
%5774 = extractelement <2 x float> %124, i64 0
%5775 = fneg float %5774
%5776 = fmul float %5768, %5775
%5777 = tail call float @llvm.fmuladd.f32(float %5769, float %5766, float %5776)
store float %5777, float* %110
%5778 = fneg float %5772
%5779 = fmul float %5766, %5778
%5780 = tail call float @llvm.fmuladd.f32(float %5774, float %5767, float %5779)
store float %5780, float* %114
%5781 = extractelement <2 x float> %128, i64 1
%5782 = fmul float %5781, %5777
%5783 = extractelement <2 x float> %124, i64 1
%5784 = tail call float @llvm.fmuladd.f32(float %5783, float %5773, float %5782)
%5785 = extractelement <2 x float> %132, i64 1
%5786 = tail call float @llvm.fmuladd.f32(float %5785, float %5780, float %5784)
%5787 = fcmp ule float %5786, 0.000000e+00
%5788 = zext i1 %5787 to i32
br label %6747
5789: ; preds = %5651
%5790 = fcmp olt float %142, 0.000000e+00
%5791 = fcmp olt float %120, 0.000000e+00
br i1 %5790, label %5792, label %5924
5792: ; preds = %5789
br i1 %5791, label %5793, label %5834
5793: ; preds = %5792
%5794 = fsub float %12, %44
%5795 = fsub float %17, %47
%5796 = fsub float %22, %50
%5797 = fneg float %5796
%5798 = fmul float %101, %5797
%5799 = tail call float @llvm.fmuladd.f32(float %5795, float %102, float %5798)
%5800 = fneg float %5794
%5801 = fmul float %102, %5800
%5802 = tail call float @llvm.fmuladd.f32(float %5796, float %100, float %5801)
%5803 = fneg float %5795
%5804 = fmul float %100, %5803
%5805 = tail call float @llvm.fmuladd.f32(float %5794, float %101, float %5804)
%5806 = fsub float %11, %44
%5807 = fsub float %15, %47
%5808 = fsub float %20, %50
%5809 = fmul float %5807, %5802
%5810 = tail call float @llvm.fmuladd.f32(float %5806, float %5799, float %5809)
%5811 = tail call float @llvm.fmuladd.f32(float %5808, float %5805, float %5810)
%5812 = fcmp ogt float %5811, 0.000000e+00
br i1 %5812, label %6747, label %5813
5813: ; preds = %5793
%5814 = fsub float %55, %60
%5815 = fsub float %57, %67
%5816 = fsub float %59, %74
%5817 = extractelement <2 x float> %132, i64 1
%5818 = fneg float %5817
%5819 = fmul float %5815, %5818
%5820 = extractelement <2 x float> %128, i64 1
%5821 = tail call float @llvm.fmuladd.f32(float %5820, float %5816, float %5819)
store float %5821, float* %106
%5822 = extractelement <2 x float> %124, i64 1
%5823 = fneg float %5822
%5824 = fmul float %5816, %5823
%5825 = tail call float @llvm.fmuladd.f32(float %5817, float %5814, float %5824)
store float %5825, float* %110
%5826 = fneg float %5820
%5827 = fmul float %5814, %5826
%5828 = tail call float @llvm.fmuladd.f32(float %5822, float %5815, float %5827)
store float %5828, float* %114
%5829 = fmul float %116, %5825
%5830 = tail call float @llvm.fmuladd.f32(float %115, float %5821, float %5829)
%5831 = tail call float @llvm.fmuladd.f32(float %117, float %5828, float %5830)
%5832 = fcmp ule float %5831, 0.000000e+00
%5833 = zext i1 %5832 to i32
br label %6747
5834: ; preds = %5792
%5835 = fcmp olt float %145, 0.000000e+00
br i1 %5835, label %5836, label %5877
5836: ; preds = %5834
%5837 = fsub float %24, %44
%5838 = fsub float %27, %47
%5839 = fsub float %30, %50
%5840 = fneg float %5839
%5841 = fmul float %101, %5840
%5842 = tail call float @llvm.fmuladd.f32(float %5838, float %102, float %5841)
%5843 = fneg float %5837
%5844 = fmul float %102, %5843
%5845 = tail call float @llvm.fmuladd.f32(float %5839, float %100, float %5844)
%5846 = fneg float %5838
%5847 = fmul float %100, %5846
%5848 = tail call float @llvm.fmuladd.f32(float %5837, float %101, float %5847)
%5849 = fsub float %12, %44
%5850 = fsub float %17, %47
%5851 = fsub float %22, %50
%5852 = fmul float %5850, %5845
%5853 = tail call float @llvm.fmuladd.f32(float %5849, float %5842, float %5852)
%5854 = tail call float @llvm.fmuladd.f32(float %5851, float %5848, float %5853)
%5855 = fcmp ogt float %5854, 0.000000e+00
br i1 %5855, label %6747, label %5856
5856: ; preds = %5836
%5857 = fsub float %55, %60
%5858 = fsub float %57, %67
%5859 = fsub float %59, %74
%5860 = fneg float %117
%5861 = fmul float %5858, %5860
%5862 = tail call float @llvm.fmuladd.f32(float %116, float %5859, float %5861)
store float %5862, float* %106
%5863 = fneg float %115
%5864 = fmul float %5859, %5863
%5865 = tail call float @llvm.fmuladd.f32(float %117, float %5857, float %5864)
store float %5865, float* %110
%5866 = fneg float %116
%5867 = fmul float %5857, %5866
%5868 = tail call float @llvm.fmuladd.f32(float %115, float %5858, float %5867)
store float %5868, float* %114
%5869 = extractelement <2 x float> %128, i64 0
%5870 = fmul float %5869, %5865
%5871 = extractelement <2 x float> %124, i64 0
%5872 = tail call float @llvm.fmuladd.f32(float %5871, float %5862, float %5870)
%5873 = extractelement <2 x float> %132, i64 0
%5874 = tail call float @llvm.fmuladd.f32(float %5873, float %5868, float %5872)
%5875 = fcmp ule float %5874, 0.000000e+00
%5876 = zext i1 %5875 to i32
br label %6747
5877: ; preds = %5834
%5878 = fsub float %11, %55
%5879 = fsub float %15, %57
%5880 = fsub float %20, %59
%5881 = fsub float %60, %55
%5882 = fsub float %67, %57
%5883 = fsub float %74, %59
%5884 = fneg float %5880
%5885 = fmul float %5882, %5884
%5886 = tail call float @llvm.fmuladd.f32(float %5879, float %5883, float %5885)
%5887 = fneg float %5878
%5888 = fmul float %5883, %5887
%5889 = tail call float @llvm.fmuladd.f32(float %5880, float %5881, float %5888)
%5890 = fneg float %5879
%5891 = fmul float %5881, %5890
%5892 = tail call float @llvm.fmuladd.f32(float %5878, float %5882, float %5891)
%5893 = fsub float %24, %55
%5894 = fsub float %27, %57
%5895 = fsub float %30, %59
%5896 = fmul float %5894, %5889
%5897 = tail call float @llvm.fmuladd.f32(float %5893, float %5886, float %5896)
%5898 = tail call float @llvm.fmuladd.f32(float %5895, float %5892, float %5897)
%5899 = fcmp ogt float %5898, 0.000000e+00
br i1 %5899, label %6747, label %5900
5900: ; preds = %5877
%5901 = fsub float %44, %60
%5902 = fsub float %47, %67
%5903 = fsub float %50, %74
%5904 = extractelement <2 x float> %132, i64 0
%5905 = fneg float %5904
%5906 = fmul float %5902, %5905
%5907 = extractelement <2 x float> %128, i64 0
%5908 = tail call float @llvm.fmuladd.f32(float %5907, float %5903, float %5906)
store float %5908, float* %106
%5909 = extractelement <2 x float> %124, i64 0
%5910 = fneg float %5909
%5911 = fmul float %5903, %5910
%5912 = tail call float @llvm.fmuladd.f32(float %5904, float %5901, float %5911)
store float %5912, float* %110
%5913 = fneg float %5907
%5914 = fmul float %5901, %5913
%5915 = tail call float @llvm.fmuladd.f32(float %5909, float %5902, float %5914)
store float %5915, float* %114
%5916 = extractelement <2 x float> %128, i64 1
%5917 = fmul float %5916, %5912
%5918 = extractelement <2 x float> %124, i64 1
%5919 = tail call float @llvm.fmuladd.f32(float %5918, float %5908, float %5917)
%5920 = extractelement <2 x float> %132, i64 1
%5921 = tail call float @llvm.fmuladd.f32(float %5920, float %5915, float %5919)
%5922 = fcmp ule float %5921, 0.000000e+00
%5923 = zext i1 %5922 to i32
br label %6747
5924: ; preds = %5789
br i1 %5791, label %5925, label %6015
5925: ; preds = %5924
%5926 = fcmp ult float %145, 0.000000e+00
br i1 %5926, label %5971, label %5927
5927: ; preds = %5925
%5928 = fsub float %24, %55
%5929 = fsub float %27, %57
%5930 = fsub float %30, %59
%5931 = fsub float %60, %55
%5932 = fsub float %67, %57
%5933 = fsub float %74, %59
%5934 = fneg float %5930
%5935 = fmul float %5932, %5934
%5936 = tail call float @llvm.fmuladd.f32(float %5929, float %5933, float %5935)
%5937 = fneg float %5928
%5938 = fmul float %5933, %5937
%5939 = tail call float @llvm.fmuladd.f32(float %5930, float %5931, float %5938)
%5940 = fneg float %5929
%5941 = fmul float %5931, %5940
%5942 = tail call float @llvm.fmuladd.f32(float %5928, float %5932, float %5941)
%5943 = fsub float %12, %55
%5944 = fsub float %17, %57
%5945 = fsub float %22, %59
%5946 = fmul float %5944, %5939
%5947 = tail call float @llvm.fmuladd.f32(float %5943, float %5936, float %5946)
%5948 = tail call float @llvm.fmuladd.f32(float %5945, float %5942, float %5947)
%5949 = fcmp ogt float %5948, 0.000000e+00
br i1 %5949, label %6747, label %5950
5950: ; preds = %5927
%5951 = fsub float %44, %60
%5952 = fsub float %47, %67
%5953 = fsub float %50, %74
%5954 = fneg float %117
%5955 = fmul float %5952, %5954
%5956 = tail call float @llvm.fmuladd.f32(float %116, float %5953, float %5955)
store float %5956, float* %106
%5957 = fneg float %115
%5958 = fmul float %5953, %5957
%5959 = tail call float @llvm.fmuladd.f32(float %117, float %5951, float %5958)
store float %5959, float* %110
%5960 = fneg float %116
%5961 = fmul float %5951, %5960
%5962 = tail call float @llvm.fmuladd.f32(float %115, float %5952, float %5961)
store float %5962, float* %114
%5963 = extractelement <2 x float> %128, i64 0
%5964 = fmul float %5963, %5959
%5965 = extractelement <2 x float> %124, i64 0
%5966 = tail call float @llvm.fmuladd.f32(float %5965, float %5956, float %5964)
%5967 = extractelement <2 x float> %132, i64 0
%5968 = tail call float @llvm.fmuladd.f32(float %5967, float %5962, float %5966)
%5969 = fcmp ule float %5968, 0.000000e+00
%5970 = zext i1 %5969 to i32
br label %6747
5971: ; preds = %5925
%5972 = fsub float %11, %44
%5973 = fsub float %15, %47
%5974 = fsub float %20, %50
%5975 = fneg float %5974
%5976 = fmul float %101, %5975
%5977 = tail call float @llvm.fmuladd.f32(float %5973, float %102, float %5976)
%5978 = fneg float %5972
%5979 = fmul float %102, %5978
%5980 = tail call float @llvm.fmuladd.f32(float %5974, float %100, float %5979)
%5981 = fneg float %5973
%5982 = fmul float %100, %5981
%5983 = tail call float @llvm.fmuladd.f32(float %5972, float %101, float %5982)
%5984 = fsub float %24, %44
%5985 = fsub float %27, %47
%5986 = fsub float %30, %50
%5987 = fmul float %5985, %5980
%5988 = tail call float @llvm.fmuladd.f32(float %5984, float %5977, float %5987)
%5989 = tail call float @llvm.fmuladd.f32(float %5986, float %5983, float %5988)
%5990 = fcmp ogt float %5989, 0.000000e+00
br i1 %5990, label %6747, label %5991
5991: ; preds = %5971
%5992 = fsub float %55, %60
%5993 = fsub float %57, %67
%5994 = fsub float %59, %74
%5995 = extractelement <2 x float> %132, i64 0
%5996 = fneg float %5995
%5997 = fmul float %5993, %5996
%5998 = extractelement <2 x float> %128, i64 0
%5999 = tail call float @llvm.fmuladd.f32(float %5998, float %5994, float %5997)
store float %5999, float* %106
%6000 = extractelement <2 x float> %124, i64 0
%6001 = fneg float %6000
%6002 = fmul float %5994, %6001
%6003 = tail call float @llvm.fmuladd.f32(float %5995, float %5992, float %6002)
store float %6003, float* %110
%6004 = fneg float %5998
%6005 = fmul float %5992, %6004
%6006 = tail call float @llvm.fmuladd.f32(float %6000, float %5993, float %6005)
store float %6006, float* %114
%6007 = extractelement <2 x float> %128, i64 1
%6008 = fmul float %6007, %6003
%6009 = extractelement <2 x float> %124, i64 1
%6010 = tail call float @llvm.fmuladd.f32(float %6009, float %5999, float %6008)
%6011 = extractelement <2 x float> %132, i64 1
%6012 = tail call float @llvm.fmuladd.f32(float %6011, float %6006, float %6010)
%6013 = fcmp ule float %6012, 0.000000e+00
%6014 = zext i1 %6013 to i32
br label %6747
6015: ; preds = %5924
%6016 = fcmp ogt float %120, 0.000000e+00
%6017 = fcmp ogt float %145, 0.000000e+00
br i1 %6016, label %6018, label %6107
6018: ; preds = %6015
br i1 %6017, label %6019, label %6066
6019: ; preds = %6018
%6020 = fsub float %11, %55
%6021 = fsub float %15, %57
%6022 = fsub float %20, %59
%6023 = fsub float %60, %55
%6024 = fsub float %67, %57
%6025 = fsub float %74, %59
%6026 = fneg float %6022
%6027 = fmul float %6024, %6026
%6028 = tail call float @llvm.fmuladd.f32(float %6021, float %6025, float %6027)
%6029 = fneg float %6020
%6030 = fmul float %6025, %6029
%6031 = tail call float @llvm.fmuladd.f32(float %6022, float %6023, float %6030)
%6032 = fneg float %6021
%6033 = fmul float %6023, %6032
%6034 = tail call float @llvm.fmuladd.f32(float %6020, float %6024, float %6033)
%6035 = fsub float %24, %55
%6036 = fsub float %27, %57
%6037 = fsub float %30, %59
%6038 = fmul float %6036, %6031
%6039 = tail call float @llvm.fmuladd.f32(float %6035, float %6028, float %6038)
%6040 = tail call float @llvm.fmuladd.f32(float %6037, float %6034, float %6039)
%6041 = fcmp ogt float %6040, 0.000000e+00
br i1 %6041, label %6747, label %6042
6042: ; preds = %6019
%6043 = fsub float %44, %60
%6044 = fsub float %47, %67
%6045 = fsub float %50, %74
%6046 = extractelement <2 x float> %132, i64 0
%6047 = fneg float %6046
%6048 = fmul float %6044, %6047
%6049 = extractelement <2 x float> %128, i64 0
%6050 = tail call float @llvm.fmuladd.f32(float %6049, float %6045, float %6048)
store float %6050, float* %106
%6051 = extractelement <2 x float> %124, i64 0
%6052 = fneg float %6051
%6053 = fmul float %6045, %6052
%6054 = tail call float @llvm.fmuladd.f32(float %6046, float %6043, float %6053)
store float %6054, float* %110
%6055 = fneg float %6049
%6056 = fmul float %6043, %6055
%6057 = tail call float @llvm.fmuladd.f32(float %6051, float %6044, float %6056)
store float %6057, float* %114
%6058 = extractelement <2 x float> %128, i64 1
%6059 = fmul float %6058, %6054
%6060 = extractelement <2 x float> %124, i64 1
%6061 = tail call float @llvm.fmuladd.f32(float %6060, float %6050, float %6059)
%6062 = extractelement <2 x float> %132, i64 1
%6063 = tail call float @llvm.fmuladd.f32(float %6062, float %6057, float %6061)
%6064 = fcmp ule float %6063, 0.000000e+00
%6065 = zext i1 %6064 to i32
br label %6747
6066: ; preds = %6018
%6067 = fsub float %24, %44
%6068 = fsub float %27, %47
%6069 = fsub float %30, %50
%6070 = fneg float %6069
%6071 = fmul float %101, %6070
%6072 = tail call float @llvm.fmuladd.f32(float %6068, float %102, float %6071)
%6073 = fneg float %6067
%6074 = fmul float %102, %6073
%6075 = tail call float @llvm.fmuladd.f32(float %6069, float %100, float %6074)
%6076 = fneg float %6068
%6077 = fmul float %100, %6076
%6078 = tail call float @llvm.fmuladd.f32(float %6067, float %101, float %6077)
%6079 = fsub float %12, %44
%6080 = fsub float %17, %47
%6081 = fsub float %22, %50
%6082 = fmul float %6080, %6075
%6083 = tail call float @llvm.fmuladd.f32(float %6079, float %6072, float %6082)
%6084 = tail call float @llvm.fmuladd.f32(float %6081, float %6078, float %6083)
%6085 = fcmp ogt float %6084, 0.000000e+00
br i1 %6085, label %6747, label %6086
6086: ; preds = %6066
%6087 = fsub float %55, %60
%6088 = fsub float %57, %67
%6089 = fsub float %59, %74
%6090 = fneg float %117
%6091 = fmul float %6088, %6090
%6092 = tail call float @llvm.fmuladd.f32(float %116, float %6089, float %6091)
store float %6092, float* %106
%6093 = fneg float %115
%6094 = fmul float %6089, %6093
%6095 = tail call float @llvm.fmuladd.f32(float %117, float %6087, float %6094)
store float %6095, float* %110
%6096 = fneg float %116
%6097 = fmul float %6087, %6096
%6098 = tail call float @llvm.fmuladd.f32(float %115, float %6088, float %6097)
store float %6098, float* %114
%6099 = extractelement <2 x float> %128, i64 0
%6100 = fmul float %6099, %6095
%6101 = extractelement <2 x float> %124, i64 0
%6102 = tail call float @llvm.fmuladd.f32(float %6101, float %6092, float %6100)
%6103 = extractelement <2 x float> %132, i64 0
%6104 = tail call float @llvm.fmuladd.f32(float %6103, float %6098, float %6102)
%6105 = fcmp ule float %6104, 0.000000e+00
%6106 = zext i1 %6105 to i32
br label %6747
6107: ; preds = %6015
br i1 %6017, label %6108, label %6149
6108: ; preds = %6107
%6109 = fsub float %12, %44
%6110 = fsub float %17, %47
%6111 = fsub float %22, %50
%6112 = fneg float %6111
%6113 = fmul float %101, %6112
%6114 = tail call float @llvm.fmuladd.f32(float %6110, float %102, float %6113)
%6115 = fneg float %6109
%6116 = fmul float %102, %6115
%6117 = tail call float @llvm.fmuladd.f32(float %6111, float %100, float %6116)
%6118 = fneg float %6110
%6119 = fmul float %100, %6118
%6120 = tail call float @llvm.fmuladd.f32(float %6109, float %101, float %6119)
%6121 = fsub float %11, %44
%6122 = fsub float %15, %47
%6123 = fsub float %20, %50
%6124 = fmul float %6122, %6117
%6125 = tail call float @llvm.fmuladd.f32(float %6121, float %6114, float %6124)
%6126 = tail call float @llvm.fmuladd.f32(float %6123, float %6120, float %6125)
%6127 = fcmp ogt float %6126, 0.000000e+00
br i1 %6127, label %6747, label %6128
6128: ; preds = %6108
%6129 = fsub float %55, %60
%6130 = fsub float %57, %67
%6131 = fsub float %59, %74
%6132 = extractelement <2 x float> %132, i64 1
%6133 = fneg float %6132
%6134 = fmul float %6130, %6133
%6135 = extractelement <2 x float> %128, i64 1
%6136 = tail call float @llvm.fmuladd.f32(float %6135, float %6131, float %6134)
store float %6136, float* %106
%6137 = extractelement <2 x float> %124, i64 1
%6138 = fneg float %6137
%6139 = fmul float %6131, %6138
%6140 = tail call float @llvm.fmuladd.f32(float %6132, float %6129, float %6139)
store float %6140, float* %110
%6141 = fneg float %6135
%6142 = fmul float %6129, %6141
%6143 = tail call float @llvm.fmuladd.f32(float %6137, float %6130, float %6142)
store float %6143, float* %114
%6144 = fmul float %116, %6140
%6145 = tail call float @llvm.fmuladd.f32(float %115, float %6136, float %6144)
%6146 = tail call float @llvm.fmuladd.f32(float %117, float %6143, float %6145)
%6147 = fcmp ule float %6146, 0.000000e+00
%6148 = zext i1 %6147 to i32
br label %6747
6149: ; preds = %6107
%6150 = fcmp olt float %145, 0.000000e+00
br i1 %6150, label %6151, label %6195
6151: ; preds = %6149
%6152 = fsub float %12, %55
%6153 = fsub float %17, %57
%6154 = fsub float %22, %59
%6155 = fsub float %60, %55
%6156 = fsub float %67, %57
%6157 = fsub float %74, %59
%6158 = fneg float %6154
%6159 = fmul float %6156, %6158
%6160 = tail call float @llvm.fmuladd.f32(float %6153, float %6157, float %6159)
%6161 = fneg float %6152
%6162 = fmul float %6157, %6161
%6163 = tail call float @llvm.fmuladd.f32(float %6154, float %6155, float %6162)
%6164 = fneg float %6153
%6165 = fmul float %6155, %6164
%6166 = tail call float @llvm.fmuladd.f32(float %6152, float %6156, float %6165)
%6167 = fsub float %11, %55
%6168 = fsub float %15, %57
%6169 = fsub float %20, %59
%6170 = fmul float %6168, %6163
%6171 = tail call float @llvm.fmuladd.f32(float %6167, float %6160, float %6170)
%6172 = tail call float @llvm.fmuladd.f32(float %6169, float %6166, float %6171)
%6173 = fcmp ogt float %6172, 0.000000e+00
br i1 %6173, label %6747, label %6174
6174: ; preds = %6151
%6175 = fsub float %44, %60
%6176 = fsub float %47, %67
%6177 = fsub float %50, %74
%6178 = extractelement <2 x float> %132, i64 1
%6179 = fneg float %6178
%6180 = fmul float %6176, %6179
%6181 = extractelement <2 x float> %128, i64 1
%6182 = tail call float @llvm.fmuladd.f32(float %6181, float %6177, float %6180)
store float %6182, float* %106
%6183 = extractelement <2 x float> %124, i64 1
%6184 = fneg float %6183
%6185 = fmul float %6177, %6184
%6186 = tail call float @llvm.fmuladd.f32(float %6178, float %6175, float %6185)
store float %6186, float* %110
%6187 = fneg float %6181
%6188 = fmul float %6175, %6187
%6189 = tail call float @llvm.fmuladd.f32(float %6183, float %6176, float %6188)
store float %6189, float* %114
%6190 = fmul float %116, %6186
%6191 = tail call float @llvm.fmuladd.f32(float %115, float %6182, float %6190)
%6192 = tail call float @llvm.fmuladd.f32(float %117, float %6189, float %6191)
%6193 = fcmp ule float %6192, 0.000000e+00
%6194 = zext i1 %6193 to i32
br label %6747
6195: ; preds = %6149
%6196 = call i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...) bitcast (i32 (...)* @coplanar_tri_tri3d to i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...)*)(float* %2, float* %0, float* %1, float* %3, float* %4, float* %5, float* %106, float* %35)
br label %6747
6197: ; preds = %5649
%6198 = fcmp olt float %92, 0.000000e+00
br i1 %6198, label %6199, label %6745
6199: ; preds = %6197
%6200 = fcmp ogt float %142, 0.000000e+00
br i1 %6200, label %6201, label %6337
6201: ; preds = %6199
%6202 = fcmp ogt float %145, 0.000000e+00
br i1 %6202, label %6203, label %6247
6203: ; preds = %6201
%6204 = fsub float %24, %55
%6205 = fsub float %27, %57
%6206 = fsub float %30, %59
%6207 = fsub float %60, %55
%6208 = fsub float %67, %57
%6209 = fsub float %74, %59
%6210 = fneg float %6206
%6211 = fmul float %6208, %6210
%6212 = tail call float @llvm.fmuladd.f32(float %6205, float %6209, float %6211)
%6213 = fneg float %6204
%6214 = fmul float %6209, %6213
%6215 = tail call float @llvm.fmuladd.f32(float %6206, float %6207, float %6214)
%6216 = fneg float %6205
%6217 = fmul float %6207, %6216
%6218 = tail call float @llvm.fmuladd.f32(float %6204, float %6208, float %6217)
%6219 = fsub float %11, %55
%6220 = fsub float %15, %57
%6221 = fsub float %20, %59
%6222 = fmul float %6220, %6215
%6223 = tail call float @llvm.fmuladd.f32(float %6219, float %6212, float %6222)
%6224 = tail call float @llvm.fmuladd.f32(float %6221, float %6218, float %6223)
%6225 = fcmp ogt float %6224, 0.000000e+00
br i1 %6225, label %6747, label %6226
6226: ; preds = %6203
%6227 = fsub float %44, %60
%6228 = fsub float %47, %67
%6229 = fsub float %50, %74
%6230 = fneg float %117
%6231 = fmul float %6228, %6230
%6232 = tail call float @llvm.fmuladd.f32(float %116, float %6229, float %6231)
store float %6232, float* %106
%6233 = fneg float %115
%6234 = fmul float %6229, %6233
%6235 = tail call float @llvm.fmuladd.f32(float %117, float %6227, float %6234)
store float %6235, float* %110
%6236 = fneg float %116
%6237 = fmul float %6227, %6236
%6238 = tail call float @llvm.fmuladd.f32(float %115, float %6228, float %6237)
store float %6238, float* %114
%6239 = extractelement <2 x float> %128, i64 1
%6240 = fmul float %6239, %6235
%6241 = extractelement <2 x float> %124, i64 1
%6242 = tail call float @llvm.fmuladd.f32(float %6241, float %6232, float %6240)
%6243 = extractelement <2 x float> %132, i64 1
%6244 = tail call float @llvm.fmuladd.f32(float %6243, float %6238, float %6242)
%6245 = fcmp ule float %6244, 0.000000e+00
%6246 = zext i1 %6245 to i32
br label %6747
6247: ; preds = %6201
%6248 = fcmp ogt float %120, 0.000000e+00
br i1 %6248, label %6249, label %6296
6249: ; preds = %6247
%6250 = fsub float %12, %55
%6251 = fsub float %17, %57
%6252 = fsub float %22, %59
%6253 = fsub float %60, %55
%6254 = fsub float %67, %57
%6255 = fsub float %74, %59
%6256 = fneg float %6252
%6257 = fmul float %6254, %6256
%6258 = tail call float @llvm.fmuladd.f32(float %6251, float %6255, float %6257)
%6259 = fneg float %6250
%6260 = fmul float %6255, %6259
%6261 = tail call float @llvm.fmuladd.f32(float %6252, float %6253, float %6260)
%6262 = fneg float %6251
%6263 = fmul float %6253, %6262
%6264 = tail call float @llvm.fmuladd.f32(float %6250, float %6254, float %6263)
%6265 = fsub float %24, %55
%6266 = fsub float %27, %57
%6267 = fsub float %30, %59
%6268 = fmul float %6266, %6261
%6269 = tail call float @llvm.fmuladd.f32(float %6265, float %6258, float %6268)
%6270 = tail call float @llvm.fmuladd.f32(float %6267, float %6264, float %6269)
%6271 = fcmp ogt float %6270, 0.000000e+00
br i1 %6271, label %6747, label %6272
6272: ; preds = %6249
%6273 = fsub float %44, %60
%6274 = fsub float %47, %67
%6275 = fsub float %50, %74
%6276 = extractelement <2 x float> %132, i64 1
%6277 = fneg float %6276
%6278 = fmul float %6274, %6277
%6279 = extractelement <2 x float> %128, i64 1
%6280 = tail call float @llvm.fmuladd.f32(float %6279, float %6275, float %6278)
store float %6280, float* %106
%6281 = extractelement <2 x float> %124, i64 1
%6282 = fneg float %6281
%6283 = fmul float %6275, %6282
%6284 = tail call float @llvm.fmuladd.f32(float %6276, float %6273, float %6283)
store float %6284, float* %110
%6285 = fneg float %6279
%6286 = fmul float %6273, %6285
%6287 = tail call float @llvm.fmuladd.f32(float %6281, float %6274, float %6286)
store float %6287, float* %114
%6288 = extractelement <2 x float> %128, i64 0
%6289 = fmul float %6288, %6284
%6290 = extractelement <2 x float> %124, i64 0
%6291 = tail call float @llvm.fmuladd.f32(float %6290, float %6280, float %6289)
%6292 = extractelement <2 x float> %132, i64 0
%6293 = tail call float @llvm.fmuladd.f32(float %6292, float %6287, float %6291)
%6294 = fcmp ule float %6293, 0.000000e+00
%6295 = zext i1 %6294 to i32
br label %6747
6296: ; preds = %6247
%6297 = fsub float %11, %44
%6298 = fsub float %15, %47
%6299 = fsub float %20, %50
%6300 = fneg float %6299
%6301 = fmul float %101, %6300
%6302 = tail call float @llvm.fmuladd.f32(float %6298, float %102, float %6301)
%6303 = fneg float %6297
%6304 = fmul float %102, %6303
%6305 = tail call float @llvm.fmuladd.f32(float %6299, float %100, float %6304)
%6306 = fneg float %6298
%6307 = fmul float %100, %6306
%6308 = tail call float @llvm.fmuladd.f32(float %6297, float %101, float %6307)
%6309 = fsub float %12, %44
%6310 = fsub float %17, %47
%6311 = fsub float %22, %50
%6312 = fmul float %6310, %6305
%6313 = tail call float @llvm.fmuladd.f32(float %6309, float %6302, float %6312)
%6314 = tail call float @llvm.fmuladd.f32(float %6311, float %6308, float %6313)
%6315 = fcmp ogt float %6314, 0.000000e+00
br i1 %6315, label %6747, label %6316
6316: ; preds = %6296
%6317 = fsub float %55, %60
%6318 = fsub float %57, %67
%6319 = fsub float %59, %74
%6320 = extractelement <2 x float> %132, i64 0
%6321 = fneg float %6320
%6322 = fmul float %6318, %6321
%6323 = extractelement <2 x float> %128, i64 0
%6324 = tail call float @llvm.fmuladd.f32(float %6323, float %6319, float %6322)
store float %6324, float* %106
%6325 = extractelement <2 x float> %124, i64 0
%6326 = fneg float %6325
%6327 = fmul float %6319, %6326
%6328 = tail call float @llvm.fmuladd.f32(float %6320, float %6317, float %6327)
store float %6328, float* %110
%6329 = fneg float %6323
%6330 = fmul float %6317, %6329
%6331 = tail call float @llvm.fmuladd.f32(float %6325, float %6318, float %6330)
store float %6331, float* %114
%6332 = fmul float %116, %6328
%6333 = tail call float @llvm.fmuladd.f32(float %115, float %6324, float %6332)
%6334 = tail call float @llvm.fmuladd.f32(float %117, float %6331, float %6333)
%6335 = fcmp ule float %6334, 0.000000e+00
%6336 = zext i1 %6335 to i32
br label %6747
6337: ; preds = %6199
%6338 = fcmp olt float %142, 0.000000e+00
%6339 = fcmp olt float %145, 0.000000e+00
br i1 %6338, label %6340, label %6472
6340: ; preds = %6337
br i1 %6339, label %6341, label %6382
6341: ; preds = %6340
%6342 = fsub float %24, %44
%6343 = fsub float %27, %47
%6344 = fsub float %30, %50
%6345 = fneg float %6344
%6346 = fmul float %101, %6345
%6347 = tail call float @llvm.fmuladd.f32(float %6343, float %102, float %6346)
%6348 = fneg float %6342
%6349 = fmul float %102, %6348
%6350 = tail call float @llvm.fmuladd.f32(float %6344, float %100, float %6349)
%6351 = fneg float %6343
%6352 = fmul float %100, %6351
%6353 = tail call float @llvm.fmuladd.f32(float %6342, float %101, float %6352)
%6354 = fsub float %11, %44
%6355 = fsub float %15, %47
%6356 = fsub float %20, %50
%6357 = fmul float %6355, %6350
%6358 = tail call float @llvm.fmuladd.f32(float %6354, float %6347, float %6357)
%6359 = tail call float @llvm.fmuladd.f32(float %6356, float %6353, float %6358)
%6360 = fcmp ogt float %6359, 0.000000e+00
br i1 %6360, label %6747, label %6361
6361: ; preds = %6341
%6362 = fsub float %55, %60
%6363 = fsub float %57, %67
%6364 = fsub float %59, %74
%6365 = fneg float %117
%6366 = fmul float %6363, %6365
%6367 = tail call float @llvm.fmuladd.f32(float %116, float %6364, float %6366)
store float %6367, float* %106
%6368 = fneg float %115
%6369 = fmul float %6364, %6368
%6370 = tail call float @llvm.fmuladd.f32(float %117, float %6362, float %6369)
store float %6370, float* %110
%6371 = fneg float %116
%6372 = fmul float %6362, %6371
%6373 = tail call float @llvm.fmuladd.f32(float %115, float %6363, float %6372)
store float %6373, float* %114
%6374 = extractelement <2 x float> %128, i64 1
%6375 = fmul float %6374, %6370
%6376 = extractelement <2 x float> %124, i64 1
%6377 = tail call float @llvm.fmuladd.f32(float %6376, float %6367, float %6375)
%6378 = extractelement <2 x float> %132, i64 1
%6379 = tail call float @llvm.fmuladd.f32(float %6378, float %6373, float %6377)
%6380 = fcmp ule float %6379, 0.000000e+00
%6381 = zext i1 %6380 to i32
br label %6747
6382: ; preds = %6340
%6383 = fcmp olt float %120, 0.000000e+00
br i1 %6383, label %6384, label %6428
6384: ; preds = %6382
%6385 = fsub float %12, %44
%6386 = fsub float %17, %47
%6387 = fsub float %22, %50
%6388 = fneg float %6387
%6389 = fmul float %101, %6388
%6390 = tail call float @llvm.fmuladd.f32(float %6386, float %102, float %6389)
%6391 = fneg float %6385
%6392 = fmul float %102, %6391
%6393 = tail call float @llvm.fmuladd.f32(float %6387, float %100, float %6392)
%6394 = fneg float %6386
%6395 = fmul float %100, %6394
%6396 = tail call float @llvm.fmuladd.f32(float %6385, float %101, float %6395)
%6397 = fsub float %24, %44
%6398 = fsub float %27, %47
%6399 = fsub float %30, %50
%6400 = fmul float %6398, %6393
%6401 = tail call float @llvm.fmuladd.f32(float %6397, float %6390, float %6400)
%6402 = tail call float @llvm.fmuladd.f32(float %6399, float %6396, float %6401)
%6403 = fcmp ogt float %6402, 0.000000e+00
br i1 %6403, label %6747, label %6404
6404: ; preds = %6384
%6405 = fsub float %55, %60
%6406 = fsub float %57, %67
%6407 = fsub float %59, %74
%6408 = extractelement <2 x float> %132, i64 1
%6409 = fneg float %6408
%6410 = fmul float %6406, %6409
%6411 = extractelement <2 x float> %128, i64 1
%6412 = tail call float @llvm.fmuladd.f32(float %6411, float %6407, float %6410)
store float %6412, float* %106
%6413 = extractelement <2 x float> %124, i64 1
%6414 = fneg float %6413
%6415 = fmul float %6407, %6414
%6416 = tail call float @llvm.fmuladd.f32(float %6408, float %6405, float %6415)
store float %6416, float* %110
%6417 = fneg float %6411
%6418 = fmul float %6405, %6417
%6419 = tail call float @llvm.fmuladd.f32(float %6413, float %6406, float %6418)
store float %6419, float* %114
%6420 = extractelement <2 x float> %128, i64 0
%6421 = fmul float %6420, %6416
%6422 = extractelement <2 x float> %124, i64 0
%6423 = tail call float @llvm.fmuladd.f32(float %6422, float %6412, float %6421)
%6424 = extractelement <2 x float> %132, i64 0
%6425 = tail call float @llvm.fmuladd.f32(float %6424, float %6419, float %6423)
%6426 = fcmp ule float %6425, 0.000000e+00
%6427 = zext i1 %6426 to i32
br label %6747
6428: ; preds = %6382
%6429 = fsub float %11, %55
%6430 = fsub float %15, %57
%6431 = fsub float %20, %59
%6432 = fsub float %60, %55
%6433 = fsub float %67, %57
%6434 = fsub float %74, %59
%6435 = fneg float %6431
%6436 = fmul float %6433, %6435
%6437 = tail call float @llvm.fmuladd.f32(float %6430, float %6434, float %6436)
%6438 = fneg float %6429
%6439 = fmul float %6434, %6438
%6440 = tail call float @llvm.fmuladd.f32(float %6431, float %6432, float %6439)
%6441 = fneg float %6430
%6442 = fmul float %6432, %6441
%6443 = tail call float @llvm.fmuladd.f32(float %6429, float %6433, float %6442)
%6444 = fsub float %12, %55
%6445 = fsub float %17, %57
%6446 = fsub float %22, %59
%6447 = fmul float %6445, %6440
%6448 = tail call float @llvm.fmuladd.f32(float %6444, float %6437, float %6447)
%6449 = tail call float @llvm.fmuladd.f32(float %6446, float %6443, float %6448)
%6450 = fcmp ogt float %6449, 0.000000e+00
br i1 %6450, label %6747, label %6451
6451: ; preds = %6428
%6452 = fsub float %44, %60
%6453 = fsub float %47, %67
%6454 = fsub float %50, %74
%6455 = extractelement <2 x float> %132, i64 0
%6456 = fneg float %6455
%6457 = fmul float %6453, %6456
%6458 = extractelement <2 x float> %128, i64 0
%6459 = tail call float @llvm.fmuladd.f32(float %6458, float %6454, float %6457)
store float %6459, float* %106
%6460 = extractelement <2 x float> %124, i64 0
%6461 = fneg float %6460
%6462 = fmul float %6454, %6461
%6463 = tail call float @llvm.fmuladd.f32(float %6455, float %6452, float %6462)
store float %6463, float* %110
%6464 = fneg float %6458
%6465 = fmul float %6452, %6464
%6466 = tail call float @llvm.fmuladd.f32(float %6460, float %6453, float %6465)
store float %6466, float* %114
%6467 = fmul float %116, %6463
%6468 = tail call float @llvm.fmuladd.f32(float %115, float %6459, float %6467)
%6469 = tail call float @llvm.fmuladd.f32(float %117, float %6466, float %6468)
%6470 = fcmp ule float %6469, 0.000000e+00
%6471 = zext i1 %6470 to i32
br label %6747
6472: ; preds = %6337
br i1 %6339, label %6473, label %6563
6473: ; preds = %6472
%6474 = fcmp ult float %120, 0.000000e+00
br i1 %6474, label %6522, label %6475
6475: ; preds = %6473
%6476 = fsub float %12, %55
%6477 = fsub float %17, %57
%6478 = fsub float %22, %59
%6479 = fsub float %60, %55
%6480 = fsub float %67, %57
%6481 = fsub float %74, %59
%6482 = fneg float %6478
%6483 = fmul float %6480, %6482
%6484 = tail call float @llvm.fmuladd.f32(float %6477, float %6481, float %6483)
%6485 = fneg float %6476
%6486 = fmul float %6481, %6485
%6487 = tail call float @llvm.fmuladd.f32(float %6478, float %6479, float %6486)
%6488 = fneg float %6477
%6489 = fmul float %6479, %6488
%6490 = tail call float @llvm.fmuladd.f32(float %6476, float %6480, float %6489)
%6491 = fsub float %24, %55
%6492 = fsub float %27, %57
%6493 = fsub float %30, %59
%6494 = fmul float %6492, %6487
%6495 = tail call float @llvm.fmuladd.f32(float %6491, float %6484, float %6494)
%6496 = tail call float @llvm.fmuladd.f32(float %6493, float %6490, float %6495)
%6497 = fcmp ogt float %6496, 0.000000e+00
br i1 %6497, label %6747, label %6498
6498: ; preds = %6475
%6499 = fsub float %44, %60
%6500 = fsub float %47, %67
%6501 = fsub float %50, %74
%6502 = extractelement <2 x float> %132, i64 1
%6503 = fneg float %6502
%6504 = fmul float %6500, %6503
%6505 = extractelement <2 x float> %128, i64 1
%6506 = tail call float @llvm.fmuladd.f32(float %6505, float %6501, float %6504)
store float %6506, float* %106
%6507 = extractelement <2 x float> %124, i64 1
%6508 = fneg float %6507
%6509 = fmul float %6501, %6508
%6510 = tail call float @llvm.fmuladd.f32(float %6502, float %6499, float %6509)
store float %6510, float* %110
%6511 = fneg float %6505
%6512 = fmul float %6499, %6511
%6513 = tail call float @llvm.fmuladd.f32(float %6507, float %6500, float %6512)
store float %6513, float* %114
%6514 = extractelement <2 x float> %128, i64 0
%6515 = fmul float %6514, %6510
%6516 = extractelement <2 x float> %124, i64 0
%6517 = tail call float @llvm.fmuladd.f32(float %6516, float %6506, float %6515)
%6518 = extractelement <2 x float> %132, i64 0
%6519 = tail call float @llvm.fmuladd.f32(float %6518, float %6513, float %6517)
%6520 = fcmp ule float %6519, 0.000000e+00
%6521 = zext i1 %6520 to i32
br label %6747
6522: ; preds = %6473
%6523 = fsub float %11, %44
%6524 = fsub float %15, %47
%6525 = fsub float %20, %50
%6526 = fneg float %6525
%6527 = fmul float %101, %6526
%6528 = tail call float @llvm.fmuladd.f32(float %6524, float %102, float %6527)
%6529 = fneg float %6523
%6530 = fmul float %102, %6529
%6531 = tail call float @llvm.fmuladd.f32(float %6525, float %100, float %6530)
%6532 = fneg float %6524
%6533 = fmul float %100, %6532
%6534 = tail call float @llvm.fmuladd.f32(float %6523, float %101, float %6533)
%6535 = fsub float %12, %44
%6536 = fsub float %17, %47
%6537 = fsub float %22, %50
%6538 = fmul float %6536, %6531
%6539 = tail call float @llvm.fmuladd.f32(float %6535, float %6528, float %6538)
%6540 = tail call float @llvm.fmuladd.f32(float %6537, float %6534, float %6539)
%6541 = fcmp ogt float %6540, 0.000000e+00
br i1 %6541, label %6747, label %6542
6542: ; preds = %6522
%6543 = fsub float %55, %60
%6544 = fsub float %57, %67
%6545 = fsub float %59, %74
%6546 = extractelement <2 x float> %132, i64 0
%6547 = fneg float %6546
%6548 = fmul float %6544, %6547
%6549 = extractelement <2 x float> %128, i64 0
%6550 = tail call float @llvm.fmuladd.f32(float %6549, float %6545, float %6548)
store float %6550, float* %106
%6551 = extractelement <2 x float> %124, i64 0
%6552 = fneg float %6551
%6553 = fmul float %6545, %6552
%6554 = tail call float @llvm.fmuladd.f32(float %6546, float %6543, float %6553)
store float %6554, float* %110
%6555 = fneg float %6549
%6556 = fmul float %6543, %6555
%6557 = tail call float @llvm.fmuladd.f32(float %6551, float %6544, float %6556)
store float %6557, float* %114
%6558 = fmul float %116, %6554
%6559 = tail call float @llvm.fmuladd.f32(float %115, float %6550, float %6558)
%6560 = tail call float @llvm.fmuladd.f32(float %117, float %6557, float %6559)
%6561 = fcmp ule float %6560, 0.000000e+00
%6562 = zext i1 %6561 to i32
br label %6747
6563: ; preds = %6472
%6564 = fcmp ogt float %145, 0.000000e+00
%6565 = fcmp ogt float %120, 0.000000e+00
br i1 %6564, label %6566, label %6655
6566: ; preds = %6563
br i1 %6565, label %6567, label %6611
6567: ; preds = %6566
%6568 = fsub float %11, %55
%6569 = fsub float %15, %57
%6570 = fsub float %20, %59
%6571 = fsub float %60, %55
%6572 = fsub float %67, %57
%6573 = fsub float %74, %59
%6574 = fneg float %6570
%6575 = fmul float %6572, %6574
%6576 = tail call float @llvm.fmuladd.f32(float %6569, float %6573, float %6575)
%6577 = fneg float %6568
%6578 = fmul float %6573, %6577
%6579 = tail call float @llvm.fmuladd.f32(float %6570, float %6571, float %6578)
%6580 = fneg float %6569
%6581 = fmul float %6571, %6580
%6582 = tail call float @llvm.fmuladd.f32(float %6568, float %6572, float %6581)
%6583 = fsub float %12, %55
%6584 = fsub float %17, %57
%6585 = fsub float %22, %59
%6586 = fmul float %6584, %6579
%6587 = tail call float @llvm.fmuladd.f32(float %6583, float %6576, float %6586)
%6588 = tail call float @llvm.fmuladd.f32(float %6585, float %6582, float %6587)
%6589 = fcmp ogt float %6588, 0.000000e+00
br i1 %6589, label %6747, label %6590
6590: ; preds = %6567
%6591 = fsub float %44, %60
%6592 = fsub float %47, %67
%6593 = fsub float %50, %74
%6594 = extractelement <2 x float> %132, i64 0
%6595 = fneg float %6594
%6596 = fmul float %6592, %6595
%6597 = extractelement <2 x float> %128, i64 0
%6598 = tail call float @llvm.fmuladd.f32(float %6597, float %6593, float %6596)
store float %6598, float* %106
%6599 = extractelement <2 x float> %124, i64 0
%6600 = fneg float %6599
%6601 = fmul float %6593, %6600
%6602 = tail call float @llvm.fmuladd.f32(float %6594, float %6591, float %6601)
store float %6602, float* %110
%6603 = fneg float %6597
%6604 = fmul float %6591, %6603
%6605 = tail call float @llvm.fmuladd.f32(float %6599, float %6592, float %6604)
store float %6605, float* %114
%6606 = fmul float %116, %6602
%6607 = tail call float @llvm.fmuladd.f32(float %115, float %6598, float %6606)
%6608 = tail call float @llvm.fmuladd.f32(float %117, float %6605, float %6607)
%6609 = fcmp ule float %6608, 0.000000e+00
%6610 = zext i1 %6609 to i32
br label %6747
6611: ; preds = %6566
%6612 = fsub float %12, %44
%6613 = fsub float %17, %47
%6614 = fsub float %22, %50
%6615 = fneg float %6614
%6616 = fmul float %101, %6615
%6617 = tail call float @llvm.fmuladd.f32(float %6613, float %102, float %6616)
%6618 = fneg float %6612
%6619 = fmul float %102, %6618
%6620 = tail call float @llvm.fmuladd.f32(float %6614, float %100, float %6619)
%6621 = fneg float %6613
%6622 = fmul float %100, %6621
%6623 = tail call float @llvm.fmuladd.f32(float %6612, float %101, float %6622)
%6624 = fsub float %24, %44
%6625 = fsub float %27, %47
%6626 = fsub float %30, %50
%6627 = fmul float %6625, %6620
%6628 = tail call float @llvm.fmuladd.f32(float %6624, float %6617, float %6627)
%6629 = tail call float @llvm.fmuladd.f32(float %6626, float %6623, float %6628)
%6630 = fcmp ogt float %6629, 0.000000e+00
br i1 %6630, label %6747, label %6631
6631: ; preds = %6611
%6632 = fsub float %55, %60
%6633 = fsub float %57, %67
%6634 = fsub float %59, %74
%6635 = extractelement <2 x float> %132, i64 1
%6636 = fneg float %6635
%6637 = fmul float %6633, %6636
%6638 = extractelement <2 x float> %128, i64 1
%6639 = tail call float @llvm.fmuladd.f32(float %6638, float %6634, float %6637)
store float %6639, float* %106
%6640 = extractelement <2 x float> %124, i64 1
%6641 = fneg float %6640
%6642 = fmul float %6634, %6641
%6643 = tail call float @llvm.fmuladd.f32(float %6635, float %6632, float %6642)
store float %6643, float* %110
%6644 = fneg float %6638
%6645 = fmul float %6632, %6644
%6646 = tail call float @llvm.fmuladd.f32(float %6640, float %6633, float %6645)
store float %6646, float* %114
%6647 = extractelement <2 x float> %128, i64 0
%6648 = fmul float %6647, %6643
%6649 = extractelement <2 x float> %124, i64 0
%6650 = tail call float @llvm.fmuladd.f32(float %6649, float %6639, float %6648)
%6651 = extractelement <2 x float> %132, i64 0
%6652 = tail call float @llvm.fmuladd.f32(float %6651, float %6646, float %6650)
%6653 = fcmp ule float %6652, 0.000000e+00
%6654 = zext i1 %6653 to i32
br label %6747
6655: ; preds = %6563
br i1 %6565, label %6656, label %6697
6656: ; preds = %6655
%6657 = fsub float %24, %44
%6658 = fsub float %27, %47
%6659 = fsub float %30, %50
%6660 = fneg float %6659
%6661 = fmul float %101, %6660
%6662 = tail call float @llvm.fmuladd.f32(float %6658, float %102, float %6661)
%6663 = fneg float %6657
%6664 = fmul float %102, %6663
%6665 = tail call float @llvm.fmuladd.f32(float %6659, float %100, float %6664)
%6666 = fneg float %6658
%6667 = fmul float %100, %6666
%6668 = tail call float @llvm.fmuladd.f32(float %6657, float %101, float %6667)
%6669 = fsub float %11, %44
%6670 = fsub float %15, %47
%6671 = fsub float %20, %50
%6672 = fmul float %6670, %6665
%6673 = tail call float @llvm.fmuladd.f32(float %6669, float %6662, float %6672)
%6674 = tail call float @llvm.fmuladd.f32(float %6671, float %6668, float %6673)
%6675 = fcmp ogt float %6674, 0.000000e+00
br i1 %6675, label %6747, label %6676
6676: ; preds = %6656
%6677 = fsub float %55, %60
%6678 = fsub float %57, %67
%6679 = fsub float %59, %74
%6680 = fneg float %117
%6681 = fmul float %6678, %6680
%6682 = tail call float @llvm.fmuladd.f32(float %116, float %6679, float %6681)
store float %6682, float* %106
%6683 = fneg float %115
%6684 = fmul float %6679, %6683
%6685 = tail call float @llvm.fmuladd.f32(float %117, float %6677, float %6684)
store float %6685, float* %110
%6686 = fneg float %116
%6687 = fmul float %6677, %6686
%6688 = tail call float @llvm.fmuladd.f32(float %115, float %6678, float %6687)
store float %6688, float* %114
%6689 = extractelement <2 x float> %128, i64 1
%6690 = fmul float %6689, %6685
%6691 = extractelement <2 x float> %124, i64 1
%6692 = tail call float @llvm.fmuladd.f32(float %6691, float %6682, float %6690)
%6693 = extractelement <2 x float> %132, i64 1
%6694 = tail call float @llvm.fmuladd.f32(float %6693, float %6688, float %6692)
%6695 = fcmp ule float %6694, 0.000000e+00
%6696 = zext i1 %6695 to i32
br label %6747
6697: ; preds = %6655
%6698 = fcmp olt float %120, 0.000000e+00
br i1 %6698, label %6699, label %6743
6699: ; preds = %6697
%6700 = fsub float %24, %55
%6701 = fsub float %27, %57
%6702 = fsub float %30, %59
%6703 = fsub float %60, %55
%6704 = fsub float %67, %57
%6705 = fsub float %74, %59
%6706 = fneg float %6702
%6707 = fmul float %6704, %6706
%6708 = tail call float @llvm.fmuladd.f32(float %6701, float %6705, float %6707)
%6709 = fneg float %6700
%6710 = fmul float %6705, %6709
%6711 = tail call float @llvm.fmuladd.f32(float %6702, float %6703, float %6710)
%6712 = fneg float %6701
%6713 = fmul float %6703, %6712
%6714 = tail call float @llvm.fmuladd.f32(float %6700, float %6704, float %6713)
%6715 = fsub float %11, %55
%6716 = fsub float %15, %57
%6717 = fsub float %20, %59
%6718 = fmul float %6716, %6711
%6719 = tail call float @llvm.fmuladd.f32(float %6715, float %6708, float %6718)
%6720 = tail call float @llvm.fmuladd.f32(float %6717, float %6714, float %6719)
%6721 = fcmp ogt float %6720, 0.000000e+00
br i1 %6721, label %6747, label %6722
6722: ; preds = %6699
%6723 = fsub float %44, %60
%6724 = fsub float %47, %67
%6725 = fsub float %50, %74
%6726 = fneg float %117
%6727 = fmul float %6724, %6726
%6728 = tail call float @llvm.fmuladd.f32(float %116, float %6725, float %6727)
store float %6728, float* %106
%6729 = fneg float %115
%6730 = fmul float %6725, %6729
%6731 = tail call float @llvm.fmuladd.f32(float %117, float %6723, float %6730)
store float %6731, float* %110
%6732 = fneg float %116
%6733 = fmul float %6723, %6732
%6734 = tail call float @llvm.fmuladd.f32(float %115, float %6724, float %6733)
store float %6734, float* %114
%6735 = extractelement <2 x float> %128, i64 1
%6736 = fmul float %6735, %6731
%6737 = extractelement <2 x float> %124, i64 1
%6738 = tail call float @llvm.fmuladd.f32(float %6737, float %6728, float %6736)
%6739 = extractelement <2 x float> %132, i64 1
%6740 = tail call float @llvm.fmuladd.f32(float %6739, float %6734, float %6738)
%6741 = fcmp ule float %6740, 0.000000e+00
%6742 = zext i1 %6741 to i32
br label %6747
6743: ; preds = %6697
%6744 = call i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...) bitcast (i32 (...)* @coplanar_tri_tri3d to i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...)*)(float* %2, float* %0, float* %1, float* %3, float* %5, float* %4, float* %106, float* %35)
br label %6747
6745: ; preds = %6197
%6746 = call i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...) bitcast (i32 (...)* @coplanar_tri_tri3d to i32 (float*, float*, float*, float*, float*, float*, float*, float*, ...)*)(float* %0, float* %1, float* %2, float* %3, float* %4, float* %5, float* %106, float* %35)
br label %6747
6747: ; preds = %6722, %6699, %6676, %6656, %6631, %6611, %6590, %6567, %6542, %6522, %6498, %6475, %6451, %6428, %6404, %6384, %6361, %6341, %6316, %6296, %6272, %6249, %6226, %6203, %6174, %6151, %6128, %6108, %6086, %6066, %6042, %6019, %5991, %5971, %5950, %5927, %5900, %5877, %5856, %5836, %5813, %5793, %5765, %5745, %5724, %5701, %5678, %5655, %5623, %5603, %5577, %5554, %5529, %5509, %5485, %5465, %5437, %5417, %5393, %5373, %5346, %5326, %5302, %5282, %5256, %5233, %5205, %5185, %5161, %5141, %5115, %5095, %5069, %5049, %5026, %5003, %4981, %4958, %4937, %4914, %4889, %4866, %4845, %4825, %4801, %4778, %4757, %4734, %4711, %4688, %4663, %4640, %4619, %4599, %4576, %4556, %4524, %4501, %4478, %4455, %4433, %4410, %4389, %4369, %4344, %4321, %4300, %4280, %4256, %4236, %4215, %4192, %4169, %4146, %4121, %4098, %4077, %4057, %4034, %4011, %3982, %3962, %3936, %3916, %3891, %3871, %3847, %3827, %3799, %3776, %3752, %3732, %3705, %3685, %3661, %3641, %3615, %3595, %3567, %3544, %3520, %3500, %3474, %3454, %3424, %3404, %3381, %3358, %3336, %3313, %3292, %3269, %3244, %3221, %3200, %3180, %3156, %3133, %3112, %3089, %3066, %3043, %3018, %2995, %2974, %2954, %2931, %2911, %2882, %2862, %2836, %2813, %2788, %2768, %2744, %2724, %2696, %2676, %2652, %2632, %2605, %2585, %2561, %2541, %2515, %2492, %2464, %2444, %2420, %2400, %2374, %2354, %2325, %2302, %2279, %2259, %2237, %2217, %2193, %2170, %2142, %2122, %2101, %2078, %2051, %2028, %2007, %1987, %1964, %1944, %1916, %1896, %1875, %1852, %1829, %1806, %1775, %1752, %1729, %1706, %1684, %1661, %1640, %1620, %1595, %1572, %1551, %1531, %1507, %1487, %1466, %1443, %1420, %1397, %1372, %1349, %1328, %1308, %1285, %1262, %1233, %1213, %1187, %1167, %1142, %1122, %1098, %1078, %1050, %1027, %1003, %983, %956, %936, %912, %892, %866, %846, %818, %795, %771, %751, %725, %705, %676, %653, %630, %610, %585, %565, %544, %521, %496, %476, %452, %429, %405, %382, %358, %338, %315, %295, %270, %250, %226, %203, %180, %157, %96, %6, %6745, %6743, %6195, %5647, %5090, %4545, %4006, %3445, %2906, %2346, %1796, %1257, %697
%6748 = phi i32 [ %698, %697 ], [ %1258, %1257 ], [ %1797, %1796 ], [ %2347, %2346 ], [ %2907, %2906 ], [ %3446, %3445 ], [ %4007, %4006 ], [ %4546, %4545 ], [ %5091, %5090 ], [ %5648, %5647 ], [ %6196, %6195 ], [ %6744, %6743 ], [ %6746, %6745 ], [ 0, %6 ], [ 0, %96 ], [ 0, %157 ], [ %200, %180 ], [ 0, %203 ], [ %249, %226 ], [ 0, %250 ], [ %290, %270 ], [ 0, %295 ], [ %335, %315 ], [ 0, %338 ], [ %381, %358 ], [ 0, %382 ], [ %425, %405 ], [ 0, %429 ], [ %475, %452 ], [ 0, %476 ], [ %516, %496 ], [ 0, %521 ], [ %564, %544 ], [ 0, %565 ], [ %608, %585 ], [ 0, %610 ], [ %650, %630 ], [ 0, %653 ], [ %696, %676 ], [ 0, %705 ], [ %748, %725 ], [ 0, %751 ], [ %794, %771 ], [ 0, %795 ], [ %841, %818 ], [ 0, %846 ], [ %889, %866 ], [ 0, %892 ], [ %935, %912 ], [ 0, %936 ], [ %979, %956 ], [ 0, %983 ], [ %1026, %1003 ], [ 0, %1027 ], [ %1073, %1050 ], [ 0, %1078 ], [ %1121, %1098 ], [ 0, %1122 ], [ %1165, %1142 ], [ 0, %1167 ], [ %1210, %1187 ], [ 0, %1213 ], [ %1256, %1233 ], [ 0, %1262 ], [ %1305, %1285 ], [ 0, %1308 ], [ %1348, %1328 ], [ 0, %1349 ], [ %1392, %1372 ], [ 0, %1397 ], [ %1440, %1420 ], [ 0, %1443 ], [ %1486, %1466 ], [ 0, %1487 ], [ %1527, %1507 ], [ 0, %1531 ], [ %1571, %1551 ], [ 0, %1572 ], [ %1615, %1595 ], [ 0, %1620 ], [ %1660, %1640 ], [ 0, %1661 ], [ %1704, %1684 ], [ 0, %1706 ], [ %1749, %1729 ], [ 0, %1752 ], [ %1795, %1775 ], [ 0, %1806 ], [ %1849, %1829 ], [ 0, %1852 ], [ %1895, %1875 ], [ 0, %1896 ], [ %1939, %1916 ], [ 0, %1944 ], [ %1984, %1964 ], [ 0, %1987 ], [ %2027, %2007 ], [ 0, %2028 ], [ %2074, %2051 ], [ 0, %2078 ], [ %2121, %2101 ], [ 0, %2122 ], [ %2165, %2142 ], [ 0, %2170 ], [ %2216, %2193 ], [ 0, %2217 ], [ %2257, %2237 ], [ 0, %2259 ], [ %2299, %2279 ], [ 0, %2302 ], [ %2345, %2325 ], [ 0, %2354 ], [ %2397, %2374 ], [ 0, %2400 ], [ %2443, %2420 ], [ 0, %2444 ], [ %2487, %2464 ], [ 0, %2492 ], [ %2538, %2515 ], [ 0, %2541 ], [ %2584, %2561 ], [ 0, %2585 ], [ %2628, %2605 ], [ 0, %2632 ], [ %2675, %2652 ], [ 0, %2676 ], [ %2719, %2696 ], [ 0, %2724 ], [ %2767, %2744 ], [ 0, %2768 ], [ %2811, %2788 ], [ 0, %2813 ], [ %2859, %2836 ], [ 0, %2862 ], [ %2905, %2882 ], [ 0, %2911 ], [ %2951, %2931 ], [ 0, %2954 ], [ %2994, %2974 ], [ 0, %2995 ], [ %3038, %3018 ], [ 0, %3043 ], [ %3086, %3066 ], [ 0, %3089 ], [ %3132, %3112 ], [ 0, %3133 ], [ %3176, %3156 ], [ 0, %3180 ], [ %3220, %3200 ], [ 0, %3221 ], [ %3264, %3244 ], [ 0, %3269 ], [ %3312, %3292 ], [ 0, %3313 ], [ %3356, %3336 ], [ 0, %3358 ], [ %3401, %3381 ], [ 0, %3404 ], [ %3444, %3424 ], [ 0, %3454 ], [ %3497, %3474 ], [ 0, %3500 ], [ %3543, %3520 ], [ 0, %3544 ], [ %3590, %3567 ], [ 0, %3595 ], [ %3638, %3615 ], [ 0, %3641 ], [ %3684, %3661 ], [ 0, %3685 ], [ %3728, %3705 ], [ 0, %3732 ], [ %3775, %3752 ], [ 0, %3776 ], [ %3822, %3799 ], [ 0, %3827 ], [ %3870, %3847 ], [ 0, %3871 ], [ %3914, %3891 ], [ 0, %3916 ], [ %3959, %3936 ], [ 0, %3962 ], [ %4005, %3982 ], [ 0, %4011 ], [ %4054, %4034 ], [ 0, %4057 ], [ %4097, %4077 ], [ 0, %4098 ], [ %4141, %4121 ], [ 0, %4146 ], [ %4189, %4169 ], [ 0, %4192 ], [ %4235, %4215 ], [ 0, %4236 ], [ %4276, %4256 ], [ 0, %4280 ], [ %4320, %4300 ], [ 0, %4321 ], [ %4364, %4344 ], [ 0, %4369 ], [ %4409, %4389 ], [ 0, %4410 ], [ %4453, %4433 ], [ 0, %4455 ], [ %4498, %4478 ], [ 0, %4501 ], [ %4544, %4524 ], [ 0, %4556 ], [ %4596, %4576 ], [ 0, %4599 ], [ %4639, %4619 ], [ 0, %4640 ], [ %4683, %4663 ], [ 0, %4688 ], [ %4731, %4711 ], [ 0, %4734 ], [ %4777, %4757 ], [ 0, %4778 ], [ %4821, %4801 ], [ 0, %4825 ], [ %4865, %4845 ], [ 0, %4866 ], [ %4909, %4889 ], [ 0, %4914 ], [ %4957, %4937 ], [ 0, %4958 ], [ %5001, %4981 ], [ 0, %5003 ], [ %5046, %5026 ], [ 0, %5049 ], [ %5089, %5069 ], [ 0, %5095 ], [ %5138, %5115 ], [ 0, %5141 ], [ %5184, %5161 ], [ 0, %5185 ], [ %5228, %5205 ], [ 0, %5233 ], [ %5279, %5256 ], [ 0, %5282 ], [ %5325, %5302 ], [ 0, %5326 ], [ %5369, %5346 ], [ 0, %5373 ], [ %5416, %5393 ], [ 0, %5417 ], [ %5460, %5437 ], [ 0, %5465 ], [ %5508, %5485 ], [ 0, %5509 ], [ %5552, %5529 ], [ 0, %5554 ], [ %5600, %5577 ], [ 0, %5603 ], [ %5646, %5623 ], [ 0, %5655 ], [ %5698, %5678 ], [ 0, %5701 ], [ %5744, %5724 ], [ 0, %5745 ], [ %5788, %5765 ], [ 0, %5793 ], [ %5833, %5813 ], [ 0, %5836 ], [ %5876, %5856 ], [ 0, %5877 ], [ %5923, %5900 ], [ 0, %5927 ], [ %5970, %5950 ], [ 0, %5971 ], [ %6014, %5991 ], [ 0, %6019 ], [ %6065, %6042 ], [ 0, %6066 ], [ %6106, %6086 ], [ 0, %6108 ], [ %6148, %6128 ], [ 0, %6151 ], [ %6194, %6174 ], [ 0, %6203 ], [ %6246, %6226 ], [ 0, %6249 ], [ %6295, %6272 ], [ 0, %6296 ], [ %6336, %6316 ], [ 0, %6341 ], [ %6381, %6361 ], [ 0, %6384 ], [ %6427, %6404 ], [ 0, %6428 ], [ %6471, %6451 ], [ 0, %6475 ], [ %6521, %6498 ], [ 0, %6522 ], [ %6562, %6542 ], [ 0, %6567 ], [ %6610, %6590 ], [ 0, %6611 ], [ %6654, %6631 ], [ 0, %6656 ], [ %6696, %6676 ], [ 0, %6699 ], [ %6742, %6722 ]
ret i32 %6748
}