void helper_float_28_recursive(float *buf, int depth) {
  if (depth == 16) {
    for (int j = 0; j < 65536; j += 32) {
      for (int k = 0; k < 4; k += 4) {
        __asm__ volatile(
            "movups (%0), %%xmm0\n"
            "movups (%1), %%xmm1\n"
            "movups (%2), %%xmm2\n"
            "movups (%3), %%xmm3\n"
            "movups (%4), %%xmm4\n"
            "movups (%5), %%xmm5\n"
            "movups (%6), %%xmm6\n"
            "movups (%7), %%xmm7\n"
            "movaps %%xmm0, %%xmm8\n"
            "shufps $160, %%xmm8, %%xmm8\n"
            "shufps $245, %%xmm0, %%xmm0\n"
            "xorps %%xmm9, %%xmm9\n"
            "subps %%xmm0, %%xmm9\n"
            "addsubps %%xmm9, %%xmm8\n"
            "movaps %%xmm8, %%xmm0\n"
            "movaps %%xmm1, %%xmm8\n"
            "shufps $160, %%xmm8, %%xmm8\n"
            "shufps $245, %%xmm1, %%xmm1\n"
            "xorps %%xmm9, %%xmm9\n"
            "subps %%xmm1, %%xmm9\n"
            "addsubps %%xmm9, %%xmm8\n"
            "movaps %%xmm8, %%xmm1\n"
            "movaps %%xmm2, %%xmm8\n"
            "shufps $160, %%xmm8, %%xmm8\n"
            "shufps $245, %%xmm2, %%xmm2\n"
            "xorps %%xmm9, %%xmm9\n"
            "subps %%xmm2, %%xmm9\n"
            "addsubps %%xmm9, %%xmm8\n"
            "movaps %%xmm8, %%xmm2\n"
            "movaps %%xmm3, %%xmm8\n"
            "shufps $160, %%xmm8, %%xmm8\n"
            "shufps $245, %%xmm3, %%xmm3\n"
            "xorps %%xmm9, %%xmm9\n"
            "subps %%xmm3, %%xmm9\n"
            "addsubps %%xmm9, %%xmm8\n"
            "movaps %%xmm8, %%xmm3\n"
            "movaps %%xmm4, %%xmm8\n"
            "shufps $160, %%xmm8, %%xmm8\n"
            "shufps $245, %%xmm4, %%xmm4\n"
            "xorps %%xmm9, %%xmm9\n"
            "subps %%xmm4, %%xmm9\n"
            "addsubps %%xmm9, %%xmm8\n"
            "movaps %%xmm8, %%xmm4\n"
            "movaps %%xmm5, %%xmm8\n"
            "shufps $160, %%xmm8, %%xmm8\n"
            "shufps $245, %%xmm5, %%xmm5\n"
            "xorps %%xmm9, %%xmm9\n"
            "subps %%xmm5, %%xmm9\n"
            "addsubps %%xmm9, %%xmm8\n"
            "movaps %%xmm8, %%xmm5\n"
            "movaps %%xmm6, %%xmm8\n"
            "shufps $160, %%xmm8, %%xmm8\n"
            "shufps $245, %%xmm6, %%xmm6\n"
            "xorps %%xmm9, %%xmm9\n"
            "subps %%xmm6, %%xmm9\n"
            "addsubps %%xmm9, %%xmm8\n"
            "movaps %%xmm8, %%xmm6\n"
            "movaps %%xmm7, %%xmm8\n"
            "shufps $160, %%xmm8, %%xmm8\n"
            "shufps $245, %%xmm7, %%xmm7\n"
            "xorps %%xmm9, %%xmm9\n"
            "subps %%xmm7, %%xmm9\n"
            "addsubps %%xmm9, %%xmm8\n"
            "movaps %%xmm8, %%xmm7\n"
            "movaps %%xmm0, %%xmm8\n"
            "shufps $68, %%xmm8, %%xmm8\n"
            "xorps %%xmm9, %%xmm9\n"
            "movaps %%xmm0, %%xmm10\n"
            "shufps $14, %%xmm9, %%xmm10\n"
            "movaps %%xmm0, %%xmm11\n"
            "shufps $224, %%xmm11, %%xmm9\n"
            "addps %%xmm8, %%xmm10\n"
            "subps %%xmm9, %%xmm10\n"
            "movaps %%xmm10, %%xmm0\n"
            "movaps %%xmm1, %%xmm8\n"
            "shufps $68, %%xmm8, %%xmm8\n"
            "xorps %%xmm9, %%xmm9\n"
            "movaps %%xmm1, %%xmm10\n"
            "shufps $14, %%xmm9, %%xmm10\n"
            "movaps %%xmm1, %%xmm11\n"
            "shufps $224, %%xmm11, %%xmm9\n"
            "addps %%xmm8, %%xmm10\n"
            "subps %%xmm9, %%xmm10\n"
            "movaps %%xmm10, %%xmm1\n"
            "movaps %%xmm2, %%xmm8\n"
            "shufps $68, %%xmm8, %%xmm8\n"
            "xorps %%xmm9, %%xmm9\n"
            "movaps %%xmm2, %%xmm10\n"
            "shufps $14, %%xmm9, %%xmm10\n"
            "movaps %%xmm2, %%xmm11\n"
            "shufps $224, %%xmm11, %%xmm9\n"
            "addps %%xmm8, %%xmm10\n"
            "subps %%xmm9, %%xmm10\n"
            "movaps %%xmm10, %%xmm2\n"
            "movaps %%xmm3, %%xmm8\n"
            "shufps $68, %%xmm8, %%xmm8\n"
            "xorps %%xmm9, %%xmm9\n"
            "movaps %%xmm3, %%xmm10\n"
            "shufps $14, %%xmm9, %%xmm10\n"
            "movaps %%xmm3, %%xmm11\n"
            "shufps $224, %%xmm11, %%xmm9\n"
            "addps %%xmm8, %%xmm10\n"
            "subps %%xmm9, %%xmm10\n"
            "movaps %%xmm10, %%xmm3\n"
            "movaps %%xmm4, %%xmm8\n"
            "shufps $68, %%xmm8, %%xmm8\n"
            "xorps %%xmm9, %%xmm9\n"
            "movaps %%xmm4, %%xmm10\n"
            "shufps $14, %%xmm9, %%xmm10\n"
            "movaps %%xmm4, %%xmm11\n"
            "shufps $224, %%xmm11, %%xmm9\n"
            "addps %%xmm8, %%xmm10\n"
            "subps %%xmm9, %%xmm10\n"
            "movaps %%xmm10, %%xmm4\n"
            "movaps %%xmm5, %%xmm8\n"
            "shufps $68, %%xmm8, %%xmm8\n"
            "xorps %%xmm9, %%xmm9\n"
            "movaps %%xmm5, %%xmm10\n"
            "shufps $14, %%xmm9, %%xmm10\n"
            "movaps %%xmm5, %%xmm11\n"
            "shufps $224, %%xmm11, %%xmm9\n"
            "addps %%xmm8, %%xmm10\n"
            "subps %%xmm9, %%xmm10\n"
            "movaps %%xmm10, %%xmm5\n"
            "movaps %%xmm6, %%xmm8\n"
            "shufps $68, %%xmm8, %%xmm8\n"
            "xorps %%xmm9, %%xmm9\n"
            "movaps %%xmm6, %%xmm10\n"
            "shufps $14, %%xmm9, %%xmm10\n"
            "movaps %%xmm6, %%xmm11\n"
            "shufps $224, %%xmm11, %%xmm9\n"
            "addps %%xmm8, %%xmm10\n"
            "subps %%xmm9, %%xmm10\n"
            "movaps %%xmm10, %%xmm6\n"
            "movaps %%xmm7, %%xmm8\n"
            "shufps $68, %%xmm8, %%xmm8\n"
            "xorps %%xmm9, %%xmm9\n"
            "movaps %%xmm7, %%xmm10\n"
            "shufps $14, %%xmm9, %%xmm10\n"
            "movaps %%xmm7, %%xmm11\n"
            "shufps $224, %%xmm11, %%xmm9\n"
            "addps %%xmm8, %%xmm10\n"
            "subps %%xmm9, %%xmm10\n"
            "movaps %%xmm10, %%xmm7\n"
            "movaps %%xmm0, %%xmm8\n"
            "movaps %%xmm0, %%xmm9\n"
            "addps %%xmm1, %%xmm8\n"
            "subps %%xmm1, %%xmm9\n"
            "movaps %%xmm2, %%xmm10\n"
            "movaps %%xmm2, %%xmm11\n"
            "addps %%xmm3, %%xmm10\n"
            "subps %%xmm3, %%xmm11\n"
            "movaps %%xmm4, %%xmm12\n"
            "movaps %%xmm4, %%xmm13\n"
            "addps %%xmm5, %%xmm12\n"
            "subps %%xmm5, %%xmm13\n"
            "movaps %%xmm6, %%xmm14\n"
            "movaps %%xmm6, %%xmm15\n"
            "addps %%xmm7, %%xmm14\n"
            "subps %%xmm7, %%xmm15\n"
            "movaps %%xmm8, %%xmm0\n"
            "movaps %%xmm8, %%xmm2\n"
            "addps %%xmm10, %%xmm0\n"
            "subps %%xmm10, %%xmm2\n"
            "movaps %%xmm9, %%xmm1\n"
            "movaps %%xmm9, %%xmm3\n"
            "addps %%xmm11, %%xmm1\n"
            "subps %%xmm11, %%xmm3\n"
            "movaps %%xmm12, %%xmm4\n"
            "movaps %%xmm12, %%xmm6\n"
            "addps %%xmm14, %%xmm4\n"
            "subps %%xmm14, %%xmm6\n"
            "movaps %%xmm13, %%xmm5\n"
            "movaps %%xmm13, %%xmm7\n"
            "addps %%xmm15, %%xmm5\n"
            "subps %%xmm15, %%xmm7\n"
            "movaps %%xmm0, %%xmm8\n"
            "movaps %%xmm0, %%xmm12\n"
            "addps %%xmm4, %%xmm8\n"
            "subps %%xmm4, %%xmm12\n"
            "movaps %%xmm1, %%xmm9\n"
            "movaps %%xmm1, %%xmm13\n"
            "addps %%xmm5, %%xmm9\n"
            "subps %%xmm5, %%xmm13\n"
            "movaps %%xmm2, %%xmm10\n"
            "movaps %%xmm2, %%xmm14\n"
            "addps %%xmm6, %%xmm10\n"
            "subps %%xmm6, %%xmm14\n"
            "movaps %%xmm3, %%xmm11\n"
            "movaps %%xmm3, %%xmm15\n"
            "addps %%xmm7, %%xmm11\n"
            "subps %%xmm7, %%xmm15\n"
            "movups %%xmm8, (%0)\n"
            "movups %%xmm9, (%1)\n"
            "movups %%xmm10, (%2)\n"
            "movups %%xmm11, (%3)\n"
            "movups %%xmm12, (%4)\n"
            "movups %%xmm13, (%5)\n"
            "movups %%xmm14, (%6)\n"
            "movups %%xmm15, (%7)\n" ::"r"(buf + j + k + 0),
            "r"(buf + j + k + 4), "r"(buf + j + k + 8), "r"(buf + j + k + 12),
            "r"(buf + j + k + 16), "r"(buf + j + k + 20), "r"(buf + j + k + 24),
            "r"(buf + j + k + 28)
            : "%xmm0", "%xmm1", "%xmm2", "%xmm3", "%xmm4", "%xmm5", "%xmm6",
              "%xmm7", "%xmm8", "%xmm9", "%xmm10", "%xmm11", "%xmm12", "%xmm13",
              "%xmm14", "%xmm15", "memory");
      }
    }
    for (int j = 0; j < 65536; j += 256) {
      for (int k = 0; k < 32; k += 4) {
        __asm__ volatile(
            "movups (%0), %%xmm0\n"
            "movups (%1), %%xmm1\n"
            "movups (%2), %%xmm2\n"
            "movups (%3), %%xmm3\n"
            "movups (%4), %%xmm4\n"
            "movups (%5), %%xmm5\n"
            "movups (%6), %%xmm6\n"
            "movups (%7), %%xmm7\n"
            "movaps %%xmm0, %%xmm8\n"
            "movaps %%xmm0, %%xmm9\n"
            "addps %%xmm1, %%xmm8\n"
            "subps %%xmm1, %%xmm9\n"
            "movaps %%xmm2, %%xmm10\n"
            "movaps %%xmm2, %%xmm11\n"
            "addps %%xmm3, %%xmm10\n"
            "subps %%xmm3, %%xmm11\n"
            "movaps %%xmm4, %%xmm12\n"
            "movaps %%xmm4, %%xmm13\n"
            "addps %%xmm5, %%xmm12\n"
            "subps %%xmm5, %%xmm13\n"
            "movaps %%xmm6, %%xmm14\n"
            "movaps %%xmm6, %%xmm15\n"
            "addps %%xmm7, %%xmm14\n"
            "subps %%xmm7, %%xmm15\n"
            "movaps %%xmm8, %%xmm0\n"
            "movaps %%xmm8, %%xmm2\n"
            "addps %%xmm10, %%xmm0\n"
            "subps %%xmm10, %%xmm2\n"
            "movaps %%xmm9, %%xmm1\n"
            "movaps %%xmm9, %%xmm3\n"
            "addps %%xmm11, %%xmm1\n"
            "subps %%xmm11, %%xmm3\n"
            "movaps %%xmm12, %%xmm4\n"
            "movaps %%xmm12, %%xmm6\n"
            "addps %%xmm14, %%xmm4\n"
            "subps %%xmm14, %%xmm6\n"
            "movaps %%xmm13, %%xmm5\n"
            "movaps %%xmm13, %%xmm7\n"
            "addps %%xmm15, %%xmm5\n"
            "subps %%xmm15, %%xmm7\n"
            "movaps %%xmm0, %%xmm8\n"
            "movaps %%xmm0, %%xmm12\n"
            "addps %%xmm4, %%xmm8\n"
            "subps %%xmm4, %%xmm12\n"
            "movaps %%xmm1, %%xmm9\n"
            "movaps %%xmm1, %%xmm13\n"
            "addps %%xmm5, %%xmm9\n"
            "subps %%xmm5, %%xmm13\n"
            "movaps %%xmm2, %%xmm10\n"
            "movaps %%xmm2, %%xmm14\n"
            "addps %%xmm6, %%xmm10\n"
            "subps %%xmm6, %%xmm14\n"
            "movaps %%xmm3, %%xmm11\n"
            "movaps %%xmm3, %%xmm15\n"
            "addps %%xmm7, %%xmm11\n"
            "subps %%xmm7, %%xmm15\n"
            "movups %%xmm8, (%0)\n"
            "movups %%xmm9, (%1)\n"
            "movups %%xmm10, (%2)\n"
            "movups %%xmm11, (%3)\n"
            "movups %%xmm12, (%4)\n"
            "movups %%xmm13, (%5)\n"
            "movups %%xmm14, (%6)\n"
            "movups %%xmm15, (%7)\n" ::"r"(buf + j + k + 0),
            "r"(buf + j + k + 32), "r"(buf + j + k + 64), "r"(buf + j + k + 96),
            "r"(buf + j + k + 128), "r"(buf + j + k + 160),
            "r"(buf + j + k + 192), "r"(buf + j + k + 224)
            : "%xmm0", "%xmm1", "%xmm2", "%xmm3", "%xmm4", "%xmm5", "%xmm6",
              "%xmm7", "%xmm8", "%xmm9", "%xmm10", "%xmm11", "%xmm12", "%xmm13",
              "%xmm14", "%xmm15", "memory");
      }
    }
    for (int j = 0; j < 65536; j += 2048) {
      for (int k = 0; k < 256; k += 4) {
        __asm__ volatile("movups (%0), %%xmm0\n"
                         "movups (%1), %%xmm1\n"
                         "movups (%2), %%xmm2\n"
                         "movups (%3), %%xmm3\n"
                         "movups (%4), %%xmm4\n"
                         "movups (%5), %%xmm5\n"
                         "movups (%6), %%xmm6\n"
                         "movups (%7), %%xmm7\n"
                         "movaps %%xmm0, %%xmm8\n"
                         "movaps %%xmm0, %%xmm9\n"
                         "addps %%xmm1, %%xmm8\n"
                         "subps %%xmm1, %%xmm9\n"
                         "movaps %%xmm2, %%xmm10\n"
                         "movaps %%xmm2, %%xmm11\n"
                         "addps %%xmm3, %%xmm10\n"
                         "subps %%xmm3, %%xmm11\n"
                         "movaps %%xmm4, %%xmm12\n"
                         "movaps %%xmm4, %%xmm13\n"
                         "addps %%xmm5, %%xmm12\n"
                         "subps %%xmm5, %%xmm13\n"
                         "movaps %%xmm6, %%xmm14\n"
                         "movaps %%xmm6, %%xmm15\n"
                         "addps %%xmm7, %%xmm14\n"
                         "subps %%xmm7, %%xmm15\n"
                         "movaps %%xmm8, %%xmm0\n"
                         "movaps %%xmm8, %%xmm2\n"
                         "addps %%xmm10, %%xmm0\n"
                         "subps %%xmm10, %%xmm2\n"
                         "movaps %%xmm9, %%xmm1\n"
                         "movaps %%xmm9, %%xmm3\n"
                         "addps %%xmm11, %%xmm1\n"
                         "subps %%xmm11, %%xmm3\n"
                         "movaps %%xmm12, %%xmm4\n"
                         "movaps %%xmm12, %%xmm6\n"
                         "addps %%xmm14, %%xmm4\n"
                         "subps %%xmm14, %%xmm6\n"
                         "movaps %%xmm13, %%xmm5\n"
                         "movaps %%xmm13, %%xmm7\n"
                         "addps %%xmm15, %%xmm5\n"
                         "subps %%xmm15, %%xmm7\n"
                         "movaps %%xmm0, %%xmm8\n"
                         "movaps %%xmm0, %%xmm12\n"
                         "addps %%xmm4, %%xmm8\n"
                         "subps %%xmm4, %%xmm12\n"
                         "movaps %%xmm1, %%xmm9\n"
                         "movaps %%xmm1, %%xmm13\n"
                         "addps %%xmm5, %%xmm9\n"
                         "subps %%xmm5, %%xmm13\n"
                         "movaps %%xmm2, %%xmm10\n"
                         "movaps %%xmm2, %%xmm14\n"
                         "addps %%xmm6, %%xmm10\n"
                         "subps %%xmm6, %%xmm14\n"
                         "movaps %%xmm3, %%xmm11\n"
                         "movaps %%xmm3, %%xmm15\n"
                         "addps %%xmm7, %%xmm11\n"
                         "subps %%xmm7, %%xmm15\n"
                         "movups %%xmm8, (%0)\n"
                         "movups %%xmm9, (%1)\n"
                         "movups %%xmm10, (%2)\n"
                         "movups %%xmm11, (%3)\n"
                         "movups %%xmm12, (%4)\n"
                         "movups %%xmm13, (%5)\n"
                         "movups %%xmm14, (%6)\n"
                         "movups %%xmm15, (%7)\n" ::"r"(buf + j + k + 0),
                         "r"(buf + j + k + 256), "r"(buf + j + k + 512),
                         "r"(buf + j + k + 768), "r"(buf + j + k + 1024),
                         "r"(buf + j + k + 1280), "r"(buf + j + k + 1536),
                         "r"(buf + j + k + 1792)
                         : "%xmm0", "%xmm1", "%xmm2", "%xmm3", "%xmm4", "%xmm5",
                           "%xmm6", "%xmm7", "%xmm8", "%xmm9", "%xmm10",
                           "%xmm11", "%xmm12", "%xmm13", "%xmm14", "%xmm15",
                           "memory");
      }
    }
    for (int j = 0; j < 65536; j += 16384) {
      for (int k = 0; k < 2048; k += 4) {
        __asm__ volatile("movups (%0), %%xmm0\n"
                         "movups (%1), %%xmm1\n"
                         "movups (%2), %%xmm2\n"
                         "movups (%3), %%xmm3\n"
                         "movups (%4), %%xmm4\n"
                         "movups (%5), %%xmm5\n"
                         "movups (%6), %%xmm6\n"
                         "movups (%7), %%xmm7\n"
                         "movaps %%xmm0, %%xmm8\n"
                         "movaps %%xmm0, %%xmm9\n"
                         "addps %%xmm1, %%xmm8\n"
                         "subps %%xmm1, %%xmm9\n"
                         "movaps %%xmm2, %%xmm10\n"
                         "movaps %%xmm2, %%xmm11\n"
                         "addps %%xmm3, %%xmm10\n"
                         "subps %%xmm3, %%xmm11\n"
                         "movaps %%xmm4, %%xmm12\n"
                         "movaps %%xmm4, %%xmm13\n"
                         "addps %%xmm5, %%xmm12\n"
                         "subps %%xmm5, %%xmm13\n"
                         "movaps %%xmm6, %%xmm14\n"
                         "movaps %%xmm6, %%xmm15\n"
                         "addps %%xmm7, %%xmm14\n"
                         "subps %%xmm7, %%xmm15\n"
                         "movaps %%xmm8, %%xmm0\n"
                         "movaps %%xmm8, %%xmm2\n"
                         "addps %%xmm10, %%xmm0\n"
                         "subps %%xmm10, %%xmm2\n"
                         "movaps %%xmm9, %%xmm1\n"
                         "movaps %%xmm9, %%xmm3\n"
                         "addps %%xmm11, %%xmm1\n"
                         "subps %%xmm11, %%xmm3\n"
                         "movaps %%xmm12, %%xmm4\n"
                         "movaps %%xmm12, %%xmm6\n"
                         "addps %%xmm14, %%xmm4\n"
                         "subps %%xmm14, %%xmm6\n"
                         "movaps %%xmm13, %%xmm5\n"
                         "movaps %%xmm13, %%xmm7\n"
                         "addps %%xmm15, %%xmm5\n"
                         "subps %%xmm15, %%xmm7\n"
                         "movaps %%xmm0, %%xmm8\n"
                         "movaps %%xmm0, %%xmm12\n"
                         "addps %%xmm4, %%xmm8\n"
                         "subps %%xmm4, %%xmm12\n"
                         "movaps %%xmm1, %%xmm9\n"
                         "movaps %%xmm1, %%xmm13\n"
                         "addps %%xmm5, %%xmm9\n"
                         "subps %%xmm5, %%xmm13\n"
                         "movaps %%xmm2, %%xmm10\n"
                         "movaps %%xmm2, %%xmm14\n"
                         "addps %%xmm6, %%xmm10\n"
                         "subps %%xmm6, %%xmm14\n"
                         "movaps %%xmm3, %%xmm11\n"
                         "movaps %%xmm3, %%xmm15\n"
                         "addps %%xmm7, %%xmm11\n"
                         "subps %%xmm7, %%xmm15\n"
                         "movups %%xmm8, (%0)\n"
                         "movups %%xmm9, (%1)\n"
                         "movups %%xmm10, (%2)\n"
                         "movups %%xmm11, (%3)\n"
                         "movups %%xmm12, (%4)\n"
                         "movups %%xmm13, (%5)\n"
                         "movups %%xmm14, (%6)\n"
                         "movups %%xmm15, (%7)\n" ::"r"(buf + j + k + 0),
                         "r"(buf + j + k + 2048), "r"(buf + j + k + 4096),
                         "r"(buf + j + k + 6144), "r"(buf + j + k + 8192),
                         "r"(buf + j + k + 10240), "r"(buf + j + k + 12288),
                         "r"(buf + j + k + 14336)
                         : "%xmm0", "%xmm1", "%xmm2", "%xmm3", "%xmm4", "%xmm5",
                           "%xmm6", "%xmm7", "%xmm8", "%xmm9", "%xmm10",
                           "%xmm11", "%xmm12", "%xmm13", "%xmm14", "%xmm15",
                           "memory");
      }
    }
    for (int j = 0; j < 65536; j += 65536) {
      for (int k = 0; k < 16384; k += 4) {
        __asm__ volatile("movups (%0), %%xmm0\n"
                         "movups (%1), %%xmm1\n"
                         "movups (%2), %%xmm2\n"
                         "movups (%3), %%xmm3\n"
                         "movaps %%xmm0, %%xmm8\n"
                         "movaps %%xmm0, %%xmm9\n"
                         "addps %%xmm1, %%xmm8\n"
                         "subps %%xmm1, %%xmm9\n"
                         "movaps %%xmm2, %%xmm10\n"
                         "movaps %%xmm2, %%xmm11\n"
                         "addps %%xmm3, %%xmm10\n"
                         "subps %%xmm3, %%xmm11\n"
                         "movaps %%xmm8, %%xmm0\n"
                         "movaps %%xmm8, %%xmm2\n"
                         "addps %%xmm10, %%xmm0\n"
                         "subps %%xmm10, %%xmm2\n"
                         "movaps %%xmm9, %%xmm1\n"
                         "movaps %%xmm9, %%xmm3\n"
                         "addps %%xmm11, %%xmm1\n"
                         "subps %%xmm11, %%xmm3\n"
                         "movups %%xmm0, (%0)\n"
                         "movups %%xmm1, (%1)\n"
                         "movups %%xmm2, (%2)\n"
                         "movups %%xmm3, (%3)\n" ::"r"(buf + j + k + 0),
                         "r"(buf + j + k + 16384), "r"(buf + j + k + 32768),
                         "r"(buf + j + k + 49152)
                         : "%xmm0", "%xmm1", "%xmm2", "%xmm3", "%xmm4", "%xmm5",
                           "%xmm6", "%xmm7", "%xmm8", "%xmm9", "%xmm10",
                           "%xmm11", "%xmm12", "%xmm13", "%xmm14", "%xmm15",
                           "memory");
      }
    }
    return;
  }
  if (depth == 19) {
    helper_float_28_recursive(buf + 0, 16);
    helper_float_28_recursive(buf + 65536, 16);
    helper_float_28_recursive(buf + 131072, 16);
    helper_float_28_recursive(buf + 196608, 16);
    helper_float_28_recursive(buf + 262144, 16);
    helper_float_28_recursive(buf + 327680, 16);
    helper_float_28_recursive(buf + 393216, 16);
    helper_float_28_recursive(buf + 458752, 16);
    for (int j = 0; j < 524288; j += 524288) {
      for (int k = 0; k < 65536; k += 4) {
        __asm__ volatile("movups (%0), %%xmm0\n"
                         "movups (%1), %%xmm1\n"
                         "movups (%2), %%xmm2\n"
                         "movups (%3), %%xmm3\n"
                         "movups (%4), %%xmm4\n"
                         "movups (%5), %%xmm5\n"
                         "movups (%6), %%xmm6\n"
                         "movups (%7), %%xmm7\n"
                         "movaps %%xmm0, %%xmm8\n"
                         "movaps %%xmm0, %%xmm9\n"
                         "addps %%xmm1, %%xmm8\n"
                         "subps %%xmm1, %%xmm9\n"
                         "movaps %%xmm2, %%xmm10\n"
                         "movaps %%xmm2, %%xmm11\n"
                         "addps %%xmm3, %%xmm10\n"
                         "subps %%xmm3, %%xmm11\n"
                         "movaps %%xmm4, %%xmm12\n"
                         "movaps %%xmm4, %%xmm13\n"
                         "addps %%xmm5, %%xmm12\n"
                         "subps %%xmm5, %%xmm13\n"
                         "movaps %%xmm6, %%xmm14\n"
                         "movaps %%xmm6, %%xmm15\n"
                         "addps %%xmm7, %%xmm14\n"
                         "subps %%xmm7, %%xmm15\n"
                         "movaps %%xmm8, %%xmm0\n"
                         "movaps %%xmm8, %%xmm2\n"
                         "addps %%xmm10, %%xmm0\n"
                         "subps %%xmm10, %%xmm2\n"
                         "movaps %%xmm9, %%xmm1\n"
                         "movaps %%xmm9, %%xmm3\n"
                         "addps %%xmm11, %%xmm1\n"
                         "subps %%xmm11, %%xmm3\n"
                         "movaps %%xmm12, %%xmm4\n"
                         "movaps %%xmm12, %%xmm6\n"
                         "addps %%xmm14, %%xmm4\n"
                         "subps %%xmm14, %%xmm6\n"
                         "movaps %%xmm13, %%xmm5\n"
                         "movaps %%xmm13, %%xmm7\n"
                         "addps %%xmm15, %%xmm5\n"
                         "subps %%xmm15, %%xmm7\n"
                         "movaps %%xmm0, %%xmm8\n"
                         "movaps %%xmm0, %%xmm12\n"
                         "addps %%xmm4, %%xmm8\n"
                         "subps %%xmm4, %%xmm12\n"
                         "movaps %%xmm1, %%xmm9\n"
                         "movaps %%xmm1, %%xmm13\n"
                         "addps %%xmm5, %%xmm9\n"
                         "subps %%xmm5, %%xmm13\n"
                         "movaps %%xmm2, %%xmm10\n"
                         "movaps %%xmm2, %%xmm14\n"
                         "addps %%xmm6, %%xmm10\n"
                         "subps %%xmm6, %%xmm14\n"
                         "movaps %%xmm3, %%xmm11\n"
                         "movaps %%xmm3, %%xmm15\n"
                         "addps %%xmm7, %%xmm11\n"
                         "subps %%xmm7, %%xmm15\n"
                         "movups %%xmm8, (%0)\n"
                         "movups %%xmm9, (%1)\n"
                         "movups %%xmm10, (%2)\n"
                         "movups %%xmm11, (%3)\n"
                         "movups %%xmm12, (%4)\n"
                         "movups %%xmm13, (%5)\n"
                         "movups %%xmm14, (%6)\n"
                         "movups %%xmm15, (%7)\n" ::"r"(buf + j + k + 0),
                         "r"(buf + j + k + 65536), "r"(buf + j + k + 131072),
                         "r"(buf + j + k + 196608), "r"(buf + j + k + 262144),
                         "r"(buf + j + k + 327680), "r"(buf + j + k + 393216),
                         "r"(buf + j + k + 458752)
                         : "%xmm0", "%xmm1", "%xmm2", "%xmm3", "%xmm4", "%xmm5",
                           "%xmm6", "%xmm7", "%xmm8", "%xmm9", "%xmm10",
                           "%xmm11", "%xmm12", "%xmm13", "%xmm14", "%xmm15",
                           "memory");
      }
    }
    return;
  }
  if (depth == 22) {
    helper_float_28_recursive(buf + 0, 19);
    helper_float_28_recursive(buf + 524288, 19);
    helper_float_28_recursive(buf + 1048576, 19);
    helper_float_28_recursive(buf + 1572864, 19);
    helper_float_28_recursive(buf + 2097152, 19);
    helper_float_28_recursive(buf + 2621440, 19);
    helper_float_28_recursive(buf + 3145728, 19);
    helper_float_28_recursive(buf + 3670016, 19);
    for (int j = 0; j < 4194304; j += 4194304) {
      for (int k = 0; k < 524288; k += 4) {
        __asm__ volatile("movups (%0), %%xmm0\n"
                         "movups (%1), %%xmm1\n"
                         "movups (%2), %%xmm2\n"
                         "movups (%3), %%xmm3\n"
                         "movups (%4), %%xmm4\n"
                         "movups (%5), %%xmm5\n"
                         "movups (%6), %%xmm6\n"
                         "movups (%7), %%xmm7\n"
                         "movaps %%xmm0, %%xmm8\n"
                         "movaps %%xmm0, %%xmm9\n"
                         "addps %%xmm1, %%xmm8\n"
                         "subps %%xmm1, %%xmm9\n"
                         "movaps %%xmm2, %%xmm10\n"
                         "movaps %%xmm2, %%xmm11\n"
                         "addps %%xmm3, %%xmm10\n"
                         "subps %%xmm3, %%xmm11\n"
                         "movaps %%xmm4, %%xmm12\n"
                         "movaps %%xmm4, %%xmm13\n"
                         "addps %%xmm5, %%xmm12\n"
                         "subps %%xmm5, %%xmm13\n"
                         "movaps %%xmm6, %%xmm14\n"
                         "movaps %%xmm6, %%xmm15\n"
                         "addps %%xmm7, %%xmm14\n"
                         "subps %%xmm7, %%xmm15\n"
                         "movaps %%xmm8, %%xmm0\n"
                         "movaps %%xmm8, %%xmm2\n"
                         "addps %%xmm10, %%xmm0\n"
                         "subps %%xmm10, %%xmm2\n"
                         "movaps %%xmm9, %%xmm1\n"
                         "movaps %%xmm9, %%xmm3\n"
                         "addps %%xmm11, %%xmm1\n"
                         "subps %%xmm11, %%xmm3\n"
                         "movaps %%xmm12, %%xmm4\n"
                         "movaps %%xmm12, %%xmm6\n"
                         "addps %%xmm14, %%xmm4\n"
                         "subps %%xmm14, %%xmm6\n"
                         "movaps %%xmm13, %%xmm5\n"
                         "movaps %%xmm13, %%xmm7\n"
                         "addps %%xmm15, %%xmm5\n"
                         "subps %%xmm15, %%xmm7\n"
                         "movaps %%xmm0, %%xmm8\n"
                         "movaps %%xmm0, %%xmm12\n"
                         "addps %%xmm4, %%xmm8\n"
                         "subps %%xmm4, %%xmm12\n"
                         "movaps %%xmm1, %%xmm9\n"
                         "movaps %%xmm1, %%xmm13\n"
                         "addps %%xmm5, %%xmm9\n"
                         "subps %%xmm5, %%xmm13\n"
                         "movaps %%xmm2, %%xmm10\n"
                         "movaps %%xmm2, %%xmm14\n"
                         "addps %%xmm6, %%xmm10\n"
                         "subps %%xmm6, %%xmm14\n"
                         "movaps %%xmm3, %%xmm11\n"
                         "movaps %%xmm3, %%xmm15\n"
                         "addps %%xmm7, %%xmm11\n"
                         "subps %%xmm7, %%xmm15\n"
                         "movups %%xmm8, (%0)\n"
                         "movups %%xmm9, (%1)\n"
                         "movups %%xmm10, (%2)\n"
                         "movups %%xmm11, (%3)\n"
                         "movups %%xmm12, (%4)\n"
                         "movups %%xmm13, (%5)\n"
                         "movups %%xmm14, (%6)\n"
                         "movups %%xmm15, (%7)\n" ::"r"(buf + j + k + 0),
                         "r"(buf + j + k + 524288), "r"(buf + j + k + 1048576),
                         "r"(buf + j + k + 1572864), "r"(buf + j + k + 2097152),
                         "r"(buf + j + k + 2621440), "r"(buf + j + k + 3145728),
                         "r"(buf + j + k + 3670016)
                         : "%xmm0", "%xmm1", "%xmm2", "%xmm3", "%xmm4", "%xmm5",
                           "%xmm6", "%xmm7", "%xmm8", "%xmm9", "%xmm10",
                           "%xmm11", "%xmm12", "%xmm13", "%xmm14", "%xmm15",
                           "memory");
      }
    }
    return;
  }
  if (depth == 25) {
    helper_float_28_recursive(buf + 0, 22);
    helper_float_28_recursive(buf + 4194304, 22);
    helper_float_28_recursive(buf + 8388608, 22);
    helper_float_28_recursive(buf + 12582912, 22);
    helper_float_28_recursive(buf + 16777216, 22);
    helper_float_28_recursive(buf + 20971520, 22);
    helper_float_28_recursive(buf + 25165824, 22);
    helper_float_28_recursive(buf + 29360128, 22);
    for (int j = 0; j < 33554432; j += 33554432) {
      for (int k = 0; k < 4194304; k += 4) {
        __asm__ volatile(
            "movups (%0), %%xmm0\n"
            "movups (%1), %%xmm1\n"
            "movups (%2), %%xmm2\n"
            "movups (%3), %%xmm3\n"
            "movups (%4), %%xmm4\n"
            "movups (%5), %%xmm5\n"
            "movups (%6), %%xmm6\n"
            "movups (%7), %%xmm7\n"
            "movaps %%xmm0, %%xmm8\n"
            "movaps %%xmm0, %%xmm9\n"
            "addps %%xmm1, %%xmm8\n"
            "subps %%xmm1, %%xmm9\n"
            "movaps %%xmm2, %%xmm10\n"
            "movaps %%xmm2, %%xmm11\n"
            "addps %%xmm3, %%xmm10\n"
            "subps %%xmm3, %%xmm11\n"
            "movaps %%xmm4, %%xmm12\n"
            "movaps %%xmm4, %%xmm13\n"
            "addps %%xmm5, %%xmm12\n"
            "subps %%xmm5, %%xmm13\n"
            "movaps %%xmm6, %%xmm14\n"
            "movaps %%xmm6, %%xmm15\n"
            "addps %%xmm7, %%xmm14\n"
            "subps %%xmm7, %%xmm15\n"
            "movaps %%xmm8, %%xmm0\n"
            "movaps %%xmm8, %%xmm2\n"
            "addps %%xmm10, %%xmm0\n"
            "subps %%xmm10, %%xmm2\n"
            "movaps %%xmm9, %%xmm1\n"
            "movaps %%xmm9, %%xmm3\n"
            "addps %%xmm11, %%xmm1\n"
            "subps %%xmm11, %%xmm3\n"
            "movaps %%xmm12, %%xmm4\n"
            "movaps %%xmm12, %%xmm6\n"
            "addps %%xmm14, %%xmm4\n"
            "subps %%xmm14, %%xmm6\n"
            "movaps %%xmm13, %%xmm5\n"
            "movaps %%xmm13, %%xmm7\n"
            "addps %%xmm15, %%xmm5\n"
            "subps %%xmm15, %%xmm7\n"
            "movaps %%xmm0, %%xmm8\n"
            "movaps %%xmm0, %%xmm12\n"
            "addps %%xmm4, %%xmm8\n"
            "subps %%xmm4, %%xmm12\n"
            "movaps %%xmm1, %%xmm9\n"
            "movaps %%xmm1, %%xmm13\n"
            "addps %%xmm5, %%xmm9\n"
            "subps %%xmm5, %%xmm13\n"
            "movaps %%xmm2, %%xmm10\n"
            "movaps %%xmm2, %%xmm14\n"
            "addps %%xmm6, %%xmm10\n"
            "subps %%xmm6, %%xmm14\n"
            "movaps %%xmm3, %%xmm11\n"
            "movaps %%xmm3, %%xmm15\n"
            "addps %%xmm7, %%xmm11\n"
            "subps %%xmm7, %%xmm15\n"
            "movups %%xmm8, (%0)\n"
            "movups %%xmm9, (%1)\n"
            "movups %%xmm10, (%2)\n"
            "movups %%xmm11, (%3)\n"
            "movups %%xmm12, (%4)\n"
            "movups %%xmm13, (%5)\n"
            "movups %%xmm14, (%6)\n"
            "movups %%xmm15, (%7)\n" ::"r"(buf + j + k + 0),
            "r"(buf + j + k + 4194304), "r"(buf + j + k + 8388608),
            "r"(buf + j + k + 12582912), "r"(buf + j + k + 16777216),
            "r"(buf + j + k + 20971520), "r"(buf + j + k + 25165824),
            "r"(buf + j + k + 29360128)
            : "%xmm0", "%xmm1", "%xmm2", "%xmm3", "%xmm4", "%xmm5", "%xmm6",
              "%xmm7", "%xmm8", "%xmm9", "%xmm10", "%xmm11", "%xmm12", "%xmm13",
              "%xmm14", "%xmm15", "memory");
      }
    }
    return;
  }
  if (depth == 28) {
    helper_float_28_recursive(buf + 0, 25);
    helper_float_28_recursive(buf + 33554432, 25);
    helper_float_28_recursive(buf + 67108864, 25);
    helper_float_28_recursive(buf + 100663296, 25);
    helper_float_28_recursive(buf + 134217728, 25);
    helper_float_28_recursive(buf + 167772160, 25);
    helper_float_28_recursive(buf + 201326592, 25);
    helper_float_28_recursive(buf + 234881024, 25);
    for (int j = 0; j < 268435456; j += 268435456) {
      for (int k = 0; k < 33554432; k += 4) {
        __asm__ volatile(
            "movups (%0), %%xmm0\n"
            "movups (%1), %%xmm1\n"
            "movups (%2), %%xmm2\n"
            "movups (%3), %%xmm3\n"
            "movups (%4), %%xmm4\n"
            "movups (%5), %%xmm5\n"
            "movups (%6), %%xmm6\n"
            "movups (%7), %%xmm7\n"
            "movaps %%xmm0, %%xmm8\n"
            "movaps %%xmm0, %%xmm9\n"
            "addps %%xmm1, %%xmm8\n"
            "subps %%xmm1, %%xmm9\n"
            "movaps %%xmm2, %%xmm10\n"
            "movaps %%xmm2, %%xmm11\n"
            "addps %%xmm3, %%xmm10\n"
            "subps %%xmm3, %%xmm11\n"
            "movaps %%xmm4, %%xmm12\n"
            "movaps %%xmm4, %%xmm13\n"
            "addps %%xmm5, %%xmm12\n"
            "subps %%xmm5, %%xmm13\n"
            "movaps %%xmm6, %%xmm14\n"
            "movaps %%xmm6, %%xmm15\n"
            "addps %%xmm7, %%xmm14\n"
            "subps %%xmm7, %%xmm15\n"
            "movaps %%xmm8, %%xmm0\n"
            "movaps %%xmm8, %%xmm2\n"
            "addps %%xmm10, %%xmm0\n"
            "subps %%xmm10, %%xmm2\n"
            "movaps %%xmm9, %%xmm1\n"
            "movaps %%xmm9, %%xmm3\n"
            "addps %%xmm11, %%xmm1\n"
            "subps %%xmm11, %%xmm3\n"
            "movaps %%xmm12, %%xmm4\n"
            "movaps %%xmm12, %%xmm6\n"
            "addps %%xmm14, %%xmm4\n"
            "subps %%xmm14, %%xmm6\n"
            "movaps %%xmm13, %%xmm5\n"
            "movaps %%xmm13, %%xmm7\n"
            "addps %%xmm15, %%xmm5\n"
            "subps %%xmm15, %%xmm7\n"
            "movaps %%xmm0, %%xmm8\n"
            "movaps %%xmm0, %%xmm12\n"
            "addps %%xmm4, %%xmm8\n"
            "subps %%xmm4, %%xmm12\n"
            "movaps %%xmm1, %%xmm9\n"
            "movaps %%xmm1, %%xmm13\n"
            "addps %%xmm5, %%xmm9\n"
            "subps %%xmm5, %%xmm13\n"
            "movaps %%xmm2, %%xmm10\n"
            "movaps %%xmm2, %%xmm14\n"
            "addps %%xmm6, %%xmm10\n"
            "subps %%xmm6, %%xmm14\n"
            "movaps %%xmm3, %%xmm11\n"
            "movaps %%xmm3, %%xmm15\n"
            "addps %%xmm7, %%xmm11\n"
            "subps %%xmm7, %%xmm15\n"
            "movups %%xmm8, (%0)\n"
            "movups %%xmm9, (%1)\n"
            "movups %%xmm10, (%2)\n"
            "movups %%xmm11, (%3)\n"
            "movups %%xmm12, (%4)\n"
            "movups %%xmm13, (%5)\n"
            "movups %%xmm14, (%6)\n"
            "movups %%xmm15, (%7)\n" ::"r"(buf + j + k + 0),
            "r"(buf + j + k + 33554432), "r"(buf + j + k + 67108864),
            "r"(buf + j + k + 100663296), "r"(buf + j + k + 134217728),
            "r"(buf + j + k + 167772160), "r"(buf + j + k + 201326592),
            "r"(buf + j + k + 234881024)
            : "%xmm0", "%xmm1", "%xmm2", "%xmm3", "%xmm4", "%xmm5", "%xmm6",
              "%xmm7", "%xmm8", "%xmm9", "%xmm10", "%xmm11", "%xmm12", "%xmm13",
              "%xmm14", "%xmm15", "memory");
      }
    }
    return;
  }
}


x86 assembly (clang, -O0):
<helper_float_28_recursive>:
push   %rbp
mov    %rsp,%rbp
sub    $0x60,%rsp
mov    %rdi,-0x8(%rbp)
mov    %esi,-0xc(%rbp)
cmpl   $0x10,-0xc(%rbp)
jne    1d95 <helper_float_28_recursive+0xc85>
movl   $0x0,-0x10(%rbp)
cmpl   $0x10000,-0x10(%rbp)
jge    159e <helper_float_28_recursive+0x48e>
movl   $0x0,-0x14(%rbp)
cmpl   $0x4,-0x14(%rbp)
jge    158b <helper_float_28_recursive+0x47b>
mov    -0x8(%rbp),%rax
movslq -0x10(%rbp),%rcx
shl    $0x2,%rcx
add    %rcx,%rax
movslq -0x14(%rbp),%rcx
shl    $0x2,%rcx
add    %rcx,%rax
mov    -0x8(%rbp),%rcx
movslq -0x10(%rbp),%rdx
shl    $0x2,%rdx
add    %rdx,%rcx
movslq -0x14(%rbp),%rdx
shl    $0x2,%rdx
add    %rdx,%rcx
add    $0x10,%rcx
mov    -0x8(%rbp),%rdx
movslq -0x10(%rbp),%rsi
shl    $0x2,%rsi
add    %rsi,%rdx
movslq -0x14(%rbp),%rsi
shl    $0x2,%rsi
add    %rsi,%rdx
add    $0x20,%rdx
mov    -0x8(%rbp),%rsi
movslq -0x10(%rbp),%rdi
shl    $0x2,%rdi
add    %rdi,%rsi
movslq -0x14(%rbp),%rdi
shl    $0x2,%rdi
add    %rdi,%rsi
add    $0x30,%rsi
mov    -0x8(%rbp),%rdi
movslq -0x10(%rbp),%r8
shl    $0x2,%r8
add    %r8,%rdi
movslq -0x14(%rbp),%r8
shl    $0x2,%r8
add    %r8,%rdi
add    $0x40,%rdi
mov    -0x8(%rbp),%r8
movslq -0x10(%rbp),%r9
shl    $0x2,%r9
add    %r9,%r8
movslq -0x14(%rbp),%r9
shl    $0x2,%r9
add    %r9,%r8
add    $0x50,%r8
mov    -0x8(%rbp),%r9
movslq -0x10(%rbp),%r10
shl    $0x2,%r10
add    %r10,%r9
movslq -0x14(%rbp),%r10
shl    $0x2,%r10
add    %r10,%r9
add    $0x60,%r9
mov    -0x8(%rbp),%r10
movslq -0x10(%rbp),%r11
shl    $0x2,%r11
add    %r11,%r10
movslq -0x14(%rbp),%r11
shl    $0x2,%r11
add    %r11,%r10
add    $0x70,%r10
movups (%rax),%xmm0
movups (%rcx),%xmm1
movups (%rdx),%xmm2
movups (%rsi),%xmm3
movups (%rdi),%xmm4
movups (%r8),%xmm5
movups (%r9),%xmm6
movups (%r10),%xmm7
movaps %xmm0,%xmm8
shufps $0xa0,%xmm8,%xmm8
shufps $0xf5,%xmm0,%xmm0
xorps  %xmm9,%xmm9
subps  %xmm0,%xmm9
addsubps %xmm9,%xmm8
movaps %xmm8,%xmm0
movaps %xmm1,%xmm8
shufps $0xa0,%xmm8,%xmm8
shufps $0xf5,%xmm1,%xmm1
xorps  %xmm9,%xmm9
subps  %xmm1,%xmm9
addsubps %xmm9,%xmm8
movaps %xmm8,%xmm1
movaps %xmm2,%xmm8
shufps $0xa0,%xmm8,%xmm8
shufps $0xf5,%xmm2,%xmm2
xorps  %xmm9,%xmm9
subps  %xmm2,%xmm9
addsubps %xmm9,%xmm8
movaps %xmm8,%xmm2
movaps %xmm3,%xmm8
shufps $0xa0,%xmm8,%xmm8
shufps $0xf5,%xmm3,%xmm3
xorps  %xmm9,%xmm9
subps  %xmm3,%xmm9
addsubps %xmm9,%xmm8
movaps %xmm8,%xmm3
movaps %xmm4,%xmm8
shufps $0xa0,%xmm8,%xmm8
shufps $0xf5,%xmm4,%xmm4
xorps  %xmm9,%xmm9
subps  %xmm4,%xmm9
addsubps %xmm9,%xmm8
movaps %xmm8,%xmm4
movaps %xmm5,%xmm8
shufps $0xa0,%xmm8,%xmm8
shufps $0xf5,%xmm5,%xmm5
xorps  %xmm9,%xmm9
subps  %xmm5,%xmm9
addsubps %xmm9,%xmm8
movaps %xmm8,%xmm5
movaps %xmm6,%xmm8
shufps $0xa0,%xmm8,%xmm8
shufps $0xf5,%xmm6,%xmm6
xorps  %xmm9,%xmm9
subps  %xmm6,%xmm9
addsubps %xmm9,%xmm8
movaps %xmm8,%xmm6
movaps %xmm7,%xmm8
shufps $0xa0,%xmm8,%xmm8
shufps $0xf5,%xmm7,%xmm7
xorps  %xmm9,%xmm9
subps  %xmm7,%xmm9
addsubps %xmm9,%xmm8
movaps %xmm8,%xmm7
movaps %xmm0,%xmm8
shufps $0x44,%xmm8,%xmm8
xorps  %xmm9,%xmm9
movaps %xmm0,%xmm10
shufps $0xe,%xmm9,%xmm10
movaps %xmm0,%xmm11
shufps $0xe0,%xmm11,%xmm9
addps  %xmm8,%xmm10
subps  %xmm9,%xmm10
movaps %xmm10,%xmm0
movaps %xmm1,%xmm8
shufps $0x44,%xmm8,%xmm8
xorps  %xmm9,%xmm9
movaps %xmm1,%xmm10
shufps $0xe,%xmm9,%xmm10
movaps %xmm1,%xmm11
shufps $0xe0,%xmm11,%xmm9
addps  %xmm8,%xmm10
subps  %xmm9,%xmm10
movaps %xmm10,%xmm1
movaps %xmm2,%xmm8
shufps $0x44,%xmm8,%xmm8
xorps  %xmm9,%xmm9
movaps %xmm2,%xmm10
shufps $0xe,%xmm9,%xmm10
movaps %xmm2,%xmm11
shufps $0xe0,%xmm11,%xmm9
addps  %xmm8,%xmm10
subps  %xmm9,%xmm10
movaps %xmm10,%xmm2
movaps %xmm3,%xmm8
shufps $0x44,%xmm8,%xmm8
xorps  %xmm9,%xmm9
movaps %xmm3,%xmm10
shufps $0xe,%xmm9,%xmm10
movaps %xmm3,%xmm11
shufps $0xe0,%xmm11,%xmm9
addps  %xmm8,%xmm10
subps  %xmm9,%xmm10
movaps %xmm10,%xmm3
movaps %xmm4,%xmm8
shufps $0x44,%xmm8,%xmm8
xorps  %xmm9,%xmm9
movaps %xmm4,%xmm10
shufps $0xe,%xmm9,%xmm10
movaps %xmm4,%xmm11
shufps $0xe0,%xmm11,%xmm9
addps  %xmm8,%xmm10
subps  %xmm9,%xmm10
movaps %xmm10,%xmm4
movaps %xmm5,%xmm8
shufps $0x44,%xmm8,%xmm8
xorps  %xmm9,%xmm9
movaps %xmm5,%xmm10
shufps $0xe,%xmm9,%xmm10
movaps %xmm5,%xmm11
shufps $0xe0,%xmm11,%xmm9
addps  %xmm8,%xmm10
subps  %xmm9,%xmm10
movaps %xmm10,%xmm5
movaps %xmm6,%xmm8
shufps $0x44,%xmm8,%xmm8
xorps  %xmm9,%xmm9
movaps %xmm6,%xmm10
shufps $0xe,%xmm9,%xmm10
movaps %xmm6,%xmm11
shufps $0xe0,%xmm11,%xmm9
addps  %xmm8,%xmm10
subps  %xmm9,%xmm10
movaps %xmm10,%xmm6
movaps %xmm7,%xmm8
shufps $0x44,%xmm8,%xmm8
xorps  %xmm9,%xmm9
movaps %xmm7,%xmm10
shufps $0xe,%xmm9,%xmm10
movaps %xmm7,%xmm11
shufps $0xe0,%xmm11,%xmm9
addps  %xmm8,%xmm10
subps  %xmm9,%xmm10
movaps %xmm10,%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm9
addps  %xmm1,%xmm8
subps  %xmm1,%xmm9
movaps %xmm2,%xmm10
movaps %xmm2,%xmm11
addps  %xmm3,%xmm10
subps  %xmm3,%xmm11
movaps %xmm4,%xmm12
movaps %xmm4,%xmm13
addps  %xmm5,%xmm12
subps  %xmm5,%xmm13
movaps %xmm6,%xmm14
movaps %xmm6,%xmm15
addps  %xmm7,%xmm14
subps  %xmm7,%xmm15
movaps %xmm8,%xmm0
movaps %xmm8,%xmm2
addps  %xmm10,%xmm0
subps  %xmm10,%xmm2
movaps %xmm9,%xmm1
movaps %xmm9,%xmm3
addps  %xmm11,%xmm1
subps  %xmm11,%xmm3
movaps %xmm12,%xmm4
movaps %xmm12,%xmm6
addps  %xmm14,%xmm4
subps  %xmm14,%xmm6
movaps %xmm13,%xmm5
movaps %xmm13,%xmm7
addps  %xmm15,%xmm5
subps  %xmm15,%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm12
addps  %xmm4,%xmm8
subps  %xmm4,%xmm12
movaps %xmm1,%xmm9
movaps %xmm1,%xmm13
addps  %xmm5,%xmm9
subps  %xmm5,%xmm13
movaps %xmm2,%xmm10
movaps %xmm2,%xmm14
addps  %xmm6,%xmm10
subps  %xmm6,%xmm14
movaps %xmm3,%xmm11
movaps %xmm3,%xmm15
addps  %xmm7,%xmm11
subps  %xmm7,%xmm15
movups %xmm8,(%rax)
movups %xmm9,(%rcx)
movups %xmm10,(%rdx)
movups %xmm11,(%rsi)
movups %xmm12,(%rdi)
movups %xmm13,(%r8)
movups %xmm14,(%r9)
movups %xmm15,(%r10)
mov    -0x14(%rbp),%eax
add    $0x4,%eax
mov    %eax,-0x14(%rbp)
jmp    1144 <helper_float_28_recursive+0x34>
jmp    1590 <helper_float_28_recursive+0x480>
mov    -0x10(%rbp),%eax
add    $0x20,%eax
mov    %eax,-0x10(%rbp)
jmp    1130 <helper_float_28_recursive+0x20>
movl   $0x0,-0x18(%rbp)
cmpl   $0x10000,-0x18(%rbp)
jge    17e2 <helper_float_28_recursive+0x6d2>
movl   $0x0,-0x1c(%rbp)
cmpl   $0x20,-0x1c(%rbp)
jge    17cd <helper_float_28_recursive+0x6bd>
mov    -0x8(%rbp),%rax
movslq -0x18(%rbp),%rcx
shl    $0x2,%rcx
add    %rcx,%rax
movslq -0x1c(%rbp),%rcx
shl    $0x2,%rcx
add    %rcx,%rax
mov    -0x8(%rbp),%rcx
movslq -0x18(%rbp),%rdx
shl    $0x2,%rdx
add    %rdx,%rcx
movslq -0x1c(%rbp),%rdx
shl    $0x2,%rdx
add    %rdx,%rcx
add    $0x80,%rcx
mov    -0x8(%rbp),%rdx
movslq -0x18(%rbp),%rsi
shl    $0x2,%rsi
add    %rsi,%rdx
movslq -0x1c(%rbp),%rsi
shl    $0x2,%rsi
add    %rsi,%rdx
add    $0x100,%rdx
mov    -0x8(%rbp),%rsi
movslq -0x18(%rbp),%rdi
shl    $0x2,%rdi
add    %rdi,%rsi
movslq -0x1c(%rbp),%rdi
shl    $0x2,%rdi
add    %rdi,%rsi
add    $0x180,%rsi
mov    -0x8(%rbp),%rdi
movslq -0x18(%rbp),%r8
shl    $0x2,%r8
add    %r8,%rdi
movslq -0x1c(%rbp),%r8
shl    $0x2,%r8
add    %r8,%rdi
add    $0x200,%rdi
mov    -0x8(%rbp),%r8
movslq -0x18(%rbp),%r9
shl    $0x2,%r9
add    %r9,%r8
movslq -0x1c(%rbp),%r9
shl    $0x2,%r9
add    %r9,%r8
add    $0x280,%r8
mov    -0x8(%rbp),%r9
movslq -0x18(%rbp),%r10
shl    $0x2,%r10
add    %r10,%r9
movslq -0x1c(%rbp),%r10
shl    $0x2,%r10
add    %r10,%r9
add    $0x300,%r9
mov    -0x8(%rbp),%r10
movslq -0x18(%rbp),%r11
shl    $0x2,%r11
add    %r11,%r10
movslq -0x1c(%rbp),%r11
shl    $0x2,%r11
add    %r11,%r10
add    $0x380,%r10
movups (%rax),%xmm0
movups (%rcx),%xmm1
movups (%rdx),%xmm2
movups (%rsi),%xmm3
movups (%rdi),%xmm4
movups (%r8),%xmm5
movups (%r9),%xmm6
movups (%r10),%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm9
addps  %xmm1,%xmm8
subps  %xmm1,%xmm9
movaps %xmm2,%xmm10
movaps %xmm2,%xmm11
addps  %xmm3,%xmm10
subps  %xmm3,%xmm11
movaps %xmm4,%xmm12
movaps %xmm4,%xmm13
addps  %xmm5,%xmm12
subps  %xmm5,%xmm13
movaps %xmm6,%xmm14
movaps %xmm6,%xmm15
addps  %xmm7,%xmm14
subps  %xmm7,%xmm15
movaps %xmm8,%xmm0
movaps %xmm8,%xmm2
addps  %xmm10,%xmm0
subps  %xmm10,%xmm2
movaps %xmm9,%xmm1
movaps %xmm9,%xmm3
addps  %xmm11,%xmm1
subps  %xmm11,%xmm3
movaps %xmm12,%xmm4
movaps %xmm12,%xmm6
addps  %xmm14,%xmm4
subps  %xmm14,%xmm6
movaps %xmm13,%xmm5
movaps %xmm13,%xmm7
addps  %xmm15,%xmm5
subps  %xmm15,%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm12
addps  %xmm4,%xmm8
subps  %xmm4,%xmm12
movaps %xmm1,%xmm9
movaps %xmm1,%xmm13
addps  %xmm5,%xmm9
subps  %xmm5,%xmm13
movaps %xmm2,%xmm10
movaps %xmm2,%xmm14
addps  %xmm6,%xmm10
subps  %xmm6,%xmm14
movaps %xmm3,%xmm11
movaps %xmm3,%xmm15
addps  %xmm7,%xmm11
subps  %xmm7,%xmm15
movups %xmm8,(%rax)
movups %xmm9,(%rcx)
movups %xmm10,(%rdx)
movups %xmm11,(%rsi)
movups %xmm12,(%rdi)
movups %xmm13,(%r8)
movups %xmm14,(%r9)
movups %xmm15,(%r10)
mov    -0x1c(%rbp),%eax
add    $0x4,%eax
mov    %eax,-0x1c(%rbp)
jmp    15b9 <helper_float_28_recursive+0x4a9>
jmp    17d2 <helper_float_28_recursive+0x6c2>
mov    -0x18(%rbp),%eax
add    $0x100,%eax
mov    %eax,-0x18(%rbp)
jmp    15a5 <helper_float_28_recursive+0x495>
movl   $0x0,-0x20(%rbp)
cmpl   $0x10000,-0x20(%rbp)
jge    1a29 <helper_float_28_recursive+0x919>
movl   $0x0,-0x24(%rbp)
cmpl   $0x100,-0x24(%rbp)
jge    1a14 <helper_float_28_recursive+0x904>
mov    -0x8(%rbp),%rax
movslq -0x20(%rbp),%rcx
shl    $0x2,%rcx
add    %rcx,%rax
movslq -0x24(%rbp),%rcx
shl    $0x2,%rcx
add    %rcx,%rax
mov    -0x8(%rbp),%rcx
movslq -0x20(%rbp),%rdx
shl    $0x2,%rdx
add    %rdx,%rcx
movslq -0x24(%rbp),%rdx
shl    $0x2,%rdx
add    %rdx,%rcx
add    $0x400,%rcx
mov    -0x8(%rbp),%rdx
movslq -0x20(%rbp),%rsi
shl    $0x2,%rsi
add    %rsi,%rdx
movslq -0x24(%rbp),%rsi
shl    $0x2,%rsi
add    %rsi,%rdx
add    $0x800,%rdx
mov    -0x8(%rbp),%rsi
movslq -0x20(%rbp),%rdi
shl    $0x2,%rdi
add    %rdi,%rsi
movslq -0x24(%rbp),%rdi
shl    $0x2,%rdi
add    %rdi,%rsi
add    $0xc00,%rsi
mov    -0x8(%rbp),%rdi
movslq -0x20(%rbp),%r8
shl    $0x2,%r8
add    %r8,%rdi
movslq -0x24(%rbp),%r8
shl    $0x2,%r8
add    %r8,%rdi
add    $0x1000,%rdi
mov    -0x8(%rbp),%r8
movslq -0x20(%rbp),%r9
shl    $0x2,%r9
add    %r9,%r8
movslq -0x24(%rbp),%r9
shl    $0x2,%r9
add    %r9,%r8
add    $0x1400,%r8
mov    -0x8(%rbp),%r9
movslq -0x20(%rbp),%r10
shl    $0x2,%r10
add    %r10,%r9
movslq -0x24(%rbp),%r10
shl    $0x2,%r10
add    %r10,%r9
add    $0x1800,%r9
mov    -0x8(%rbp),%r10
movslq -0x20(%rbp),%r11
shl    $0x2,%r11
add    %r11,%r10
movslq -0x24(%rbp),%r11
shl    $0x2,%r11
add    %r11,%r10
add    $0x1c00,%r10
movups (%rax),%xmm0
movups (%rcx),%xmm1
movups (%rdx),%xmm2
movups (%rsi),%xmm3
movups (%rdi),%xmm4
movups (%r8),%xmm5
movups (%r9),%xmm6
movups (%r10),%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm9
addps  %xmm1,%xmm8
subps  %xmm1,%xmm9
movaps %xmm2,%xmm10
movaps %xmm2,%xmm11
addps  %xmm3,%xmm10
subps  %xmm3,%xmm11
movaps %xmm4,%xmm12
movaps %xmm4,%xmm13
addps  %xmm5,%xmm12
subps  %xmm5,%xmm13
movaps %xmm6,%xmm14
movaps %xmm6,%xmm15
addps  %xmm7,%xmm14
subps  %xmm7,%xmm15
movaps %xmm8,%xmm0
movaps %xmm8,%xmm2
addps  %xmm10,%xmm0
subps  %xmm10,%xmm2
movaps %xmm9,%xmm1
movaps %xmm9,%xmm3
addps  %xmm11,%xmm1
subps  %xmm11,%xmm3
movaps %xmm12,%xmm4
movaps %xmm12,%xmm6
addps  %xmm14,%xmm4
subps  %xmm14,%xmm6
movaps %xmm13,%xmm5
movaps %xmm13,%xmm7
addps  %xmm15,%xmm5
subps  %xmm15,%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm12
addps  %xmm4,%xmm8
subps  %xmm4,%xmm12
movaps %xmm1,%xmm9
movaps %xmm1,%xmm13
addps  %xmm5,%xmm9
subps  %xmm5,%xmm13
movaps %xmm2,%xmm10
movaps %xmm2,%xmm14
addps  %xmm6,%xmm10
subps  %xmm6,%xmm14
movaps %xmm3,%xmm11
movaps %xmm3,%xmm15
addps  %xmm7,%xmm11
subps  %xmm7,%xmm15
movups %xmm8,(%rax)
movups %xmm9,(%rcx)
movups %xmm10,(%rdx)
movups %xmm11,(%rsi)
movups %xmm12,(%rdi)
movups %xmm13,(%r8)
movups %xmm14,(%r9)
movups %xmm15,(%r10)
mov    -0x24(%rbp),%eax
add    $0x4,%eax
mov    %eax,-0x24(%rbp)
jmp    17fd <helper_float_28_recursive+0x6ed>
jmp    1a19 <helper_float_28_recursive+0x909>
mov    -0x20(%rbp),%eax
add    $0x800,%eax
mov    %eax,-0x20(%rbp)
jmp    17e9 <helper_float_28_recursive+0x6d9>
movl   $0x0,-0x28(%rbp)
cmpl   $0x10000,-0x28(%rbp)
jge    1c70 <helper_float_28_recursive+0xb60>
movl   $0x0,-0x2c(%rbp)
cmpl   $0x800,-0x2c(%rbp)
jge    1c5b <helper_float_28_recursive+0xb4b>
mov    -0x8(%rbp),%rax
movslq -0x28(%rbp),%rcx
shl    $0x2,%rcx
add    %rcx,%rax
movslq -0x2c(%rbp),%rcx
shl    $0x2,%rcx
add    %rcx,%rax
mov    -0x8(%rbp),%rcx
movslq -0x28(%rbp),%rdx
shl    $0x2,%rdx
add    %rdx,%rcx
movslq -0x2c(%rbp),%rdx
shl    $0x2,%rdx
add    %rdx,%rcx
add    $0x2000,%rcx
mov    -0x8(%rbp),%rdx
movslq -0x28(%rbp),%rsi
shl    $0x2,%rsi
add    %rsi,%rdx
movslq -0x2c(%rbp),%rsi
shl    $0x2,%rsi
add    %rsi,%rdx
add    $0x4000,%rdx
mov    -0x8(%rbp),%rsi
movslq -0x28(%rbp),%rdi
shl    $0x2,%rdi
add    %rdi,%rsi
movslq -0x2c(%rbp),%rdi
shl    $0x2,%rdi
add    %rdi,%rsi
add    $0x6000,%rsi
mov    -0x8(%rbp),%rdi
movslq -0x28(%rbp),%r8
shl    $0x2,%r8
add    %r8,%rdi
movslq -0x2c(%rbp),%r8
shl    $0x2,%r8
add    %r8,%rdi
add    $0x8000,%rdi
mov    -0x8(%rbp),%r8
movslq -0x28(%rbp),%r9
shl    $0x2,%r9
add    %r9,%r8
movslq -0x2c(%rbp),%r9
shl    $0x2,%r9
add    %r9,%r8
add    $0xa000,%r8
mov    -0x8(%rbp),%r9
movslq -0x28(%rbp),%r10
shl    $0x2,%r10
add    %r10,%r9
movslq -0x2c(%rbp),%r10
shl    $0x2,%r10
add    %r10,%r9
add    $0xc000,%r9
mov    -0x8(%rbp),%r10
movslq -0x28(%rbp),%r11
shl    $0x2,%r11
add    %r11,%r10
movslq -0x2c(%rbp),%r11
shl    $0x2,%r11
add    %r11,%r10
add    $0xe000,%r10
movups (%rax),%xmm0
movups (%rcx),%xmm1
movups (%rdx),%xmm2
movups (%rsi),%xmm3
movups (%rdi),%xmm4
movups (%r8),%xmm5
movups (%r9),%xmm6
movups (%r10),%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm9
addps  %xmm1,%xmm8
subps  %xmm1,%xmm9
movaps %xmm2,%xmm10
movaps %xmm2,%xmm11
addps  %xmm3,%xmm10
subps  %xmm3,%xmm11
movaps %xmm4,%xmm12
movaps %xmm4,%xmm13
addps  %xmm5,%xmm12
subps  %xmm5,%xmm13
movaps %xmm6,%xmm14
movaps %xmm6,%xmm15
addps  %xmm7,%xmm14
subps  %xmm7,%xmm15
movaps %xmm8,%xmm0
movaps %xmm8,%xmm2
addps  %xmm10,%xmm0
subps  %xmm10,%xmm2
movaps %xmm9,%xmm1
movaps %xmm9,%xmm3
addps  %xmm11,%xmm1
subps  %xmm11,%xmm3
movaps %xmm12,%xmm4
movaps %xmm12,%xmm6
addps  %xmm14,%xmm4
subps  %xmm14,%xmm6
movaps %xmm13,%xmm5
movaps %xmm13,%xmm7
addps  %xmm15,%xmm5
subps  %xmm15,%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm12
addps  %xmm4,%xmm8
subps  %xmm4,%xmm12
movaps %xmm1,%xmm9
movaps %xmm1,%xmm13
addps  %xmm5,%xmm9
subps  %xmm5,%xmm13
movaps %xmm2,%xmm10
movaps %xmm2,%xmm14
addps  %xmm6,%xmm10
subps  %xmm6,%xmm14
movaps %xmm3,%xmm11
movaps %xmm3,%xmm15
addps  %xmm7,%xmm11
subps  %xmm7,%xmm15
movups %xmm8,(%rax)
movups %xmm9,(%rcx)
movups %xmm10,(%rdx)
movups %xmm11,(%rsi)
movups %xmm12,(%rdi)
movups %xmm13,(%r8)
movups %xmm14,(%r9)
movups %xmm15,(%r10)
mov    -0x2c(%rbp),%eax
add    $0x4,%eax
mov    %eax,-0x2c(%rbp)
jmp    1a44 <helper_float_28_recursive+0x934>
jmp    1c60 <helper_float_28_recursive+0xb50>
mov    -0x28(%rbp),%eax
add    $0x4000,%eax
mov    %eax,-0x28(%rbp)
jmp    1a30 <helper_float_28_recursive+0x920>
movl   $0x0,-0x30(%rbp)
cmpl   $0x10000,-0x30(%rbp)
jge    1d90 <helper_float_28_recursive+0xc80>
movl   $0x0,-0x34(%rbp)
cmpl   $0x4000,-0x34(%rbp)
jge    1d7b <helper_float_28_recursive+0xc6b>
mov    -0x8(%rbp),%rax
movslq -0x30(%rbp),%rcx
shl    $0x2,%rcx
add    %rcx,%rax
movslq -0x34(%rbp),%rcx
shl    $0x2,%rcx
add    %rcx,%rax
mov    -0x8(%rbp),%rcx
movslq -0x30(%rbp),%rdx
shl    $0x2,%rdx
add    %rdx,%rcx
movslq -0x34(%rbp),%rdx
shl    $0x2,%rdx
add    %rdx,%rcx
add    $0x10000,%rcx
mov    -0x8(%rbp),%rdx
movslq -0x30(%rbp),%rsi
shl    $0x2,%rsi
add    %rsi,%rdx
movslq -0x34(%rbp),%rsi
shl    $0x2,%rsi
add    %rsi,%rdx
add    $0x20000,%rdx
mov    -0x8(%rbp),%rsi
movslq -0x30(%rbp),%rdi
shl    $0x2,%rdi
add    %rdi,%rsi
movslq -0x34(%rbp),%rdi
shl    $0x2,%rdi
add    %rdi,%rsi
add    $0x30000,%rsi
movups (%rax),%xmm0
movups (%rcx),%xmm1
movups (%rdx),%xmm2
movups (%rsi),%xmm3
movaps %xmm0,%xmm8
movaps %xmm0,%xmm9
addps  %xmm1,%xmm8
subps  %xmm1,%xmm9
movaps %xmm2,%xmm10
movaps %xmm2,%xmm11
addps  %xmm3,%xmm10
subps  %xmm3,%xmm11
movaps %xmm8,%xmm0
movaps %xmm8,%xmm2
addps  %xmm10,%xmm0
subps  %xmm10,%xmm2
movaps %xmm9,%xmm1
movaps %xmm9,%xmm3
addps  %xmm11,%xmm1
subps  %xmm11,%xmm3
movups %xmm0,(%rax)
movups %xmm1,(%rcx)
movups %xmm2,(%rdx)
movups %xmm3,(%rsi)
mov    -0x34(%rbp),%eax
add    $0x4,%eax
mov    %eax,-0x34(%rbp)
jmp    1c8b <helper_float_28_recursive+0xb7b>
jmp    1d80 <helper_float_28_recursive+0xc70>
mov    -0x30(%rbp),%eax
add    $0x10000,%eax
mov    %eax,-0x30(%rbp)
jmp    1c77 <helper_float_28_recursive+0xb67>
jmp    2971 <helper_float_28_recursive+0x1861>
cmpl   $0x13,-0xc(%rbp)
jne    208c <helper_float_28_recursive+0xf7c>
mov    -0x8(%rbp),%rdi
mov    $0x10,%esi
call   1030 <helper_float_28_recursive@plt>
mov    -0x8(%rbp),%rdi
add    $0x40000,%rdi
mov    $0x10,%esi
call   1030 <helper_float_28_recursive@plt>
mov    -0x8(%rbp),%rdi
add    $0x80000,%rdi
mov    $0x10,%esi
call   1030 <helper_float_28_recursive@plt>
mov    -0x8(%rbp),%rdi
add    $0xc0000,%rdi
mov    $0x10,%esi
call   1030 <helper_float_28_recursive@plt>
mov    -0x8(%rbp),%rdi
add    $0x100000,%rdi
mov    $0x10,%esi
call   1030 <helper_float_28_recursive@plt>
mov    -0x8(%rbp),%rdi
add    $0x140000,%rdi
mov    $0x10,%esi
call   1030 <helper_float_28_recursive@plt>
mov    -0x8(%rbp),%rdi
add    $0x180000,%rdi
mov    $0x10,%esi
call   1030 <helper_float_28_recursive@plt>
mov    -0x8(%rbp),%rdi
add    $0x1c0000,%rdi
mov    $0x10,%esi
call   1030 <helper_float_28_recursive@plt>
movl   $0x0,-0x38(%rbp)
cmpl   $0x80000,-0x38(%rbp)
jge    2087 <helper_float_28_recursive+0xf77>
movl   $0x0,-0x3c(%rbp)
cmpl   $0x10000,-0x3c(%rbp)
jge    2072 <helper_float_28_recursive+0xf62>
mov    -0x8(%rbp),%rax
movslq -0x38(%rbp),%rcx
shl    $0x2,%rcx
add    %rcx,%rax
movslq -0x3c(%rbp),%rcx
shl    $0x2,%rcx
add    %rcx,%rax
mov    -0x8(%rbp),%rcx
movslq -0x38(%rbp),%rdx
shl    $0x2,%rdx
add    %rdx,%rcx
movslq -0x3c(%rbp),%rdx
shl    $0x2,%rdx
add    %rdx,%rcx
add    $0x40000,%rcx
mov    -0x8(%rbp),%rdx
movslq -0x38(%rbp),%rsi
shl    $0x2,%rsi
add    %rsi,%rdx
movslq -0x3c(%rbp),%rsi
shl    $0x2,%rsi
add    %rsi,%rdx
add    $0x80000,%rdx
mov    -0x8(%rbp),%rsi
movslq -0x38(%rbp),%rdi
shl    $0x2,%rdi
add    %rdi,%rsi
movslq -0x3c(%rbp),%rdi
shl    $0x2,%rdi
add    %rdi,%rsi
add    $0xc0000,%rsi
mov    -0x8(%rbp),%rdi
movslq -0x38(%rbp),%r8
shl    $0x2,%r8
add    %r8,%rdi
movslq -0x3c(%rbp),%r8
shl    $0x2,%r8
add    %r8,%rdi
add    $0x100000,%rdi
mov    -0x8(%rbp),%r8
movslq -0x38(%rbp),%r9
shl    $0x2,%r9
add    %r9,%r8
movslq -0x3c(%rbp),%r9
shl    $0x2,%r9
add    %r9,%r8
add    $0x140000,%r8
mov    -0x8(%rbp),%r9
movslq -0x38(%rbp),%r10
shl    $0x2,%r10
add    %r10,%r9
movslq -0x3c(%rbp),%r10
shl    $0x2,%r10
add    %r10,%r9
add    $0x180000,%r9
mov    -0x8(%rbp),%r10
movslq -0x38(%rbp),%r11
shl    $0x2,%r11
add    %r11,%r10
movslq -0x3c(%rbp),%r11
shl    $0x2,%r11
add    %r11,%r10
add    $0x1c0000,%r10
movups (%rax),%xmm0
movups (%rcx),%xmm1
movups (%rdx),%xmm2
movups (%rsi),%xmm3
movups (%rdi),%xmm4
movups (%r8),%xmm5
movups (%r9),%xmm6
movups (%r10),%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm9
addps  %xmm1,%xmm8
subps  %xmm1,%xmm9
movaps %xmm2,%xmm10
movaps %xmm2,%xmm11
addps  %xmm3,%xmm10
subps  %xmm3,%xmm11
movaps %xmm4,%xmm12
movaps %xmm4,%xmm13
addps  %xmm5,%xmm12
subps  %xmm5,%xmm13
movaps %xmm6,%xmm14
movaps %xmm6,%xmm15
addps  %xmm7,%xmm14
subps  %xmm7,%xmm15
movaps %xmm8,%xmm0
movaps %xmm8,%xmm2
addps  %xmm10,%xmm0
subps  %xmm10,%xmm2
movaps %xmm9,%xmm1
movaps %xmm9,%xmm3
addps  %xmm11,%xmm1
subps  %xmm11,%xmm3
movaps %xmm12,%xmm4
movaps %xmm12,%xmm6
addps  %xmm14,%xmm4
subps  %xmm14,%xmm6
movaps %xmm13,%xmm5
movaps %xmm13,%xmm7
addps  %xmm15,%xmm5
subps  %xmm15,%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm12
addps  %xmm4,%xmm8
subps  %xmm4,%xmm12
movaps %xmm1,%xmm9
movaps %xmm1,%xmm13
addps  %xmm5,%xmm9
subps  %xmm5,%xmm13
movaps %xmm2,%xmm10
movaps %xmm2,%xmm14
addps  %xmm6,%xmm10
subps  %xmm6,%xmm14
movaps %xmm3,%xmm11
movaps %xmm3,%xmm15
addps  %xmm7,%xmm11
subps  %xmm7,%xmm15
movups %xmm8,(%rax)
movups %xmm9,(%rcx)
movups %xmm10,(%rdx)
movups %xmm11,(%rsi)
movups %xmm12,(%rdi)
movups %xmm13,(%r8)
movups %xmm14,(%r9)
movups %xmm15,(%r10)
mov    -0x3c(%rbp),%eax
add    $0x4,%eax
mov    %eax,-0x3c(%rbp)
jmp    1e5b <helper_float_28_recursive+0xd4b>
jmp    2077 <helper_float_28_recursive+0xf67>
mov    -0x38(%rbp),%eax
add    $0x80000,%eax
mov    %eax,-0x38(%rbp)
jmp    1e47 <helper_float_28_recursive+0xd37>
jmp    2971 <helper_float_28_recursive+0x1861>
cmpl   $0x16,-0xc(%rbp)
jne    2383 <helper_float_28_recursive+0x1273>
mov    -0x8(%rbp),%rdi
mov    $0x13,%esi
call   1030 <helper_float_28_recursive@plt>
mov    -0x8(%rbp),%rdi
add    $0x200000,%rdi
mov    $0x13,%esi
call   1030 <helper_float_28_recursive@plt>
mov    -0x8(%rbp),%rdi
add    $0x400000,%rdi
mov    $0x13,%esi
call   1030 <helper_float_28_recursive@plt>
mov    -0x8(%rbp),%rdi
add    $0x600000,%rdi
mov    $0x13,%esi
call   1030 <helper_float_28_recursive@plt>
mov    -0x8(%rbp),%rdi
add    $0x800000,%rdi
mov    $0x13,%esi
call   1030 <helper_float_28_recursive@plt>
mov    -0x8(%rbp),%rdi
add    $0xa00000,%rdi
mov    $0x13,%esi
call   1030 <helper_float_28_recursive@plt>
mov    -0x8(%rbp),%rdi
add    $0xc00000,%rdi
mov    $0x13,%esi
call   1030 <helper_float_28_recursive@plt>
mov    -0x8(%rbp),%rdi
add    $0xe00000,%rdi
mov    $0x13,%esi
call   1030 <helper_float_28_recursive@plt>
movl   $0x0,-0x40(%rbp)
cmpl   $0x400000,-0x40(%rbp)
jge    237e <helper_float_28_recursive+0x126e>
movl   $0x0,-0x44(%rbp)
cmpl   $0x80000,-0x44(%rbp)
jge    2369 <helper_float_28_recursive+0x1259>
mov    -0x8(%rbp),%rax
movslq -0x40(%rbp),%rcx
shl    $0x2,%rcx
add    %rcx,%rax
movslq -0x44(%rbp),%rcx
shl    $0x2,%rcx
add    %rcx,%rax
mov    -0x8(%rbp),%rcx
movslq -0x40(%rbp),%rdx
shl    $0x2,%rdx
add    %rdx,%rcx
movslq -0x44(%rbp),%rdx
shl    $0x2,%rdx
add    %rdx,%rcx
add    $0x200000,%rcx
mov    -0x8(%rbp),%rdx
movslq -0x40(%rbp),%rsi
shl    $0x2,%rsi
add    %rsi,%rdx
movslq -0x44(%rbp),%rsi
shl    $0x2,%rsi
add    %rsi,%rdx
add    $0x400000,%rdx
mov    -0x8(%rbp),%rsi
movslq -0x40(%rbp),%rdi
shl    $0x2,%rdi
add    %rdi,%rsi
movslq -0x44(%rbp),%rdi
shl    $0x2,%rdi
add    %rdi,%rsi
add    $0x600000,%rsi
mov    -0x8(%rbp),%rdi
movslq -0x40(%rbp),%r8
shl    $0x2,%r8
add    %r8,%rdi
movslq -0x44(%rbp),%r8
shl    $0x2,%r8
add    %r8,%rdi
add    $0x800000,%rdi
mov    -0x8(%rbp),%r8
movslq -0x40(%rbp),%r9
shl    $0x2,%r9
add    %r9,%r8
movslq -0x44(%rbp),%r9
shl    $0x2,%r9
add    %r9,%r8
add    $0xa00000,%r8
mov    -0x8(%rbp),%r9
movslq -0x40(%rbp),%r10
shl    $0x2,%r10
add    %r10,%r9
movslq -0x44(%rbp),%r10
shl    $0x2,%r10
add    %r10,%r9
add    $0xc00000,%r9
mov    -0x8(%rbp),%r10
movslq -0x40(%rbp),%r11
shl    $0x2,%r11
add    %r11,%r10
movslq -0x44(%rbp),%r11
shl    $0x2,%r11
add    %r11,%r10
add    $0xe00000,%r10
movups (%rax),%xmm0
movups (%rcx),%xmm1
movups (%rdx),%xmm2
movups (%rsi),%xmm3
movups (%rdi),%xmm4
movups (%r8),%xmm5
movups (%r9),%xmm6
movups (%r10),%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm9
addps  %xmm1,%xmm8
subps  %xmm1,%xmm9
movaps %xmm2,%xmm10
movaps %xmm2,%xmm11
addps  %xmm3,%xmm10
subps  %xmm3,%xmm11
movaps %xmm4,%xmm12
movaps %xmm4,%xmm13
addps  %xmm5,%xmm12
subps  %xmm5,%xmm13
movaps %xmm6,%xmm14
movaps %xmm6,%xmm15
addps  %xmm7,%xmm14
subps  %xmm7,%xmm15
movaps %xmm8,%xmm0
movaps %xmm8,%xmm2
addps  %xmm10,%xmm0
subps  %xmm10,%xmm2
movaps %xmm9,%xmm1
movaps %xmm9,%xmm3
addps  %xmm11,%xmm1
subps  %xmm11,%xmm3
movaps %xmm12,%xmm4
movaps %xmm12,%xmm6
addps  %xmm14,%xmm4
subps  %xmm14,%xmm6
movaps %xmm13,%xmm5
movaps %xmm13,%xmm7
addps  %xmm15,%xmm5
subps  %xmm15,%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm12
addps  %xmm4,%xmm8
subps  %xmm4,%xmm12
movaps %xmm1,%xmm9
movaps %xmm1,%xmm13
addps  %xmm5,%xmm9
subps  %xmm5,%xmm13
movaps %xmm2,%xmm10
movaps %xmm2,%xmm14
addps  %xmm6,%xmm10
subps  %xmm6,%xmm14
movaps %xmm3,%xmm11
movaps %xmm3,%xmm15
addps  %xmm7,%xmm11
subps  %xmm7,%xmm15
movups %xmm8,(%rax)
movups %xmm9,(%rcx)
movups %xmm10,(%rdx)
movups %xmm11,(%rsi)
movups %xmm12,(%rdi)
movups %xmm13,(%r8)
movups %xmm14,(%r9)
movups %xmm15,(%r10)
mov    -0x44(%rbp),%eax
add    $0x4,%eax
mov    %eax,-0x44(%rbp)
jmp    2152 <helper_float_28_recursive+0x1042>
jmp    236e <helper_float_28_recursive+0x125e>
mov    -0x40(%rbp),%eax
add    $0x400000,%eax
mov    %eax,-0x40(%rbp)
jmp    213e <helper_float_28_recursive+0x102e>
jmp    2971 <helper_float_28_recursive+0x1861>
cmpl   $0x19,-0xc(%rbp)
jne    267a <helper_float_28_recursive+0x156a>
mov    -0x8(%rbp),%rdi
mov    $0x16,%esi
call   1030 <helper_float_28_recursive@plt>
mov    -0x8(%rbp),%rdi
add    $0x1000000,%rdi
mov    $0x16,%esi
call   1030 <helper_float_28_recursive@plt>
mov    -0x8(%rbp),%rdi
add    $0x2000000,%rdi
mov    $0x16,%esi
call   1030 <helper_float_28_recursive@plt>
mov    -0x8(%rbp),%rdi
add    $0x3000000,%rdi
mov    $0x16,%esi
call   1030 <helper_float_28_recursive@plt>
mov    -0x8(%rbp),%rdi
add    $0x4000000,%rdi
mov    $0x16,%esi
call   1030 <helper_float_28_recursive@plt>
mov    -0x8(%rbp),%rdi
add    $0x5000000,%rdi
mov    $0x16,%esi
call   1030 <helper_float_28_recursive@plt>
mov    -0x8(%rbp),%rdi
add    $0x6000000,%rdi
mov    $0x16,%esi
call   1030 <helper_float_28_recursive@plt>
mov    -0x8(%rbp),%rdi
add    $0x7000000,%rdi
mov    $0x16,%esi
call   1030 <helper_float_28_recursive@plt>
movl   $0x0,-0x48(%rbp)
cmpl   $0x2000000,-0x48(%rbp)
jge    2675 <helper_float_28_recursive+0x1565>
movl   $0x0,-0x4c(%rbp)
cmpl   $0x400000,-0x4c(%rbp)
jge    2660 <helper_float_28_recursive+0x1550>
mov    -0x8(%rbp),%rax
movslq -0x48(%rbp),%rcx
shl    $0x2,%rcx
add    %rcx,%rax
movslq -0x4c(%rbp),%rcx
shl    $0x2,%rcx
add    %rcx,%rax
mov    -0x8(%rbp),%rcx
movslq -0x48(%rbp),%rdx
shl    $0x2,%rdx
add    %rdx,%rcx
movslq -0x4c(%rbp),%rdx
shl    $0x2,%rdx
add    %rdx,%rcx
add    $0x1000000,%rcx
mov    -0x8(%rbp),%rdx
movslq -0x48(%rbp),%rsi
shl    $0x2,%rsi
add    %rsi,%rdx
movslq -0x4c(%rbp),%rsi
shl    $0x2,%rsi
add    %rsi,%rdx
add    $0x2000000,%rdx
mov    -0x8(%rbp),%rsi
movslq -0x48(%rbp),%rdi
shl    $0x2,%rdi
add    %rdi,%rsi
movslq -0x4c(%rbp),%rdi
shl    $0x2,%rdi
add    %rdi,%rsi
add    $0x3000000,%rsi
mov    -0x8(%rbp),%rdi
movslq -0x48(%rbp),%r8
shl    $0x2,%r8
add    %r8,%rdi
movslq -0x4c(%rbp),%r8
shl    $0x2,%r8
add    %r8,%rdi
add    $0x4000000,%rdi
mov    -0x8(%rbp),%r8
movslq -0x48(%rbp),%r9
shl    $0x2,%r9
add    %r9,%r8
movslq -0x4c(%rbp),%r9
shl    $0x2,%r9
add    %r9,%r8
add    $0x5000000,%r8
mov    -0x8(%rbp),%r9
movslq -0x48(%rbp),%r10
shl    $0x2,%r10
add    %r10,%r9
movslq -0x4c(%rbp),%r10
shl    $0x2,%r10
add    %r10,%r9
add    $0x6000000,%r9
mov    -0x8(%rbp),%r10
movslq -0x48(%rbp),%r11
shl    $0x2,%r11
add    %r11,%r10
movslq -0x4c(%rbp),%r11
shl    $0x2,%r11
add    %r11,%r10
add    $0x7000000,%r10
movups (%rax),%xmm0
movups (%rcx),%xmm1
movups (%rdx),%xmm2
movups (%rsi),%xmm3
movups (%rdi),%xmm4
movups (%r8),%xmm5
movups (%r9),%xmm6
movups (%r10),%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm9
addps  %xmm1,%xmm8
subps  %xmm1,%xmm9
movaps %xmm2,%xmm10
movaps %xmm2,%xmm11
addps  %xmm3,%xmm10
subps  %xmm3,%xmm11
movaps %xmm4,%xmm12
movaps %xmm4,%xmm13
addps  %xmm5,%xmm12
subps  %xmm5,%xmm13
movaps %xmm6,%xmm14
movaps %xmm6,%xmm15
addps  %xmm7,%xmm14
subps  %xmm7,%xmm15
movaps %xmm8,%xmm0
movaps %xmm8,%xmm2
addps  %xmm10,%xmm0
subps  %xmm10,%xmm2
movaps %xmm9,%xmm1
movaps %xmm9,%xmm3
addps  %xmm11,%xmm1
subps  %xmm11,%xmm3
movaps %xmm12,%xmm4
movaps %xmm12,%xmm6
addps  %xmm14,%xmm4
subps  %xmm14,%xmm6
movaps %xmm13,%xmm5
movaps %xmm13,%xmm7
addps  %xmm15,%xmm5
subps  %xmm15,%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm12
addps  %xmm4,%xmm8
subps  %xmm4,%xmm12
movaps %xmm1,%xmm9
movaps %xmm1,%xmm13
addps  %xmm5,%xmm9
subps  %xmm5,%xmm13
movaps %xmm2,%xmm10
movaps %xmm2,%xmm14
addps  %xmm6,%xmm10
subps  %xmm6,%xmm14
movaps %xmm3,%xmm11
movaps %xmm3,%xmm15
addps  %xmm7,%xmm11
subps  %xmm7,%xmm15
movups %xmm8,(%rax)
movups %xmm9,(%rcx)
movups %xmm10,(%rdx)
movups %xmm11,(%rsi)
movups %xmm12,(%rdi)
movups %xmm13,(%r8)
movups %xmm14,(%r9)
movups %xmm15,(%r10)
mov    -0x4c(%rbp),%eax
add    $0x4,%eax
mov    %eax,-0x4c(%rbp)
jmp    2449 <helper_float_28_recursive+0x1339>
jmp    2665 <helper_float_28_recursive+0x1555>
mov    -0x48(%rbp),%eax
add    $0x2000000,%eax
mov    %eax,-0x48(%rbp)
jmp    2435 <helper_float_28_recursive+0x1325>
jmp    2971 <helper_float_28_recursive+0x1861>
cmpl   $0x1c,-0xc(%rbp)
jne    2971 <helper_float_28_recursive+0x1861>
mov    -0x8(%rbp),%rdi
mov    $0x19,%esi
call   1030 <helper_float_28_recursive@plt>
mov    -0x8(%rbp),%rdi
add    $0x8000000,%rdi
mov    $0x19,%esi
call   1030 <helper_float_28_recursive@plt>
mov    -0x8(%rbp),%rdi
add    $0x10000000,%rdi
mov    $0x19,%esi
call   1030 <helper_float_28_recursive@plt>
mov    -0x8(%rbp),%rdi
add    $0x18000000,%rdi
mov    $0x19,%esi
call   1030 <helper_float_28_recursive@plt>
mov    -0x8(%rbp),%rdi
add    $0x20000000,%rdi
mov    $0x19,%esi
call   1030 <helper_float_28_recursive@plt>
mov    -0x8(%rbp),%rdi
add    $0x28000000,%rdi
mov    $0x19,%esi
call   1030 <helper_float_28_recursive@plt>
mov    -0x8(%rbp),%rdi
add    $0x30000000,%rdi
mov    $0x19,%esi
call   1030 <helper_float_28_recursive@plt>
mov    -0x8(%rbp),%rdi
add    $0x38000000,%rdi
mov    $0x19,%esi
call   1030 <helper_float_28_recursive@plt>
movl   $0x0,-0x50(%rbp)
cmpl   $0x10000000,-0x50(%rbp)
jge    296c <helper_float_28_recursive+0x185c>
movl   $0x0,-0x54(%rbp)
cmpl   $0x2000000,-0x54(%rbp)
jge    2957 <helper_float_28_recursive+0x1847>
mov    -0x8(%rbp),%rax
movslq -0x50(%rbp),%rcx
shl    $0x2,%rcx
add    %rcx,%rax
movslq -0x54(%rbp),%rcx
shl    $0x2,%rcx
add    %rcx,%rax
mov    -0x8(%rbp),%rcx
movslq -0x50(%rbp),%rdx
shl    $0x2,%rdx
add    %rdx,%rcx
movslq -0x54(%rbp),%rdx
shl    $0x2,%rdx
add    %rdx,%rcx
add    $0x8000000,%rcx
mov    -0x8(%rbp),%rdx
movslq -0x50(%rbp),%rsi
shl    $0x2,%rsi
add    %rsi,%rdx
movslq -0x54(%rbp),%rsi
shl    $0x2,%rsi
add    %rsi,%rdx
add    $0x10000000,%rdx
mov    -0x8(%rbp),%rsi
movslq -0x50(%rbp),%rdi
shl    $0x2,%rdi
add    %rdi,%rsi
movslq -0x54(%rbp),%rdi
shl    $0x2,%rdi
add    %rdi,%rsi
add    $0x18000000,%rsi
mov    -0x8(%rbp),%rdi
movslq -0x50(%rbp),%r8
shl    $0x2,%r8
add    %r8,%rdi
movslq -0x54(%rbp),%r8
shl    $0x2,%r8
add    %r8,%rdi
add    $0x20000000,%rdi
mov    -0x8(%rbp),%r8
movslq -0x50(%rbp),%r9
shl    $0x2,%r9
add    %r9,%r8
movslq -0x54(%rbp),%r9
shl    $0x2,%r9
add    %r9,%r8
add    $0x28000000,%r8
mov    -0x8(%rbp),%r9
movslq -0x50(%rbp),%r10
shl    $0x2,%r10
add    %r10,%r9
movslq -0x54(%rbp),%r10
shl    $0x2,%r10
add    %r10,%r9
add    $0x30000000,%r9
mov    -0x8(%rbp),%r10
movslq -0x50(%rbp),%r11
shl    $0x2,%r11
add    %r11,%r10
movslq -0x54(%rbp),%r11
shl    $0x2,%r11
add    %r11,%r10
add    $0x38000000,%r10
movups (%rax),%xmm0
movups (%rcx),%xmm1
movups (%rdx),%xmm2
movups (%rsi),%xmm3
movups (%rdi),%xmm4
movups (%r8),%xmm5
movups (%r9),%xmm6
movups (%r10),%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm9
addps  %xmm1,%xmm8
subps  %xmm1,%xmm9
movaps %xmm2,%xmm10
movaps %xmm2,%xmm11
addps  %xmm3,%xmm10
subps  %xmm3,%xmm11
movaps %xmm4,%xmm12
movaps %xmm4,%xmm13
addps  %xmm5,%xmm12
subps  %xmm5,%xmm13
movaps %xmm6,%xmm14
movaps %xmm6,%xmm15
addps  %xmm7,%xmm14
subps  %xmm7,%xmm15
movaps %xmm8,%xmm0
movaps %xmm8,%xmm2
addps  %xmm10,%xmm0
subps  %xmm10,%xmm2
movaps %xmm9,%xmm1
movaps %xmm9,%xmm3
addps  %xmm11,%xmm1
subps  %xmm11,%xmm3
movaps %xmm12,%xmm4
movaps %xmm12,%xmm6
addps  %xmm14,%xmm4
subps  %xmm14,%xmm6
movaps %xmm13,%xmm5
movaps %xmm13,%xmm7
addps  %xmm15,%xmm5
subps  %xmm15,%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm12
addps  %xmm4,%xmm8
subps  %xmm4,%xmm12
movaps %xmm1,%xmm9
movaps %xmm1,%xmm13
addps  %xmm5,%xmm9
subps  %xmm5,%xmm13
movaps %xmm2,%xmm10
movaps %xmm2,%xmm14
addps  %xmm6,%xmm10
subps  %xmm6,%xmm14
movaps %xmm3,%xmm11
movaps %xmm3,%xmm15
addps  %xmm7,%xmm11
subps  %xmm7,%xmm15
movups %xmm8,(%rax)
movups %xmm9,(%rcx)
movups %xmm10,(%rdx)
movups %xmm11,(%rsi)
movups %xmm12,(%rdi)
movups %xmm13,(%r8)
movups %xmm14,(%r9)
movups %xmm15,(%r10)
mov    -0x54(%rbp),%eax
add    $0x4,%eax
mov    %eax,-0x54(%rbp)
jmp    2740 <helper_float_28_recursive+0x1630>
jmp    295c <helper_float_28_recursive+0x184c>
mov    -0x50(%rbp),%eax
add    $0x10000000,%eax
mov    %eax,-0x50(%rbp)
jmp    272c <helper_float_28_recursive+0x161c>
jmp    2971 <helper_float_28_recursive+0x1861>
add    $0x60,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<helper_float_28_recursive>:
push   %r15
push   %r14
push   %rbx
add    $0xfffffff0,%esi
cmp    $0xc,%esi
ja     2d30 <helper_float_28_recursive+0x1c20>
mov    %rdi,%r15
lea    0x1ed5(%rip),%rax
movslq (%rax,%rsi,4),%rcx
add    %rax,%rcx
jmp    *%rcx
mov    $0xffffffffffffffe0,%rax
mov    %r15,%rcx
xchg   %ax,%ax
lea    0x10(%rcx),%r8
lea    0x20(%rcx),%r9
lea    0x30(%rcx),%r10
lea    0x40(%rcx),%r11
lea    0x50(%rcx),%rsi
lea    0x60(%rcx),%rdi
lea    0x70(%rcx),%rdx
movups (%rcx),%xmm0
movups (%r8),%xmm1
movups (%r9),%xmm2
movups (%r10),%xmm3
movups (%r11),%xmm4
movups (%rsi),%xmm5
movups (%rdi),%xmm6
movups (%rdx),%xmm7
movaps %xmm0,%xmm8
shufps $0xa0,%xmm8,%xmm8
shufps $0xf5,%xmm0,%xmm0
xorps  %xmm9,%xmm9
subps  %xmm0,%xmm9
addsubps %xmm9,%xmm8
movaps %xmm8,%xmm0
movaps %xmm1,%xmm8
shufps $0xa0,%xmm8,%xmm8
shufps $0xf5,%xmm1,%xmm1
xorps  %xmm9,%xmm9
subps  %xmm1,%xmm9
addsubps %xmm9,%xmm8
movaps %xmm8,%xmm1
movaps %xmm2,%xmm8
shufps $0xa0,%xmm8,%xmm8
shufps $0xf5,%xmm2,%xmm2
xorps  %xmm9,%xmm9
subps  %xmm2,%xmm9
addsubps %xmm9,%xmm8
movaps %xmm8,%xmm2
movaps %xmm3,%xmm8
shufps $0xa0,%xmm8,%xmm8
shufps $0xf5,%xmm3,%xmm3
xorps  %xmm9,%xmm9
subps  %xmm3,%xmm9
addsubps %xmm9,%xmm8
movaps %xmm8,%xmm3
movaps %xmm4,%xmm8
shufps $0xa0,%xmm8,%xmm8
shufps $0xf5,%xmm4,%xmm4
xorps  %xmm9,%xmm9
subps  %xmm4,%xmm9
addsubps %xmm9,%xmm8
movaps %xmm8,%xmm4
movaps %xmm5,%xmm8
shufps $0xa0,%xmm8,%xmm8
shufps $0xf5,%xmm5,%xmm5
xorps  %xmm9,%xmm9
subps  %xmm5,%xmm9
addsubps %xmm9,%xmm8
movaps %xmm8,%xmm5
movaps %xmm6,%xmm8
shufps $0xa0,%xmm8,%xmm8
shufps $0xf5,%xmm6,%xmm6
xorps  %xmm9,%xmm9
subps  %xmm6,%xmm9
addsubps %xmm9,%xmm8
movaps %xmm8,%xmm6
movaps %xmm7,%xmm8
shufps $0xa0,%xmm8,%xmm8
shufps $0xf5,%xmm7,%xmm7
xorps  %xmm9,%xmm9
subps  %xmm7,%xmm9
addsubps %xmm9,%xmm8
movaps %xmm8,%xmm7
movaps %xmm0,%xmm8
shufps $0x44,%xmm8,%xmm8
xorps  %xmm9,%xmm9
movaps %xmm0,%xmm10
shufps $0xe,%xmm9,%xmm10
movaps %xmm0,%xmm11
shufps $0xe0,%xmm11,%xmm9
addps  %xmm8,%xmm10
subps  %xmm9,%xmm10
movaps %xmm10,%xmm0
movaps %xmm1,%xmm8
shufps $0x44,%xmm8,%xmm8
xorps  %xmm9,%xmm9
movaps %xmm1,%xmm10
shufps $0xe,%xmm9,%xmm10
movaps %xmm1,%xmm11
shufps $0xe0,%xmm11,%xmm9
addps  %xmm8,%xmm10
subps  %xmm9,%xmm10
movaps %xmm10,%xmm1
movaps %xmm2,%xmm8
shufps $0x44,%xmm8,%xmm8
xorps  %xmm9,%xmm9
movaps %xmm2,%xmm10
shufps $0xe,%xmm9,%xmm10
movaps %xmm2,%xmm11
shufps $0xe0,%xmm11,%xmm9
addps  %xmm8,%xmm10
subps  %xmm9,%xmm10
movaps %xmm10,%xmm2
movaps %xmm3,%xmm8
shufps $0x44,%xmm8,%xmm8
xorps  %xmm9,%xmm9
movaps %xmm3,%xmm10
shufps $0xe,%xmm9,%xmm10
movaps %xmm3,%xmm11
shufps $0xe0,%xmm11,%xmm9
addps  %xmm8,%xmm10
subps  %xmm9,%xmm10
movaps %xmm10,%xmm3
movaps %xmm4,%xmm8
shufps $0x44,%xmm8,%xmm8
xorps  %xmm9,%xmm9
movaps %xmm4,%xmm10
shufps $0xe,%xmm9,%xmm10
movaps %xmm4,%xmm11
shufps $0xe0,%xmm11,%xmm9
addps  %xmm8,%xmm10
subps  %xmm9,%xmm10
movaps %xmm10,%xmm4
movaps %xmm5,%xmm8
shufps $0x44,%xmm8,%xmm8
xorps  %xmm9,%xmm9
movaps %xmm5,%xmm10
shufps $0xe,%xmm9,%xmm10
movaps %xmm5,%xmm11
shufps $0xe0,%xmm11,%xmm9
addps  %xmm8,%xmm10
subps  %xmm9,%xmm10
movaps %xmm10,%xmm5
movaps %xmm6,%xmm8
shufps $0x44,%xmm8,%xmm8
xorps  %xmm9,%xmm9
movaps %xmm6,%xmm10
shufps $0xe,%xmm9,%xmm10
movaps %xmm6,%xmm11
shufps $0xe0,%xmm11,%xmm9
addps  %xmm8,%xmm10
subps  %xmm9,%xmm10
movaps %xmm10,%xmm6
movaps %xmm7,%xmm8
shufps $0x44,%xmm8,%xmm8
xorps  %xmm9,%xmm9
movaps %xmm7,%xmm10
shufps $0xe,%xmm9,%xmm10
movaps %xmm7,%xmm11
shufps $0xe0,%xmm11,%xmm9
addps  %xmm8,%xmm10
subps  %xmm9,%xmm10
movaps %xmm10,%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm9
addps  %xmm1,%xmm8
subps  %xmm1,%xmm9
movaps %xmm2,%xmm10
movaps %xmm2,%xmm11
addps  %xmm3,%xmm10
subps  %xmm3,%xmm11
movaps %xmm4,%xmm12
movaps %xmm4,%xmm13
addps  %xmm5,%xmm12
subps  %xmm5,%xmm13
movaps %xmm6,%xmm14
movaps %xmm6,%xmm15
addps  %xmm7,%xmm14
subps  %xmm7,%xmm15
movaps %xmm8,%xmm0
movaps %xmm8,%xmm2
addps  %xmm10,%xmm0
subps  %xmm10,%xmm2
movaps %xmm9,%xmm1
movaps %xmm9,%xmm3
addps  %xmm11,%xmm1
subps  %xmm11,%xmm3
movaps %xmm12,%xmm4
movaps %xmm12,%xmm6
addps  %xmm14,%xmm4
subps  %xmm14,%xmm6
movaps %xmm13,%xmm5
movaps %xmm13,%xmm7
addps  %xmm15,%xmm5
subps  %xmm15,%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm12
addps  %xmm4,%xmm8
subps  %xmm4,%xmm12
movaps %xmm1,%xmm9
movaps %xmm1,%xmm13
addps  %xmm5,%xmm9
subps  %xmm5,%xmm13
movaps %xmm2,%xmm10
movaps %xmm2,%xmm14
addps  %xmm6,%xmm10
subps  %xmm6,%xmm14
movaps %xmm3,%xmm11
movaps %xmm3,%xmm15
addps  %xmm7,%xmm11
subps  %xmm7,%xmm15
movups %xmm8,(%rcx)
movups %xmm9,(%r8)
movups %xmm10,(%r9)
movups %xmm11,(%r10)
movups %xmm12,(%r11)
movups %xmm13,(%rsi)
movups %xmm14,(%rdi)
movups %xmm15,(%rdx)
add    $0x20,%rax
sub    $0xffffffffffffff80,%rcx
cmp    $0xffe0,%rax
jb     1140 <helper_float_28_recursive+0x30>
mov    $0xffffffffffffff00,%r10
mov    %r15,%rcx
xchg   %ax,%ax
lea    0x80(%rcx),%r8
lea    0x100(%rcx),%r9
lea    0x180(%rcx),%r11
lea    0x200(%rcx),%rdx
lea    0x280(%rcx),%rsi
lea    0x300(%rcx),%rax
lea    0x380(%rcx),%rdi
movups (%rcx),%xmm0
movups (%r8),%xmm1
movups (%r9),%xmm2
movups (%r11),%xmm3
movups (%rdx),%xmm4
movups (%rsi),%xmm5
movups (%rax),%xmm6
movups (%rdi),%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm9
addps  %xmm1,%xmm8
subps  %xmm1,%xmm9
movaps %xmm2,%xmm10
movaps %xmm2,%xmm11
addps  %xmm3,%xmm10
subps  %xmm3,%xmm11
movaps %xmm4,%xmm12
movaps %xmm4,%xmm13
addps  %xmm5,%xmm12
subps  %xmm5,%xmm13
movaps %xmm6,%xmm14
movaps %xmm6,%xmm15
addps  %xmm7,%xmm14
subps  %xmm7,%xmm15
movaps %xmm8,%xmm0
movaps %xmm8,%xmm2
addps  %xmm10,%xmm0
subps  %xmm10,%xmm2
movaps %xmm9,%xmm1
movaps %xmm9,%xmm3
addps  %xmm11,%xmm1
subps  %xmm11,%xmm3
movaps %xmm12,%xmm4
movaps %xmm12,%xmm6
addps  %xmm14,%xmm4
subps  %xmm14,%xmm6
movaps %xmm13,%xmm5
movaps %xmm13,%xmm7
addps  %xmm15,%xmm5
subps  %xmm15,%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm12
addps  %xmm4,%xmm8
subps  %xmm4,%xmm12
movaps %xmm1,%xmm9
movaps %xmm1,%xmm13
addps  %xmm5,%xmm9
subps  %xmm5,%xmm13
movaps %xmm2,%xmm10
movaps %xmm2,%xmm14
addps  %xmm6,%xmm10
subps  %xmm6,%xmm14
movaps %xmm3,%xmm11
movaps %xmm3,%xmm15
addps  %xmm7,%xmm11
subps  %xmm7,%xmm15
movups %xmm8,(%rcx)
movups %xmm9,(%r8)
movups %xmm10,(%r9)
movups %xmm11,(%r11)
movups %xmm12,(%rdx)
movups %xmm13,(%rsi)
movups %xmm14,(%rax)
movups %xmm15,(%rdi)
lea    0x10(%rcx),%r8
lea    0x90(%rcx),%r9
lea    0x110(%rcx),%r11
lea    0x190(%rcx),%r14
lea    0x210(%rcx),%rax
lea    0x290(%rcx),%rdx
lea    0x310(%rcx),%rsi
lea    0x390(%rcx),%rdi
movups (%r8),%xmm0
movups (%r9),%xmm1
movups (%r11),%xmm2
movups (%r14),%xmm3
movups (%rax),%xmm4
movups (%rdx),%xmm5
movups (%rsi),%xmm6
movups (%rdi),%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm9
addps  %xmm1,%xmm8
subps  %xmm1,%xmm9
movaps %xmm2,%xmm10
movaps %xmm2,%xmm11
addps  %xmm3,%xmm10
subps  %xmm3,%xmm11
movaps %xmm4,%xmm12
movaps %xmm4,%xmm13
addps  %xmm5,%xmm12
subps  %xmm5,%xmm13
movaps %xmm6,%xmm14
movaps %xmm6,%xmm15
addps  %xmm7,%xmm14
subps  %xmm7,%xmm15
movaps %xmm8,%xmm0
movaps %xmm8,%xmm2
addps  %xmm10,%xmm0
subps  %xmm10,%xmm2
movaps %xmm9,%xmm1
movaps %xmm9,%xmm3
addps  %xmm11,%xmm1
subps  %xmm11,%xmm3
movaps %xmm12,%xmm4
movaps %xmm12,%xmm6
addps  %xmm14,%xmm4
subps  %xmm14,%xmm6
movaps %xmm13,%xmm5
movaps %xmm13,%xmm7
addps  %xmm15,%xmm5
subps  %xmm15,%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm12
addps  %xmm4,%xmm8
subps  %xmm4,%xmm12
movaps %xmm1,%xmm9
movaps %xmm1,%xmm13
addps  %xmm5,%xmm9
subps  %xmm5,%xmm13
movaps %xmm2,%xmm10
movaps %xmm2,%xmm14
addps  %xmm6,%xmm10
subps  %xmm6,%xmm14
movaps %xmm3,%xmm11
movaps %xmm3,%xmm15
addps  %xmm7,%xmm11
subps  %xmm7,%xmm15
movups %xmm8,(%r8)
movups %xmm9,(%r9)
movups %xmm10,(%r11)
movups %xmm11,(%r14)
movups %xmm12,(%rax)
movups %xmm13,(%rdx)
movups %xmm14,(%rsi)
movups %xmm15,(%rdi)
lea    0x20(%rcx),%r8
lea    0xa0(%rcx),%r9
lea    0x120(%rcx),%r11
lea    0x1a0(%rcx),%r14
lea    0x220(%rcx),%rax
lea    0x2a0(%rcx),%rdx
lea    0x320(%rcx),%rsi
lea    0x3a0(%rcx),%rdi
movups (%r8),%xmm0
movups (%r9),%xmm1
movups (%r11),%xmm2
movups (%r14),%xmm3
movups (%rax),%xmm4
movups (%rdx),%xmm5
movups (%rsi),%xmm6
movups (%rdi),%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm9
addps  %xmm1,%xmm8
subps  %xmm1,%xmm9
movaps %xmm2,%xmm10
movaps %xmm2,%xmm11
addps  %xmm3,%xmm10
subps  %xmm3,%xmm11
movaps %xmm4,%xmm12
movaps %xmm4,%xmm13
addps  %xmm5,%xmm12
subps  %xmm5,%xmm13
movaps %xmm6,%xmm14
movaps %xmm6,%xmm15
addps  %xmm7,%xmm14
subps  %xmm7,%xmm15
movaps %xmm8,%xmm0
movaps %xmm8,%xmm2
addps  %xmm10,%xmm0
subps  %xmm10,%xmm2
movaps %xmm9,%xmm1
movaps %xmm9,%xmm3
addps  %xmm11,%xmm1
subps  %xmm11,%xmm3
movaps %xmm12,%xmm4
movaps %xmm12,%xmm6
addps  %xmm14,%xmm4
subps  %xmm14,%xmm6
movaps %xmm13,%xmm5
movaps %xmm13,%xmm7
addps  %xmm15,%xmm5
subps  %xmm15,%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm12
addps  %xmm4,%xmm8
subps  %xmm4,%xmm12
movaps %xmm1,%xmm9
movaps %xmm1,%xmm13
addps  %xmm5,%xmm9
subps  %xmm5,%xmm13
movaps %xmm2,%xmm10
movaps %xmm2,%xmm14
addps  %xmm6,%xmm10
subps  %xmm6,%xmm14
movaps %xmm3,%xmm11
movaps %xmm3,%xmm15
addps  %xmm7,%xmm11
subps  %xmm7,%xmm15
movups %xmm8,(%r8)
movups %xmm9,(%r9)
movups %xmm10,(%r11)
movups %xmm11,(%r14)
movups %xmm12,(%rax)
movups %xmm13,(%rdx)
movups %xmm14,(%rsi)
movups %xmm15,(%rdi)
lea    0x30(%rcx),%r8
lea    0xb0(%rcx),%r9
lea    0x130(%rcx),%r11
lea    0x1b0(%rcx),%r14
lea    0x230(%rcx),%rax
lea    0x2b0(%rcx),%rdx
lea    0x330(%rcx),%rsi
lea    0x3b0(%rcx),%rdi
movups (%r8),%xmm0
movups (%r9),%xmm1
movups (%r11),%xmm2
movups (%r14),%xmm3
movups (%rax),%xmm4
movups (%rdx),%xmm5
movups (%rsi),%xmm6
movups (%rdi),%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm9
addps  %xmm1,%xmm8
subps  %xmm1,%xmm9
movaps %xmm2,%xmm10
movaps %xmm2,%xmm11
addps  %xmm3,%xmm10
subps  %xmm3,%xmm11
movaps %xmm4,%xmm12
movaps %xmm4,%xmm13
addps  %xmm5,%xmm12
subps  %xmm5,%xmm13
movaps %xmm6,%xmm14
movaps %xmm6,%xmm15
addps  %xmm7,%xmm14
subps  %xmm7,%xmm15
movaps %xmm8,%xmm0
movaps %xmm8,%xmm2
addps  %xmm10,%xmm0
subps  %xmm10,%xmm2
movaps %xmm9,%xmm1
movaps %xmm9,%xmm3
addps  %xmm11,%xmm1
subps  %xmm11,%xmm3
movaps %xmm12,%xmm4
movaps %xmm12,%xmm6
addps  %xmm14,%xmm4
subps  %xmm14,%xmm6
movaps %xmm13,%xmm5
movaps %xmm13,%xmm7
addps  %xmm15,%xmm5
subps  %xmm15,%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm12
addps  %xmm4,%xmm8
subps  %xmm4,%xmm12
movaps %xmm1,%xmm9
movaps %xmm1,%xmm13
addps  %xmm5,%xmm9
subps  %xmm5,%xmm13
movaps %xmm2,%xmm10
movaps %xmm2,%xmm14
addps  %xmm6,%xmm10
subps  %xmm6,%xmm14
movaps %xmm3,%xmm11
movaps %xmm3,%xmm15
addps  %xmm7,%xmm11
subps  %xmm7,%xmm15
movups %xmm8,(%r8)
movups %xmm9,(%r9)
movups %xmm10,(%r11)
movups %xmm11,(%r14)
movups %xmm12,(%rax)
movups %xmm13,(%rdx)
movups %xmm14,(%rsi)
movups %xmm15,(%rdi)
lea    0x40(%rcx),%r8
lea    0xc0(%rcx),%r9
lea    0x140(%rcx),%r11
lea    0x1c0(%rcx),%r14
lea    0x240(%rcx),%rax
lea    0x2c0(%rcx),%rdx
lea    0x340(%rcx),%rsi
lea    0x3c0(%rcx),%rdi
movups (%r8),%xmm0
movups (%r9),%xmm1
movups (%r11),%xmm2
movups (%r14),%xmm3
movups (%rax),%xmm4
movups (%rdx),%xmm5
movups (%rsi),%xmm6
movups (%rdi),%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm9
addps  %xmm1,%xmm8
subps  %xmm1,%xmm9
movaps %xmm2,%xmm10
movaps %xmm2,%xmm11
addps  %xmm3,%xmm10
subps  %xmm3,%xmm11
movaps %xmm4,%xmm12
movaps %xmm4,%xmm13
addps  %xmm5,%xmm12
subps  %xmm5,%xmm13
movaps %xmm6,%xmm14
movaps %xmm6,%xmm15
addps  %xmm7,%xmm14
subps  %xmm7,%xmm15
movaps %xmm8,%xmm0
movaps %xmm8,%xmm2
addps  %xmm10,%xmm0
subps  %xmm10,%xmm2
movaps %xmm9,%xmm1
movaps %xmm9,%xmm3
addps  %xmm11,%xmm1
subps  %xmm11,%xmm3
movaps %xmm12,%xmm4
movaps %xmm12,%xmm6
addps  %xmm14,%xmm4
subps  %xmm14,%xmm6
movaps %xmm13,%xmm5
movaps %xmm13,%xmm7
addps  %xmm15,%xmm5
subps  %xmm15,%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm12
addps  %xmm4,%xmm8
subps  %xmm4,%xmm12
movaps %xmm1,%xmm9
movaps %xmm1,%xmm13
addps  %xmm5,%xmm9
subps  %xmm5,%xmm13
movaps %xmm2,%xmm10
movaps %xmm2,%xmm14
addps  %xmm6,%xmm10
subps  %xmm6,%xmm14
movaps %xmm3,%xmm11
movaps %xmm3,%xmm15
addps  %xmm7,%xmm11
subps  %xmm7,%xmm15
movups %xmm8,(%r8)
movups %xmm9,(%r9)
movups %xmm10,(%r11)
movups %xmm11,(%r14)
movups %xmm12,(%rax)
movups %xmm13,(%rdx)
movups %xmm14,(%rsi)
movups %xmm15,(%rdi)
lea    0x50(%rcx),%r8
lea    0xd0(%rcx),%r9
lea    0x150(%rcx),%r11
lea    0x1d0(%rcx),%r14
lea    0x250(%rcx),%rax
lea    0x2d0(%rcx),%rdx
lea    0x350(%rcx),%rsi
lea    0x3d0(%rcx),%rdi
movups (%r8),%xmm0
movups (%r9),%xmm1
movups (%r11),%xmm2
movups (%r14),%xmm3
movups (%rax),%xmm4
movups (%rdx),%xmm5
movups (%rsi),%xmm6
movups (%rdi),%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm9
addps  %xmm1,%xmm8
subps  %xmm1,%xmm9
movaps %xmm2,%xmm10
movaps %xmm2,%xmm11
addps  %xmm3,%xmm10
subps  %xmm3,%xmm11
movaps %xmm4,%xmm12
movaps %xmm4,%xmm13
addps  %xmm5,%xmm12
subps  %xmm5,%xmm13
movaps %xmm6,%xmm14
movaps %xmm6,%xmm15
addps  %xmm7,%xmm14
subps  %xmm7,%xmm15
movaps %xmm8,%xmm0
movaps %xmm8,%xmm2
addps  %xmm10,%xmm0
subps  %xmm10,%xmm2
movaps %xmm9,%xmm1
movaps %xmm9,%xmm3
addps  %xmm11,%xmm1
subps  %xmm11,%xmm3
movaps %xmm12,%xmm4
movaps %xmm12,%xmm6
addps  %xmm14,%xmm4
subps  %xmm14,%xmm6
movaps %xmm13,%xmm5
movaps %xmm13,%xmm7
addps  %xmm15,%xmm5
subps  %xmm15,%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm12
addps  %xmm4,%xmm8
subps  %xmm4,%xmm12
movaps %xmm1,%xmm9
movaps %xmm1,%xmm13
addps  %xmm5,%xmm9
subps  %xmm5,%xmm13
movaps %xmm2,%xmm10
movaps %xmm2,%xmm14
addps  %xmm6,%xmm10
subps  %xmm6,%xmm14
movaps %xmm3,%xmm11
movaps %xmm3,%xmm15
addps  %xmm7,%xmm11
subps  %xmm7,%xmm15
movups %xmm8,(%r8)
movups %xmm9,(%r9)
movups %xmm10,(%r11)
movups %xmm11,(%r14)
movups %xmm12,(%rax)
movups %xmm13,(%rdx)
movups %xmm14,(%rsi)
movups %xmm15,(%rdi)
lea    0x60(%rcx),%r8
lea    0xe0(%rcx),%r9
lea    0x160(%rcx),%r11
lea    0x1e0(%rcx),%r14
lea    0x260(%rcx),%rax
lea    0x2e0(%rcx),%rdx
lea    0x360(%rcx),%rsi
lea    0x3e0(%rcx),%rdi
movups (%r8),%xmm0
movups (%r9),%xmm1
movups (%r11),%xmm2
movups (%r14),%xmm3
movups (%rax),%xmm4
movups (%rdx),%xmm5
movups (%rsi),%xmm6
movups (%rdi),%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm9
addps  %xmm1,%xmm8
subps  %xmm1,%xmm9
movaps %xmm2,%xmm10
movaps %xmm2,%xmm11
addps  %xmm3,%xmm10
subps  %xmm3,%xmm11
movaps %xmm4,%xmm12
movaps %xmm4,%xmm13
addps  %xmm5,%xmm12
subps  %xmm5,%xmm13
movaps %xmm6,%xmm14
movaps %xmm6,%xmm15
addps  %xmm7,%xmm14
subps  %xmm7,%xmm15
movaps %xmm8,%xmm0
movaps %xmm8,%xmm2
addps  %xmm10,%xmm0
subps  %xmm10,%xmm2
movaps %xmm9,%xmm1
movaps %xmm9,%xmm3
addps  %xmm11,%xmm1
subps  %xmm11,%xmm3
movaps %xmm12,%xmm4
movaps %xmm12,%xmm6
addps  %xmm14,%xmm4
subps  %xmm14,%xmm6
movaps %xmm13,%xmm5
movaps %xmm13,%xmm7
addps  %xmm15,%xmm5
subps  %xmm15,%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm12
addps  %xmm4,%xmm8
subps  %xmm4,%xmm12
movaps %xmm1,%xmm9
movaps %xmm1,%xmm13
addps  %xmm5,%xmm9
subps  %xmm5,%xmm13
movaps %xmm2,%xmm10
movaps %xmm2,%xmm14
addps  %xmm6,%xmm10
subps  %xmm6,%xmm14
movaps %xmm3,%xmm11
movaps %xmm3,%xmm15
addps  %xmm7,%xmm11
subps  %xmm7,%xmm15
movups %xmm8,(%r8)
movups %xmm9,(%r9)
movups %xmm10,(%r11)
movups %xmm11,(%r14)
movups %xmm12,(%rax)
movups %xmm13,(%rdx)
movups %xmm14,(%rsi)
movups %xmm15,(%rdi)
lea    0x70(%rcx),%r8
lea    0xf0(%rcx),%r9
lea    0x170(%rcx),%r11
lea    0x1f0(%rcx),%r14
lea    0x270(%rcx),%rax
lea    0x2f0(%rcx),%rdx
lea    0x370(%rcx),%rsi
lea    0x3f0(%rcx),%rdi
movups (%r8),%xmm0
movups (%r9),%xmm1
movups (%r11),%xmm2
movups (%r14),%xmm3
movups (%rax),%xmm4
movups (%rdx),%xmm5
movups (%rsi),%xmm6
movups (%rdi),%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm9
addps  %xmm1,%xmm8
subps  %xmm1,%xmm9
movaps %xmm2,%xmm10
movaps %xmm2,%xmm11
addps  %xmm3,%xmm10
subps  %xmm3,%xmm11
movaps %xmm4,%xmm12
movaps %xmm4,%xmm13
addps  %xmm5,%xmm12
subps  %xmm5,%xmm13
movaps %xmm6,%xmm14
movaps %xmm6,%xmm15
addps  %xmm7,%xmm14
subps  %xmm7,%xmm15
movaps %xmm8,%xmm0
movaps %xmm8,%xmm2
addps  %xmm10,%xmm0
subps  %xmm10,%xmm2
movaps %xmm9,%xmm1
movaps %xmm9,%xmm3
addps  %xmm11,%xmm1
subps  %xmm11,%xmm3
movaps %xmm12,%xmm4
movaps %xmm12,%xmm6
addps  %xmm14,%xmm4
subps  %xmm14,%xmm6
movaps %xmm13,%xmm5
movaps %xmm13,%xmm7
addps  %xmm15,%xmm5
subps  %xmm15,%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm12
addps  %xmm4,%xmm8
subps  %xmm4,%xmm12
movaps %xmm1,%xmm9
movaps %xmm1,%xmm13
addps  %xmm5,%xmm9
subps  %xmm5,%xmm13
movaps %xmm2,%xmm10
movaps %xmm2,%xmm14
addps  %xmm6,%xmm10
subps  %xmm6,%xmm14
movaps %xmm3,%xmm11
movaps %xmm3,%xmm15
addps  %xmm7,%xmm11
subps  %xmm7,%xmm15
movups %xmm8,(%r8)
movups %xmm9,(%r9)
movups %xmm10,(%r11)
movups %xmm11,(%r14)
movups %xmm12,(%rax)
movups %xmm13,(%rdx)
movups %xmm14,(%rsi)
movups %xmm15,(%rdi)
add    $0x100,%r10
add    $0x400,%rcx
cmp    $0xff00,%r10
jb     14c0 <helper_float_28_recursive+0x3b0>
lea    0x1c00(%r15),%r9
xor    %r8d,%r8d
nopl   0x0(%rax,%rax,1)
mov    $0xfffffffffffffffc,%rdx
mov    %r9,%rsi
nopw   0x0(%rax,%rax,1)
lea    -0x1c00(%rsi),%r10
lea    -0x1800(%rsi),%r11
lea    -0x1400(%rsi),%r14
lea    -0x1000(%rsi),%rbx
lea    -0xc00(%rsi),%rdi
lea    -0x800(%rsi),%rcx
lea    -0x400(%rsi),%rax
movups (%r10),%xmm0
movups (%r11),%xmm1
movups (%r14),%xmm2
movups (%rbx),%xmm3
movups (%rdi),%xmm4
movups (%rcx),%xmm5
movups (%rax),%xmm6
movups (%rsi),%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm9
addps  %xmm1,%xmm8
subps  %xmm1,%xmm9
movaps %xmm2,%xmm10
movaps %xmm2,%xmm11
addps  %xmm3,%xmm10
subps  %xmm3,%xmm11
movaps %xmm4,%xmm12
movaps %xmm4,%xmm13
addps  %xmm5,%xmm12
subps  %xmm5,%xmm13
movaps %xmm6,%xmm14
movaps %xmm6,%xmm15
addps  %xmm7,%xmm14
subps  %xmm7,%xmm15
movaps %xmm8,%xmm0
movaps %xmm8,%xmm2
addps  %xmm10,%xmm0
subps  %xmm10,%xmm2
movaps %xmm9,%xmm1
movaps %xmm9,%xmm3
addps  %xmm11,%xmm1
subps  %xmm11,%xmm3
movaps %xmm12,%xmm4
movaps %xmm12,%xmm6
addps  %xmm14,%xmm4
subps  %xmm14,%xmm6
movaps %xmm13,%xmm5
movaps %xmm13,%xmm7
addps  %xmm15,%xmm5
subps  %xmm15,%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm12
addps  %xmm4,%xmm8
subps  %xmm4,%xmm12
movaps %xmm1,%xmm9
movaps %xmm1,%xmm13
addps  %xmm5,%xmm9
subps  %xmm5,%xmm13
movaps %xmm2,%xmm10
movaps %xmm2,%xmm14
addps  %xmm6,%xmm10
subps  %xmm6,%xmm14
movaps %xmm3,%xmm11
movaps %xmm3,%xmm15
addps  %xmm7,%xmm11
subps  %xmm7,%xmm15
movups %xmm8,(%r10)
movups %xmm9,(%r11)
movups %xmm10,(%r14)
movups %xmm11,(%rbx)
movups %xmm12,(%rdi)
movups %xmm13,(%rcx)
movups %xmm14,(%rax)
movups %xmm15,(%rsi)
add    $0x4,%rdx
add    $0x10,%rsi
cmp    $0xfc,%rdx
jb     1e80 <helper_float_28_recursive+0xd70>
lea    0x800(%r8),%rdx
add    $0x2000,%r9
cmp    $0xf800,%r8
mov    %rdx,%r8
jb     1e70 <helper_float_28_recursive+0xd60>
lea    0xe000(%r15),%rax
mov    $0xfffffffffffffffc,%rcx
nopl   (%rax)
lea    -0xe000(%rax),%r8
lea    -0xc000(%rax),%r9
lea    -0xa000(%rax),%r10
lea    -0x8000(%rax),%rbx
lea    -0x6000(%rax),%rdx
lea    -0x4000(%rax),%rsi
lea    -0x2000(%rax),%rdi
movups (%r8),%xmm0
movups (%r9),%xmm1
movups (%r10),%xmm2
movups (%rbx),%xmm3
movups (%rdx),%xmm4
movups (%rsi),%xmm5
movups (%rdi),%xmm6
movups (%rax),%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm9
addps  %xmm1,%xmm8
subps  %xmm1,%xmm9
movaps %xmm2,%xmm10
movaps %xmm2,%xmm11
addps  %xmm3,%xmm10
subps  %xmm3,%xmm11
movaps %xmm4,%xmm12
movaps %xmm4,%xmm13
addps  %xmm5,%xmm12
subps  %xmm5,%xmm13
movaps %xmm6,%xmm14
movaps %xmm6,%xmm15
addps  %xmm7,%xmm14
subps  %xmm7,%xmm15
movaps %xmm8,%xmm0
movaps %xmm8,%xmm2
addps  %xmm10,%xmm0
subps  %xmm10,%xmm2
movaps %xmm9,%xmm1
movaps %xmm9,%xmm3
addps  %xmm11,%xmm1
subps  %xmm11,%xmm3
movaps %xmm12,%xmm4
movaps %xmm12,%xmm6
addps  %xmm14,%xmm4
subps  %xmm14,%xmm6
movaps %xmm13,%xmm5
movaps %xmm13,%xmm7
addps  %xmm15,%xmm5
subps  %xmm15,%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm12
addps  %xmm4,%xmm8
subps  %xmm4,%xmm12
movaps %xmm1,%xmm9
movaps %xmm1,%xmm13
addps  %xmm5,%xmm9
subps  %xmm5,%xmm13
movaps %xmm2,%xmm10
movaps %xmm2,%xmm14
addps  %xmm6,%xmm10
subps  %xmm6,%xmm14
movaps %xmm3,%xmm11
movaps %xmm3,%xmm15
addps  %xmm7,%xmm11
subps  %xmm7,%xmm15
movups %xmm8,(%r8)
movups %xmm9,(%r9)
movups %xmm10,(%r10)
movups %xmm11,(%rbx)
movups %xmm12,(%rdx)
movups %xmm13,(%rsi)
movups %xmm14,(%rdi)
movups %xmm15,(%rax)
add    $0x4,%rcx
add    $0x10,%rax
cmp    $0x7fc,%rcx
jb     1ff0 <helper_float_28_recursive+0xee0>
lea    0x10000(%r15),%rax
mov    $0xfffffffffffffffc,%rcx
nop
lea    0x2000(%rax),%r8
lea    0x4000(%rax),%r9
lea    0x6000(%rax),%r10
lea    0x8000(%rax),%rbx
lea    0xa000(%rax),%rdx
lea    0xc000(%rax),%rsi
lea    0xe000(%rax),%rdi
movups (%rax),%xmm0
movups (%r8),%xmm1
movups (%r9),%xmm2
movups (%r10),%xmm3
movups (%rbx),%xmm4
movups (%rdx),%xmm5
movups (%rsi),%xmm6
movups (%rdi),%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm9
addps  %xmm1,%xmm8
subps  %xmm1,%xmm9
movaps %xmm2,%xmm10
movaps %xmm2,%xmm11
addps  %xmm3,%xmm10
subps  %xmm3,%xmm11
movaps %xmm4,%xmm12
movaps %xmm4,%xmm13
addps  %xmm5,%xmm12
subps  %xmm5,%xmm13
movaps %xmm6,%xmm14
movaps %xmm6,%xmm15
addps  %xmm7,%xmm14
subps  %xmm7,%xmm15
movaps %xmm8,%xmm0
movaps %xmm8,%xmm2
addps  %xmm10,%xmm0
subps  %xmm10,%xmm2
movaps %xmm9,%xmm1
movaps %xmm9,%xmm3
addps  %xmm11,%xmm1
subps  %xmm11,%xmm3
movaps %xmm12,%xmm4
movaps %xmm12,%xmm6
addps  %xmm14,%xmm4
subps  %xmm14,%xmm6
movaps %xmm13,%xmm5
movaps %xmm13,%xmm7
addps  %xmm15,%xmm5
subps  %xmm15,%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm12
addps  %xmm4,%xmm8
subps  %xmm4,%xmm12
movaps %xmm1,%xmm9
movaps %xmm1,%xmm13
addps  %xmm5,%xmm9
subps  %xmm5,%xmm13
movaps %xmm2,%xmm10
movaps %xmm2,%xmm14
addps  %xmm6,%xmm10
subps  %xmm6,%xmm14
movaps %xmm3,%xmm11
movaps %xmm3,%xmm15
addps  %xmm7,%xmm11
subps  %xmm7,%xmm15
movups %xmm8,(%rax)
movups %xmm9,(%r8)
movups %xmm10,(%r9)
movups %xmm11,(%r10)
movups %xmm12,(%rbx)
movups %xmm13,(%rdx)
movups %xmm14,(%rsi)
movups %xmm15,(%rdi)
add    $0x4,%rcx
add    $0x10,%rax
cmp    $0x7fc,%rcx
jb     2140 <helper_float_28_recursive+0x1030>
lea    0x20000(%r15),%rax
mov    $0xfffffffffffffffc,%rcx
nop
lea    0x2000(%rax),%r8
lea    0x4000(%rax),%r9
lea    0x6000(%rax),%r10
lea    0x8000(%rax),%rbx
lea    0xa000(%rax),%rdx
lea    0xc000(%rax),%rsi
lea    0xe000(%rax),%rdi
movups (%rax),%xmm0
movups (%r8),%xmm1
movups (%r9),%xmm2
movups (%r10),%xmm3
movups (%rbx),%xmm4
movups (%rdx),%xmm5
movups (%rsi),%xmm6
movups (%rdi),%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm9
addps  %xmm1,%xmm8
subps  %xmm1,%xmm9
movaps %xmm2,%xmm10
movaps %xmm2,%xmm11
addps  %xmm3,%xmm10
subps  %xmm3,%xmm11
movaps %xmm4,%xmm12
movaps %xmm4,%xmm13
addps  %xmm5,%xmm12
subps  %xmm5,%xmm13
movaps %xmm6,%xmm14
movaps %xmm6,%xmm15
addps  %xmm7,%xmm14
subps  %xmm7,%xmm15
movaps %xmm8,%xmm0
movaps %xmm8,%xmm2
addps  %xmm10,%xmm0
subps  %xmm10,%xmm2
movaps %xmm9,%xmm1
movaps %xmm9,%xmm3
addps  %xmm11,%xmm1
subps  %xmm11,%xmm3
movaps %xmm12,%xmm4
movaps %xmm12,%xmm6
addps  %xmm14,%xmm4
subps  %xmm14,%xmm6
movaps %xmm13,%xmm5
movaps %xmm13,%xmm7
addps  %xmm15,%xmm5
subps  %xmm15,%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm12
addps  %xmm4,%xmm8
subps  %xmm4,%xmm12
movaps %xmm1,%xmm9
movaps %xmm1,%xmm13
addps  %xmm5,%xmm9
subps  %xmm5,%xmm13
movaps %xmm2,%xmm10
movaps %xmm2,%xmm14
addps  %xmm6,%xmm10
subps  %xmm6,%xmm14
movaps %xmm3,%xmm11
movaps %xmm3,%xmm15
addps  %xmm7,%xmm11
subps  %xmm7,%xmm15
movups %xmm8,(%rax)
movups %xmm9,(%r8)
movups %xmm10,(%r9)
movups %xmm11,(%r10)
movups %xmm12,(%rbx)
movups %xmm13,(%rdx)
movups %xmm14,(%rsi)
movups %xmm15,(%rdi)
add    $0x4,%rcx
add    $0x10,%rax
cmp    $0x7fc,%rcx
jb     2290 <helper_float_28_recursive+0x1180>
lea    0x30000(%r15),%rax
mov    $0xfffffffffffffffc,%rcx
nop
lea    0x2000(%rax),%r8
lea    0x4000(%rax),%r9
lea    0x6000(%rax),%r10
lea    0x8000(%rax),%rbx
lea    0xa000(%rax),%rdx
lea    0xc000(%rax),%rsi
lea    0xe000(%rax),%rdi
movups (%rax),%xmm0
movups (%r8),%xmm1
movups (%r9),%xmm2
movups (%r10),%xmm3
movups (%rbx),%xmm4
movups (%rdx),%xmm5
movups (%rsi),%xmm6
movups (%rdi),%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm9
addps  %xmm1,%xmm8
subps  %xmm1,%xmm9
movaps %xmm2,%xmm10
movaps %xmm2,%xmm11
addps  %xmm3,%xmm10
subps  %xmm3,%xmm11
movaps %xmm4,%xmm12
movaps %xmm4,%xmm13
addps  %xmm5,%xmm12
subps  %xmm5,%xmm13
movaps %xmm6,%xmm14
movaps %xmm6,%xmm15
addps  %xmm7,%xmm14
subps  %xmm7,%xmm15
movaps %xmm8,%xmm0
movaps %xmm8,%xmm2
addps  %xmm10,%xmm0
subps  %xmm10,%xmm2
movaps %xmm9,%xmm1
movaps %xmm9,%xmm3
addps  %xmm11,%xmm1
subps  %xmm11,%xmm3
movaps %xmm12,%xmm4
movaps %xmm12,%xmm6
addps  %xmm14,%xmm4
subps  %xmm14,%xmm6
movaps %xmm13,%xmm5
movaps %xmm13,%xmm7
addps  %xmm15,%xmm5
subps  %xmm15,%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm12
addps  %xmm4,%xmm8
subps  %xmm4,%xmm12
movaps %xmm1,%xmm9
movaps %xmm1,%xmm13
addps  %xmm5,%xmm9
subps  %xmm5,%xmm13
movaps %xmm2,%xmm10
movaps %xmm2,%xmm14
addps  %xmm6,%xmm10
subps  %xmm6,%xmm14
movaps %xmm3,%xmm11
movaps %xmm3,%xmm15
addps  %xmm7,%xmm11
subps  %xmm7,%xmm15
movups %xmm8,(%rax)
movups %xmm9,(%r8)
movups %xmm10,(%r9)
movups %xmm11,(%r10)
movups %xmm12,(%rbx)
movups %xmm13,(%rdx)
movups %xmm14,(%rsi)
movups %xmm15,(%rdi)
add    $0x4,%rcx
add    $0x10,%rax
cmp    $0x7fc,%rcx
jb     23e0 <helper_float_28_recursive+0x12d0>
mov    $0xfffffffffffffffc,%rax
nopl   0x0(%rax,%rax,1)
lea    0x10000(%r15),%rcx
lea    0x20000(%r15),%rdx
lea    0x30000(%r15),%rsi
movups (%r15),%xmm0
movups (%rcx),%xmm1
movups (%rdx),%xmm2
movups (%rsi),%xmm3
movaps %xmm0,%xmm8
movaps %xmm0,%xmm9
addps  %xmm1,%xmm8
subps  %xmm1,%xmm9
movaps %xmm2,%xmm10
movaps %xmm2,%xmm11
addps  %xmm3,%xmm10
subps  %xmm3,%xmm11
movaps %xmm8,%xmm0
movaps %xmm8,%xmm2
addps  %xmm10,%xmm0
subps  %xmm10,%xmm2
movaps %xmm9,%xmm1
movaps %xmm9,%xmm3
addps  %xmm11,%xmm1
subps  %xmm11,%xmm3
movups %xmm0,(%r15)
movups %xmm1,(%rcx)
movups %xmm2,(%rdx)
movups %xmm3,(%rsi)
add    $0x4,%rax
add    $0x10,%r15
cmp    $0x3ffc,%rax
jb     2530 <helper_float_28_recursive+0x1420>
jmp    2d30 <helper_float_28_recursive+0x1c20>
mov    %r15,%rdi
mov    $0x10,%esi
call   1030 <helper_float_28_recursive@plt>
lea    0x40000(%r15),%rdi
mov    $0x10,%esi
call   1030 <helper_float_28_recursive@plt>
lea    0x80000(%r15),%rdi
mov    $0x10,%esi
call   1030 <helper_float_28_recursive@plt>
lea    0xc0000(%r15),%rdi
mov    $0x10,%esi
call   1030 <helper_float_28_recursive@plt>
lea    0x100000(%r15),%rdi
mov    $0x10,%esi
call   1030 <helper_float_28_recursive@plt>
lea    0x140000(%r15),%rdi
mov    $0x10,%esi
call   1030 <helper_float_28_recursive@plt>
lea    0x180000(%r15),%rdi
mov    $0x10,%esi
call   1030 <helper_float_28_recursive@plt>
add    $0x1c0000,%r15
mov    %r15,%rdi
mov    $0x10,%esi
call   1030 <helper_float_28_recursive@plt>
mov    $0xfffffffffffffffc,%rax
cs nopw 0x0(%rax,%rax,1)
nopl   0x0(%rax)
lea    -0x1c0000(%r15),%r8
lea    -0x180000(%r15),%r9
lea    -0x140000(%r15),%rsi
lea    -0x100000(%r15),%rdi
lea    -0xc0000(%r15),%rbx
lea    -0x80000(%r15),%rcx
lea    -0x40000(%r15),%rdx
movups (%r8),%xmm0
movups (%r9),%xmm1
movups (%rsi),%xmm2
movups (%rdi),%xmm3
movups (%rbx),%xmm4
movups (%rcx),%xmm5
movups (%rdx),%xmm6
movups (%r15),%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm9
addps  %xmm1,%xmm8
subps  %xmm1,%xmm9
movaps %xmm2,%xmm10
movaps %xmm2,%xmm11
addps  %xmm3,%xmm10
subps  %xmm3,%xmm11
movaps %xmm4,%xmm12
movaps %xmm4,%xmm13
addps  %xmm5,%xmm12
subps  %xmm5,%xmm13
movaps %xmm6,%xmm14
movaps %xmm6,%xmm15
addps  %xmm7,%xmm14
subps  %xmm7,%xmm15
movaps %xmm8,%xmm0
movaps %xmm8,%xmm2
addps  %xmm10,%xmm0
subps  %xmm10,%xmm2
movaps %xmm9,%xmm1
movaps %xmm9,%xmm3
addps  %xmm11,%xmm1
subps  %xmm11,%xmm3
movaps %xmm12,%xmm4
movaps %xmm12,%xmm6
addps  %xmm14,%xmm4
subps  %xmm14,%xmm6
movaps %xmm13,%xmm5
movaps %xmm13,%xmm7
addps  %xmm15,%xmm5
subps  %xmm15,%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm12
addps  %xmm4,%xmm8
subps  %xmm4,%xmm12
movaps %xmm1,%xmm9
movaps %xmm1,%xmm13
addps  %xmm5,%xmm9
subps  %xmm5,%xmm13
movaps %xmm2,%xmm10
movaps %xmm2,%xmm14
addps  %xmm6,%xmm10
subps  %xmm6,%xmm14
movaps %xmm3,%xmm11
movaps %xmm3,%xmm15
addps  %xmm7,%xmm11
subps  %xmm7,%xmm15
movups %xmm8,(%r8)
movups %xmm9,(%r9)
movups %xmm10,(%rsi)
movups %xmm11,(%rdi)
movups %xmm12,(%rbx)
movups %xmm13,(%rcx)
movups %xmm14,(%rdx)
movups %xmm15,(%r15)
add    $0x4,%rax
add    $0x10,%r15
cmp    $0xfffc,%rax
jb     2650 <helper_float_28_recursive+0x1540>
jmp    2d30 <helper_float_28_recursive+0x1c20>
mov    %r15,%rdi
mov    $0x13,%esi
call   1030 <helper_float_28_recursive@plt>
lea    0x200000(%r15),%rdi
mov    $0x13,%esi
call   1030 <helper_float_28_recursive@plt>
lea    0x400000(%r15),%rdi
mov    $0x13,%esi
call   1030 <helper_float_28_recursive@plt>
lea    0x600000(%r15),%rdi
mov    $0x13,%esi
call   1030 <helper_float_28_recursive@plt>
lea    0x800000(%r15),%rdi
mov    $0x13,%esi
call   1030 <helper_float_28_recursive@plt>
lea    0xa00000(%r15),%rdi
mov    $0x13,%esi
call   1030 <helper_float_28_recursive@plt>
lea    0xc00000(%r15),%rdi
mov    $0x13,%esi
call   1030 <helper_float_28_recursive@plt>
add    $0xe00000,%r15
mov    %r15,%rdi
mov    $0x13,%esi
call   1030 <helper_float_28_recursive@plt>
mov    $0xfffffffffffffffc,%rax
cs nopw 0x0(%rax,%rax,1)
nopl   (%rax)
lea    -0xe00000(%r15),%r8
lea    -0xc00000(%r15),%r9
lea    -0xa00000(%r15),%rsi
lea    -0x800000(%r15),%rdi
lea    -0x600000(%r15),%rbx
lea    -0x400000(%r15),%rcx
lea    -0x200000(%r15),%rdx
movups (%r8),%xmm0
movups (%r9),%xmm1
movups (%rsi),%xmm2
movups (%rdi),%xmm3
movups (%rbx),%xmm4
movups (%rcx),%xmm5
movups (%rdx),%xmm6
movups (%r15),%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm9
addps  %xmm1,%xmm8
subps  %xmm1,%xmm9
movaps %xmm2,%xmm10
movaps %xmm2,%xmm11
addps  %xmm3,%xmm10
subps  %xmm3,%xmm11
movaps %xmm4,%xmm12
movaps %xmm4,%xmm13
addps  %xmm5,%xmm12
subps  %xmm5,%xmm13
movaps %xmm6,%xmm14
movaps %xmm6,%xmm15
addps  %xmm7,%xmm14
subps  %xmm7,%xmm15
movaps %xmm8,%xmm0
movaps %xmm8,%xmm2
addps  %xmm10,%xmm0
subps  %xmm10,%xmm2
movaps %xmm9,%xmm1
movaps %xmm9,%xmm3
addps  %xmm11,%xmm1
subps  %xmm11,%xmm3
movaps %xmm12,%xmm4
movaps %xmm12,%xmm6
addps  %xmm14,%xmm4
subps  %xmm14,%xmm6
movaps %xmm13,%xmm5
movaps %xmm13,%xmm7
addps  %xmm15,%xmm5
subps  %xmm15,%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm12
addps  %xmm4,%xmm8
subps  %xmm4,%xmm12
movaps %xmm1,%xmm9
movaps %xmm1,%xmm13
addps  %xmm5,%xmm9
subps  %xmm5,%xmm13
movaps %xmm2,%xmm10
movaps %xmm2,%xmm14
addps  %xmm6,%xmm10
subps  %xmm6,%xmm14
movaps %xmm3,%xmm11
movaps %xmm3,%xmm15
addps  %xmm7,%xmm11
subps  %xmm7,%xmm15
movups %xmm8,(%r8)
movups %xmm9,(%r9)
movups %xmm10,(%rsi)
movups %xmm11,(%rdi)
movups %xmm12,(%rbx)
movups %xmm13,(%rcx)
movups %xmm14,(%rdx)
movups %xmm15,(%r15)
add    $0x4,%rax
add    $0x10,%r15
cmp    $0x7fffc,%rax
jb     2830 <helper_float_28_recursive+0x1720>
jmp    2d30 <helper_float_28_recursive+0x1c20>
mov    %r15,%rdi
mov    $0x16,%esi
call   1030 <helper_float_28_recursive@plt>
lea    0x1000000(%r15),%rdi
mov    $0x16,%esi
call   1030 <helper_float_28_recursive@plt>
lea    0x2000000(%r15),%rdi
mov    $0x16,%esi
call   1030 <helper_float_28_recursive@plt>
lea    0x3000000(%r15),%rdi
mov    $0x16,%esi
call   1030 <helper_float_28_recursive@plt>
lea    0x4000000(%r15),%rdi
mov    $0x16,%esi
call   1030 <helper_float_28_recursive@plt>
lea    0x5000000(%r15),%rdi
mov    $0x16,%esi
call   1030 <helper_float_28_recursive@plt>
lea    0x6000000(%r15),%rdi
mov    $0x16,%esi
call   1030 <helper_float_28_recursive@plt>
add    $0x7000000,%r15
mov    %r15,%rdi
mov    $0x16,%esi
call   1030 <helper_float_28_recursive@plt>
mov    $0xfffffffffffffffc,%rax
cs nopw 0x0(%rax,%rax,1)
nopl   (%rax)
lea    -0x7000000(%r15),%r8
lea    -0x6000000(%r15),%r9
lea    -0x5000000(%r15),%rsi
lea    -0x4000000(%r15),%rdi
lea    -0x3000000(%r15),%rbx
lea    -0x2000000(%r15),%rcx
lea    -0x1000000(%r15),%rdx
movups (%r8),%xmm0
movups (%r9),%xmm1
movups (%rsi),%xmm2
movups (%rdi),%xmm3
movups (%rbx),%xmm4
movups (%rcx),%xmm5
movups (%rdx),%xmm6
movups (%r15),%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm9
addps  %xmm1,%xmm8
subps  %xmm1,%xmm9
movaps %xmm2,%xmm10
movaps %xmm2,%xmm11
addps  %xmm3,%xmm10
subps  %xmm3,%xmm11
movaps %xmm4,%xmm12
movaps %xmm4,%xmm13
addps  %xmm5,%xmm12
subps  %xmm5,%xmm13
movaps %xmm6,%xmm14
movaps %xmm6,%xmm15
addps  %xmm7,%xmm14
subps  %xmm7,%xmm15
movaps %xmm8,%xmm0
movaps %xmm8,%xmm2
addps  %xmm10,%xmm0
subps  %xmm10,%xmm2
movaps %xmm9,%xmm1
movaps %xmm9,%xmm3
addps  %xmm11,%xmm1
subps  %xmm11,%xmm3
movaps %xmm12,%xmm4
movaps %xmm12,%xmm6
addps  %xmm14,%xmm4
subps  %xmm14,%xmm6
movaps %xmm13,%xmm5
movaps %xmm13,%xmm7
addps  %xmm15,%xmm5
subps  %xmm15,%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm12
addps  %xmm4,%xmm8
subps  %xmm4,%xmm12
movaps %xmm1,%xmm9
movaps %xmm1,%xmm13
addps  %xmm5,%xmm9
subps  %xmm5,%xmm13
movaps %xmm2,%xmm10
movaps %xmm2,%xmm14
addps  %xmm6,%xmm10
subps  %xmm6,%xmm14
movaps %xmm3,%xmm11
movaps %xmm3,%xmm15
addps  %xmm7,%xmm11
subps  %xmm7,%xmm15
movups %xmm8,(%r8)
movups %xmm9,(%r9)
movups %xmm10,(%rsi)
movups %xmm11,(%rdi)
movups %xmm12,(%rbx)
movups %xmm13,(%rcx)
movups %xmm14,(%rdx)
movups %xmm15,(%r15)
add    $0x4,%rax
add    $0x10,%r15
cmp    $0x3ffffc,%rax
jb     2a10 <helper_float_28_recursive+0x1900>
jmp    2d30 <helper_float_28_recursive+0x1c20>
mov    %r15,%rdi
mov    $0x19,%esi
call   1030 <helper_float_28_recursive@plt>
lea    0x8000000(%r15),%rdi
mov    $0x19,%esi
call   1030 <helper_float_28_recursive@plt>
lea    0x10000000(%r15),%rdi
mov    $0x19,%esi
call   1030 <helper_float_28_recursive@plt>
lea    0x18000000(%r15),%rdi
mov    $0x19,%esi
call   1030 <helper_float_28_recursive@plt>
lea    0x20000000(%r15),%rdi
mov    $0x19,%esi
call   1030 <helper_float_28_recursive@plt>
lea    0x28000000(%r15),%rdi
mov    $0x19,%esi
call   1030 <helper_float_28_recursive@plt>
lea    0x30000000(%r15),%rdi
mov    $0x19,%esi
call   1030 <helper_float_28_recursive@plt>
add    $0x38000000,%r15
mov    %r15,%rdi
mov    $0x19,%esi
call   1030 <helper_float_28_recursive@plt>
mov    $0xfffffffffffffffc,%rax
cs nopw 0x0(%rax,%rax,1)
nopl   (%rax)
lea    -0x38000000(%r15),%r8
lea    -0x30000000(%r15),%r9
lea    -0x28000000(%r15),%rsi
lea    -0x20000000(%r15),%rdi
lea    -0x18000000(%r15),%rbx
lea    -0x10000000(%r15),%rcx
lea    -0x8000000(%r15),%rdx
movups (%r8),%xmm0
movups (%r9),%xmm1
movups (%rsi),%xmm2
movups (%rdi),%xmm3
movups (%rbx),%xmm4
movups (%rcx),%xmm5
movups (%rdx),%xmm6
movups (%r15),%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm9
addps  %xmm1,%xmm8
subps  %xmm1,%xmm9
movaps %xmm2,%xmm10
movaps %xmm2,%xmm11
addps  %xmm3,%xmm10
subps  %xmm3,%xmm11
movaps %xmm4,%xmm12
movaps %xmm4,%xmm13
addps  %xmm5,%xmm12
subps  %xmm5,%xmm13
movaps %xmm6,%xmm14
movaps %xmm6,%xmm15
addps  %xmm7,%xmm14
subps  %xmm7,%xmm15
movaps %xmm8,%xmm0
movaps %xmm8,%xmm2
addps  %xmm10,%xmm0
subps  %xmm10,%xmm2
movaps %xmm9,%xmm1
movaps %xmm9,%xmm3
addps  %xmm11,%xmm1
subps  %xmm11,%xmm3
movaps %xmm12,%xmm4
movaps %xmm12,%xmm6
addps  %xmm14,%xmm4
subps  %xmm14,%xmm6
movaps %xmm13,%xmm5
movaps %xmm13,%xmm7
addps  %xmm15,%xmm5
subps  %xmm15,%xmm7
movaps %xmm0,%xmm8
movaps %xmm0,%xmm12
addps  %xmm4,%xmm8
subps  %xmm4,%xmm12
movaps %xmm1,%xmm9
movaps %xmm1,%xmm13
addps  %xmm5,%xmm9
subps  %xmm5,%xmm13
movaps %xmm2,%xmm10
movaps %xmm2,%xmm14
addps  %xmm6,%xmm10
subps  %xmm6,%xmm14
movaps %xmm3,%xmm11
movaps %xmm3,%xmm15
addps  %xmm7,%xmm11
subps  %xmm7,%xmm15
movups %xmm8,(%r8)
movups %xmm9,(%r9)
movups %xmm10,(%rsi)
movups %xmm11,(%rdi)
movups %xmm12,(%rbx)
movups %xmm13,(%rcx)
movups %xmm14,(%rdx)
movups %xmm15,(%r15)
add    $0x4,%rax
add    $0x10,%r15
cmp    $0x1fffffc,%rax
jb     2bf0 <helper_float_28_recursive+0x1ae0>
pop    %rbx
pop    %r14
pop    %r15
ret

LLVM IR (-O0):
define void @helper_float_28_recursive(float* %0, i32 %1) {
%3 = alloca float*
%4 = alloca i32
%5 = alloca i32
%6 = alloca i32
%7 = alloca i32
%8 = alloca i32
%9 = alloca i32
%10 = alloca i32
%11 = alloca i32
%12 = alloca i32
%13 = alloca i32
%14 = alloca i32
%15 = alloca i32
%16 = alloca i32
%17 = alloca i32
%18 = alloca i32
%19 = alloca i32
%20 = alloca i32
%21 = alloca i32
%22 = alloca i32
store float* %0, float** %3
store i32 %1, i32* %4
%23 = load i32, i32* %4
%24 = icmp eq i32 %23, 16
br i1 %24, label %25, label %394
25: ; preds = %2
store i32 0, i32* %5
br label %26
26: ; preds = %102, %25
%27 = load i32, i32* %5
%28 = icmp slt i32 %27, 65536
br i1 %28, label %29, label %105
29: ; preds = %26
store i32 0, i32* %6
br label %30
30: ; preds = %98, %29
%31 = load i32, i32* %6
%32 = icmp slt i32 %31, 4
br i1 %32, label %33, label %101
33: ; preds = %30
%34 = load float*, float** %3
%35 = load i32, i32* %5
%36 = sext i32 %35 to i64
%37 = getelementptr inbounds float, float* %34, i64 %36
%38 = load i32, i32* %6
%39 = sext i32 %38 to i64
%40 = getelementptr inbounds float, float* %37, i64 %39
%41 = getelementptr inbounds float, float* %40, i64 0
%42 = load float*, float** %3
%43 = load i32, i32* %5
%44 = sext i32 %43 to i64
%45 = getelementptr inbounds float, float* %42, i64 %44
%46 = load i32, i32* %6
%47 = sext i32 %46 to i64
%48 = getelementptr inbounds float, float* %45, i64 %47
%49 = getelementptr inbounds float, float* %48, i64 4
%50 = load float*, float** %3
%51 = load i32, i32* %5
%52 = sext i32 %51 to i64
%53 = getelementptr inbounds float, float* %50, i64 %52
%54 = load i32, i32* %6
%55 = sext i32 %54 to i64
%56 = getelementptr inbounds float, float* %53, i64 %55
%57 = getelementptr inbounds float, float* %56, i64 8
%58 = load float*, float** %3
%59 = load i32, i32* %5
%60 = sext i32 %59 to i64
%61 = getelementptr inbounds float, float* %58, i64 %60
%62 = load i32, i32* %6
%63 = sext i32 %62 to i64
%64 = getelementptr inbounds float, float* %61, i64 %63
%65 = getelementptr inbounds float, float* %64, i64 12
%66 = load float*, float** %3
%67 = load i32, i32* %5
%68 = sext i32 %67 to i64
%69 = getelementptr inbounds float, float* %66, i64 %68
%70 = load i32, i32* %6
%71 = sext i32 %70 to i64
%72 = getelementptr inbounds float, float* %69, i64 %71
%73 = getelementptr inbounds float, float* %72, i64 16
%74 = load float*, float** %3
%75 = load i32, i32* %5
%76 = sext i32 %75 to i64
%77 = getelementptr inbounds float, float* %74, i64 %76
%78 = load i32, i32* %6
%79 = sext i32 %78 to i64
%80 = getelementptr inbounds float, float* %77, i64 %79
%81 = getelementptr inbounds float, float* %80, i64 20
%82 = load float*, float** %3
%83 = load i32, i32* %5
%84 = sext i32 %83 to i64
%85 = getelementptr inbounds float, float* %82, i64 %84
%86 = load i32, i32* %6
%87 = sext i32 %86 to i64
%88 = getelementptr inbounds float, float* %85, i64 %87
%89 = getelementptr inbounds float, float* %88, i64 24
%90 = load float*, float** %3
%91 = load i32, i32* %5
%92 = sext i32 %91 to i64
%93 = getelementptr inbounds float, float* %90, i64 %92
%94 = load i32, i32* %6
%95 = sext i32 %94 to i64
%96 = getelementptr inbounds float, float* %93, i64 %95
%97 = getelementptr inbounds float, float* %96, i64 28
br label %98
98: ; preds = %33
%99 = load i32, i32* %6
%100 = add nsw i32 %99, 4
store i32 %100, i32* %6
br label %30
101: ; preds = %30
br label %102
102: ; preds = %101
%103 = load i32, i32* %5
%104 = add nsw i32 %103, 32
store i32 %104, i32* %5
br label %26
105: ; preds = %26
store i32 0, i32* %7
br label %106
106: ; preds = %182, %105
%107 = load i32, i32* %7
%108 = icmp slt i32 %107, 65536
br i1 %108, label %109, label %185
109: ; preds = %106
store i32 0, i32* %8
br label %110
110: ; preds = %178, %109
%111 = load i32, i32* %8
%112 = icmp slt i32 %111, 32
br i1 %112, label %113, label %181
113: ; preds = %110
%114 = load float*, float** %3
%115 = load i32, i32* %7
%116 = sext i32 %115 to i64
%117 = getelementptr inbounds float, float* %114, i64 %116
%118 = load i32, i32* %8
%119 = sext i32 %118 to i64
%120 = getelementptr inbounds float, float* %117, i64 %119
%121 = getelementptr inbounds float, float* %120, i64 0
%122 = load float*, float** %3
%123 = load i32, i32* %7
%124 = sext i32 %123 to i64
%125 = getelementptr inbounds float, float* %122, i64 %124
%126 = load i32, i32* %8
%127 = sext i32 %126 to i64
%128 = getelementptr inbounds float, float* %125, i64 %127
%129 = getelementptr inbounds float, float* %128, i64 32
%130 = load float*, float** %3
%131 = load i32, i32* %7
%132 = sext i32 %131 to i64
%133 = getelementptr inbounds float, float* %130, i64 %132
%134 = load i32, i32* %8
%135 = sext i32 %134 to i64
%136 = getelementptr inbounds float, float* %133, i64 %135
%137 = getelementptr inbounds float, float* %136, i64 64
%138 = load float*, float** %3
%139 = load i32, i32* %7
%140 = sext i32 %139 to i64
%141 = getelementptr inbounds float, float* %138, i64 %140
%142 = load i32, i32* %8
%143 = sext i32 %142 to i64
%144 = getelementptr inbounds float, float* %141, i64 %143
%145 = getelementptr inbounds float, float* %144, i64 96
%146 = load float*, float** %3
%147 = load i32, i32* %7
%148 = sext i32 %147 to i64
%149 = getelementptr inbounds float, float* %146, i64 %148
%150 = load i32, i32* %8
%151 = sext i32 %150 to i64
%152 = getelementptr inbounds float, float* %149, i64 %151
%153 = getelementptr inbounds float, float* %152, i64 128
%154 = load float*, float** %3
%155 = load i32, i32* %7
%156 = sext i32 %155 to i64
%157 = getelementptr inbounds float, float* %154, i64 %156
%158 = load i32, i32* %8
%159 = sext i32 %158 to i64
%160 = getelementptr inbounds float, float* %157, i64 %159
%161 = getelementptr inbounds float, float* %160, i64 160
%162 = load float*, float** %3
%163 = load i32, i32* %7
%164 = sext i32 %163 to i64
%165 = getelementptr inbounds float, float* %162, i64 %164
%166 = load i32, i32* %8
%167 = sext i32 %166 to i64
%168 = getelementptr inbounds float, float* %165, i64 %167
%169 = getelementptr inbounds float, float* %168, i64 192
%170 = load float*, float** %3
%171 = load i32, i32* %7
%172 = sext i32 %171 to i64
%173 = getelementptr inbounds float, float* %170, i64 %172
%174 = load i32, i32* %8
%175 = sext i32 %174 to i64
%176 = getelementptr inbounds float, float* %173, i64 %175
%177 = getelementptr inbounds float, float* %176, i64 224
br label %178
178: ; preds = %113
%179 = load i32, i32* %8
%180 = add nsw i32 %179, 4
store i32 %180, i32* %8
br label %110
181: ; preds = %110
br label %182
182: ; preds = %181
%183 = load i32, i32* %7
%184 = add nsw i32 %183, 256
store i32 %184, i32* %7
br label %106
185: ; preds = %106
store i32 0, i32* %9
br label %186
186: ; preds = %262, %185
%187 = load i32, i32* %9
%188 = icmp slt i32 %187, 65536
br i1 %188, label %189, label %265
189: ; preds = %186
store i32 0, i32* %10
br label %190
190: ; preds = %258, %189
%191 = load i32, i32* %10
%192 = icmp slt i32 %191, 256
br i1 %192, label %193, label %261
193: ; preds = %190
%194 = load float*, float** %3
%195 = load i32, i32* %9
%196 = sext i32 %195 to i64
%197 = getelementptr inbounds float, float* %194, i64 %196
%198 = load i32, i32* %10
%199 = sext i32 %198 to i64
%200 = getelementptr inbounds float, float* %197, i64 %199
%201 = getelementptr inbounds float, float* %200, i64 0
%202 = load float*, float** %3
%203 = load i32, i32* %9
%204 = sext i32 %203 to i64
%205 = getelementptr inbounds float, float* %202, i64 %204
%206 = load i32, i32* %10
%207 = sext i32 %206 to i64
%208 = getelementptr inbounds float, float* %205, i64 %207
%209 = getelementptr inbounds float, float* %208, i64 256
%210 = load float*, float** %3
%211 = load i32, i32* %9
%212 = sext i32 %211 to i64
%213 = getelementptr inbounds float, float* %210, i64 %212
%214 = load i32, i32* %10
%215 = sext i32 %214 to i64
%216 = getelementptr inbounds float, float* %213, i64 %215
%217 = getelementptr inbounds float, float* %216, i64 512
%218 = load float*, float** %3
%219 = load i32, i32* %9
%220 = sext i32 %219 to i64
%221 = getelementptr inbounds float, float* %218, i64 %220
%222 = load i32, i32* %10
%223 = sext i32 %222 to i64
%224 = getelementptr inbounds float, float* %221, i64 %223
%225 = getelementptr inbounds float, float* %224, i64 768
%226 = load float*, float** %3
%227 = load i32, i32* %9
%228 = sext i32 %227 to i64
%229 = getelementptr inbounds float, float* %226, i64 %228
%230 = load i32, i32* %10
%231 = sext i32 %230 to i64
%232 = getelementptr inbounds float, float* %229, i64 %231
%233 = getelementptr inbounds float, float* %232, i64 1024
%234 = load float*, float** %3
%235 = load i32, i32* %9
%236 = sext i32 %235 to i64
%237 = getelementptr inbounds float, float* %234, i64 %236
%238 = load i32, i32* %10
%239 = sext i32 %238 to i64
%240 = getelementptr inbounds float, float* %237, i64 %239
%241 = getelementptr inbounds float, float* %240, i64 1280
%242 = load float*, float** %3
%243 = load i32, i32* %9
%244 = sext i32 %243 to i64
%245 = getelementptr inbounds float, float* %242, i64 %244
%246 = load i32, i32* %10
%247 = sext i32 %246 to i64
%248 = getelementptr inbounds float, float* %245, i64 %247
%249 = getelementptr inbounds float, float* %248, i64 1536
%250 = load float*, float** %3
%251 = load i32, i32* %9
%252 = sext i32 %251 to i64
%253 = getelementptr inbounds float, float* %250, i64 %252
%254 = load i32, i32* %10
%255 = sext i32 %254 to i64
%256 = getelementptr inbounds float, float* %253, i64 %255
%257 = getelementptr inbounds float, float* %256, i64 1792
br label %258
258: ; preds = %193
%259 = load i32, i32* %10
%260 = add nsw i32 %259, 4
store i32 %260, i32* %10
br label %190
261: ; preds = %190
br label %262
262: ; preds = %261
%263 = load i32, i32* %9
%264 = add nsw i32 %263, 2048
store i32 %264, i32* %9
br label %186
265: ; preds = %186
store i32 0, i32* %11
br label %266
266: ; preds = %342, %265
%267 = load i32, i32* %11
%268 = icmp slt i32 %267, 65536
br i1 %268, label %269, label %345
269: ; preds = %266
store i32 0, i32* %12
br label %270
270: ; preds = %338, %269
%271 = load i32, i32* %12
%272 = icmp slt i32 %271, 2048
br i1 %272, label %273, label %341
273: ; preds = %270
%274 = load float*, float** %3
%275 = load i32, i32* %11
%276 = sext i32 %275 to i64
%277 = getelementptr inbounds float, float* %274, i64 %276
%278 = load i32, i32* %12
%279 = sext i32 %278 to i64
%280 = getelementptr inbounds float, float* %277, i64 %279
%281 = getelementptr inbounds float, float* %280, i64 0
%282 = load float*, float** %3
%283 = load i32, i32* %11
%284 = sext i32 %283 to i64
%285 = getelementptr inbounds float, float* %282, i64 %284
%286 = load i32, i32* %12
%287 = sext i32 %286 to i64
%288 = getelementptr inbounds float, float* %285, i64 %287
%289 = getelementptr inbounds float, float* %288, i64 2048
%290 = load float*, float** %3
%291 = load i32, i32* %11
%292 = sext i32 %291 to i64
%293 = getelementptr inbounds float, float* %290, i64 %292
%294 = load i32, i32* %12
%295 = sext i32 %294 to i64
%296 = getelementptr inbounds float, float* %293, i64 %295
%297 = getelementptr inbounds float, float* %296, i64 4096
%298 = load float*, float** %3
%299 = load i32, i32* %11
%300 = sext i32 %299 to i64
%301 = getelementptr inbounds float, float* %298, i64 %300
%302 = load i32, i32* %12
%303 = sext i32 %302 to i64
%304 = getelementptr inbounds float, float* %301, i64 %303
%305 = getelementptr inbounds float, float* %304, i64 6144
%306 = load float*, float** %3
%307 = load i32, i32* %11
%308 = sext i32 %307 to i64
%309 = getelementptr inbounds float, float* %306, i64 %308
%310 = load i32, i32* %12
%311 = sext i32 %310 to i64
%312 = getelementptr inbounds float, float* %309, i64 %311
%313 = getelementptr inbounds float, float* %312, i64 8192
%314 = load float*, float** %3
%315 = load i32, i32* %11
%316 = sext i32 %315 to i64
%317 = getelementptr inbounds float, float* %314, i64 %316
%318 = load i32, i32* %12
%319 = sext i32 %318 to i64
%320 = getelementptr inbounds float, float* %317, i64 %319
%321 = getelementptr inbounds float, float* %320, i64 10240
%322 = load float*, float** %3
%323 = load i32, i32* %11
%324 = sext i32 %323 to i64
%325 = getelementptr inbounds float, float* %322, i64 %324
%326 = load i32, i32* %12
%327 = sext i32 %326 to i64
%328 = getelementptr inbounds float, float* %325, i64 %327
%329 = getelementptr inbounds float, float* %328, i64 12288
%330 = load float*, float** %3
%331 = load i32, i32* %11
%332 = sext i32 %331 to i64
%333 = getelementptr inbounds float, float* %330, i64 %332
%334 = load i32, i32* %12
%335 = sext i32 %334 to i64
%336 = getelementptr inbounds float, float* %333, i64 %335
%337 = getelementptr inbounds float, float* %336, i64 14336
br label %338
338: ; preds = %273
%339 = load i32, i32* %12
%340 = add nsw i32 %339, 4
store i32 %340, i32* %12
br label %270
341: ; preds = %270
br label %342
342: ; preds = %341
%343 = load i32, i32* %11
%344 = add nsw i32 %343, 16384
store i32 %344, i32* %11
br label %266
345: ; preds = %266
store i32 0, i32* %13
br label %346
346: ; preds = %390, %345
%347 = load i32, i32* %13
%348 = icmp slt i32 %347, 65536
br i1 %348, label %349, label %393
349: ; preds = %346
store i32 0, i32* %14
br label %350
350: ; preds = %386, %349
%351 = load i32, i32* %14
%352 = icmp slt i32 %351, 16384
br i1 %352, label %353, label %389
353: ; preds = %350
%354 = load float*, float** %3
%355 = load i32, i32* %13
%356 = sext i32 %355 to i64
%357 = getelementptr inbounds float, float* %354, i64 %356
%358 = load i32, i32* %14
%359 = sext i32 %358 to i64
%360 = getelementptr inbounds float, float* %357, i64 %359
%361 = getelementptr inbounds float, float* %360, i64 0
%362 = load float*, float** %3
%363 = load i32, i32* %13
%364 = sext i32 %363 to i64
%365 = getelementptr inbounds float, float* %362, i64 %364
%366 = load i32, i32* %14
%367 = sext i32 %366 to i64
%368 = getelementptr inbounds float, float* %365, i64 %367
%369 = getelementptr inbounds float, float* %368, i64 16384
%370 = load float*, float** %3
%371 = load i32, i32* %13
%372 = sext i32 %371 to i64
%373 = getelementptr inbounds float, float* %370, i64 %372
%374 = load i32, i32* %14
%375 = sext i32 %374 to i64
%376 = getelementptr inbounds float, float* %373, i64 %375
%377 = getelementptr inbounds float, float* %376, i64 32768
%378 = load float*, float** %3
%379 = load i32, i32* %13
%380 = sext i32 %379 to i64
%381 = getelementptr inbounds float, float* %378, i64 %380
%382 = load i32, i32* %14
%383 = sext i32 %382 to i64
%384 = getelementptr inbounds float, float* %381, i64 %383
%385 = getelementptr inbounds float, float* %384, i64 49152
br label %386
386: ; preds = %353
%387 = load i32, i32* %14
%388 = add nsw i32 %387, 4
store i32 %388, i32* %14
br label %350
389: ; preds = %350
br label %390
390: ; preds = %389
%391 = load i32, i32* %13
%392 = add nsw i32 %391, 65536
store i32 %392, i32* %13
br label %346
393: ; preds = %346
br label %794
394: ; preds = %2
%395 = load i32, i32* %4
%396 = icmp eq i32 %395, 19
br i1 %396, label %397, label %494
397: ; preds = %394
%398 = load float*, float** %3
%399 = getelementptr inbounds float, float* %398, i64 0
%400 = load float*, float** %3
%401 = getelementptr inbounds float, float* %400, i64 65536
%402 = load float*, float** %3
%403 = getelementptr inbounds float, float* %402, i64 131072
%404 = load float*, float** %3
%405 = getelementptr inbounds float, float* %404, i64 196608
%406 = load float*, float** %3
%407 = getelementptr inbounds float, float* %406, i64 262144
%408 = load float*, float** %3
%409 = getelementptr inbounds float, float* %408, i64 327680
%410 = load float*, float** %3
%411 = getelementptr inbounds float, float* %410, i64 393216
%412 = load float*, float** %3
%413 = getelementptr inbounds float, float* %412, i64 458752
store i32 0, i32* %15
br label %414
414: ; preds = %490, %397
%415 = load i32, i32* %15
%416 = icmp slt i32 %415, 524288
br i1 %416, label %417, label %493
417: ; preds = %414
store i32 0, i32* %16
br label %418
418: ; preds = %486, %417
%419 = load i32, i32* %16
%420 = icmp slt i32 %419, 65536
br i1 %420, label %421, label %489
421: ; preds = %418
%422 = load float*, float** %3
%423 = load i32, i32* %15
%424 = sext i32 %423 to i64
%425 = getelementptr inbounds float, float* %422, i64 %424
%426 = load i32, i32* %16
%427 = sext i32 %426 to i64
%428 = getelementptr inbounds float, float* %425, i64 %427
%429 = getelementptr inbounds float, float* %428, i64 0
%430 = load float*, float** %3
%431 = load i32, i32* %15
%432 = sext i32 %431 to i64
%433 = getelementptr inbounds float, float* %430, i64 %432
%434 = load i32, i32* %16
%435 = sext i32 %434 to i64
%436 = getelementptr inbounds float, float* %433, i64 %435
%437 = getelementptr inbounds float, float* %436, i64 65536
%438 = load float*, float** %3
%439 = load i32, i32* %15
%440 = sext i32 %439 to i64
%441 = getelementptr inbounds float, float* %438, i64 %440
%442 = load i32, i32* %16
%443 = sext i32 %442 to i64
%444 = getelementptr inbounds float, float* %441, i64 %443
%445 = getelementptr inbounds float, float* %444, i64 131072
%446 = load float*, float** %3
%447 = load i32, i32* %15
%448 = sext i32 %447 to i64
%449 = getelementptr inbounds float, float* %446, i64 %448
%450 = load i32, i32* %16
%451 = sext i32 %450 to i64
%452 = getelementptr inbounds float, float* %449, i64 %451
%453 = getelementptr inbounds float, float* %452, i64 196608
%454 = load float*, float** %3
%455 = load i32, i32* %15
%456 = sext i32 %455 to i64
%457 = getelementptr inbounds float, float* %454, i64 %456
%458 = load i32, i32* %16
%459 = sext i32 %458 to i64
%460 = getelementptr inbounds float, float* %457, i64 %459
%461 = getelementptr inbounds float, float* %460, i64 262144
%462 = load float*, float** %3
%463 = load i32, i32* %15
%464 = sext i32 %463 to i64
%465 = getelementptr inbounds float, float* %462, i64 %464
%466 = load i32, i32* %16
%467 = sext i32 %466 to i64
%468 = getelementptr inbounds float, float* %465, i64 %467
%469 = getelementptr inbounds float, float* %468, i64 327680
%470 = load float*, float** %3
%471 = load i32, i32* %15
%472 = sext i32 %471 to i64
%473 = getelementptr inbounds float, float* %470, i64 %472
%474 = load i32, i32* %16
%475 = sext i32 %474 to i64
%476 = getelementptr inbounds float, float* %473, i64 %475
%477 = getelementptr inbounds float, float* %476, i64 393216
%478 = load float*, float** %3
%479 = load i32, i32* %15
%480 = sext i32 %479 to i64
%481 = getelementptr inbounds float, float* %478, i64 %480
%482 = load i32, i32* %16
%483 = sext i32 %482 to i64
%484 = getelementptr inbounds float, float* %481, i64 %483
%485 = getelementptr inbounds float, float* %484, i64 458752
br label %486
486: ; preds = %421
%487 = load i32, i32* %16
%488 = add nsw i32 %487, 4
store i32 %488, i32* %16
br label %418
489: ; preds = %418
br label %490
490: ; preds = %489
%491 = load i32, i32* %15
%492 = add nsw i32 %491, 524288
store i32 %492, i32* %15
br label %414
493: ; preds = %414
br label %794
494: ; preds = %394
%495 = load i32, i32* %4
%496 = icmp eq i32 %495, 22
br i1 %496, label %497, label %594
497: ; preds = %494
%498 = load float*, float** %3
%499 = getelementptr inbounds float, float* %498, i64 0
%500 = load float*, float** %3
%501 = getelementptr inbounds float, float* %500, i64 524288
%502 = load float*, float** %3
%503 = getelementptr inbounds float, float* %502, i64 1048576
%504 = load float*, float** %3
%505 = getelementptr inbounds float, float* %504, i64 1572864
%506 = load float*, float** %3
%507 = getelementptr inbounds float, float* %506, i64 2097152
%508 = load float*, float** %3
%509 = getelementptr inbounds float, float* %508, i64 2621440
%510 = load float*, float** %3
%511 = getelementptr inbounds float, float* %510, i64 3145728
%512 = load float*, float** %3
%513 = getelementptr inbounds float, float* %512, i64 3670016
store i32 0, i32* %17
br label %514
514: ; preds = %590, %497
%515 = load i32, i32* %17
%516 = icmp slt i32 %515, 4194304
br i1 %516, label %517, label %593
517: ; preds = %514
store i32 0, i32* %18
br label %518
518: ; preds = %586, %517
%519 = load i32, i32* %18
%520 = icmp slt i32 %519, 524288
br i1 %520, label %521, label %589
521: ; preds = %518
%522 = load float*, float** %3
%523 = load i32, i32* %17
%524 = sext i32 %523 to i64
%525 = getelementptr inbounds float, float* %522, i64 %524
%526 = load i32, i32* %18
%527 = sext i32 %526 to i64
%528 = getelementptr inbounds float, float* %525, i64 %527
%529 = getelementptr inbounds float, float* %528, i64 0
%530 = load float*, float** %3
%531 = load i32, i32* %17
%532 = sext i32 %531 to i64
%533 = getelementptr inbounds float, float* %530, i64 %532
%534 = load i32, i32* %18
%535 = sext i32 %534 to i64
%536 = getelementptr inbounds float, float* %533, i64 %535
%537 = getelementptr inbounds float, float* %536, i64 524288
%538 = load float*, float** %3
%539 = load i32, i32* %17
%540 = sext i32 %539 to i64
%541 = getelementptr inbounds float, float* %538, i64 %540
%542 = load i32, i32* %18
%543 = sext i32 %542 to i64
%544 = getelementptr inbounds float, float* %541, i64 %543
%545 = getelementptr inbounds float, float* %544, i64 1048576
%546 = load float*, float** %3
%547 = load i32, i32* %17
%548 = sext i32 %547 to i64
%549 = getelementptr inbounds float, float* %546, i64 %548
%550 = load i32, i32* %18
%551 = sext i32 %550 to i64
%552 = getelementptr inbounds float, float* %549, i64 %551
%553 = getelementptr inbounds float, float* %552, i64 1572864
%554 = load float*, float** %3
%555 = load i32, i32* %17
%556 = sext i32 %555 to i64
%557 = getelementptr inbounds float, float* %554, i64 %556
%558 = load i32, i32* %18
%559 = sext i32 %558 to i64
%560 = getelementptr inbounds float, float* %557, i64 %559
%561 = getelementptr inbounds float, float* %560, i64 2097152
%562 = load float*, float** %3
%563 = load i32, i32* %17
%564 = sext i32 %563 to i64
%565 = getelementptr inbounds float, float* %562, i64 %564
%566 = load i32, i32* %18
%567 = sext i32 %566 to i64
%568 = getelementptr inbounds float, float* %565, i64 %567
%569 = getelementptr inbounds float, float* %568, i64 2621440
%570 = load float*, float** %3
%571 = load i32, i32* %17
%572 = sext i32 %571 to i64
%573 = getelementptr inbounds float, float* %570, i64 %572
%574 = load i32, i32* %18
%575 = sext i32 %574 to i64
%576 = getelementptr inbounds float, float* %573, i64 %575
%577 = getelementptr inbounds float, float* %576, i64 3145728
%578 = load float*, float** %3
%579 = load i32, i32* %17
%580 = sext i32 %579 to i64
%581 = getelementptr inbounds float, float* %578, i64 %580
%582 = load i32, i32* %18
%583 = sext i32 %582 to i64
%584 = getelementptr inbounds float, float* %581, i64 %583
%585 = getelementptr inbounds float, float* %584, i64 3670016
br label %586
586: ; preds = %521
%587 = load i32, i32* %18
%588 = add nsw i32 %587, 4
store i32 %588, i32* %18
br label %518
589: ; preds = %518
br label %590
590: ; preds = %589
%591 = load i32, i32* %17
%592 = add nsw i32 %591, 4194304
store i32 %592, i32* %17
br label %514
593: ; preds = %514
br label %794
594: ; preds = %494
%595 = load i32, i32* %4
%596 = icmp eq i32 %595, 25
br i1 %596, label %597, label %694
597: ; preds = %594
%598 = load float*, float** %3
%599 = getelementptr inbounds float, float* %598, i64 0
%600 = load float*, float** %3
%601 = getelementptr inbounds float, float* %600, i64 4194304
%602 = load float*, float** %3
%603 = getelementptr inbounds float, float* %602, i64 8388608
%604 = load float*, float** %3
%605 = getelementptr inbounds float, float* %604, i64 12582912
%606 = load float*, float** %3
%607 = getelementptr inbounds float, float* %606, i64 16777216
%608 = load float*, float** %3
%609 = getelementptr inbounds float, float* %608, i64 20971520
%610 = load float*, float** %3
%611 = getelementptr inbounds float, float* %610, i64 25165824
%612 = load float*, float** %3
%613 = getelementptr inbounds float, float* %612, i64 29360128
store i32 0, i32* %19
br label %614
614: ; preds = %690, %597
%615 = load i32, i32* %19
%616 = icmp slt i32 %615, 33554432
br i1 %616, label %617, label %693
617: ; preds = %614
store i32 0, i32* %20
br label %618
618: ; preds = %686, %617
%619 = load i32, i32* %20
%620 = icmp slt i32 %619, 4194304
br i1 %620, label %621, label %689
621: ; preds = %618
%622 = load float*, float** %3
%623 = load i32, i32* %19
%624 = sext i32 %623 to i64
%625 = getelementptr inbounds float, float* %622, i64 %624
%626 = load i32, i32* %20
%627 = sext i32 %626 to i64
%628 = getelementptr inbounds float, float* %625, i64 %627
%629 = getelementptr inbounds float, float* %628, i64 0
%630 = load float*, float** %3
%631 = load i32, i32* %19
%632 = sext i32 %631 to i64
%633 = getelementptr inbounds float, float* %630, i64 %632
%634 = load i32, i32* %20
%635 = sext i32 %634 to i64
%636 = getelementptr inbounds float, float* %633, i64 %635
%637 = getelementptr inbounds float, float* %636, i64 4194304
%638 = load float*, float** %3
%639 = load i32, i32* %19
%640 = sext i32 %639 to i64
%641 = getelementptr inbounds float, float* %638, i64 %640
%642 = load i32, i32* %20
%643 = sext i32 %642 to i64
%644 = getelementptr inbounds float, float* %641, i64 %643
%645 = getelementptr inbounds float, float* %644, i64 8388608
%646 = load float*, float** %3
%647 = load i32, i32* %19
%648 = sext i32 %647 to i64
%649 = getelementptr inbounds float, float* %646, i64 %648
%650 = load i32, i32* %20
%651 = sext i32 %650 to i64
%652 = getelementptr inbounds float, float* %649, i64 %651
%653 = getelementptr inbounds float, float* %652, i64 12582912
%654 = load float*, float** %3
%655 = load i32, i32* %19
%656 = sext i32 %655 to i64
%657 = getelementptr inbounds float, float* %654, i64 %656
%658 = load i32, i32* %20
%659 = sext i32 %658 to i64
%660 = getelementptr inbounds float, float* %657, i64 %659
%661 = getelementptr inbounds float, float* %660, i64 16777216
%662 = load float*, float** %3
%663 = load i32, i32* %19
%664 = sext i32 %663 to i64
%665 = getelementptr inbounds float, float* %662, i64 %664
%666 = load i32, i32* %20
%667 = sext i32 %666 to i64
%668 = getelementptr inbounds float, float* %665, i64 %667
%669 = getelementptr inbounds float, float* %668, i64 20971520
%670 = load float*, float** %3
%671 = load i32, i32* %19
%672 = sext i32 %671 to i64
%673 = getelementptr inbounds float, float* %670, i64 %672
%674 = load i32, i32* %20
%675 = sext i32 %674 to i64
%676 = getelementptr inbounds float, float* %673, i64 %675
%677 = getelementptr inbounds float, float* %676, i64 25165824
%678 = load float*, float** %3
%679 = load i32, i32* %19
%680 = sext i32 %679 to i64
%681 = getelementptr inbounds float, float* %678, i64 %680
%682 = load i32, i32* %20
%683 = sext i32 %682 to i64
%684 = getelementptr inbounds float, float* %681, i64 %683
%685 = getelementptr inbounds float, float* %684, i64 29360128
br label %686
686: ; preds = %621
%687 = load i32, i32* %20
%688 = add nsw i32 %687, 4
store i32 %688, i32* %20
br label %618
689: ; preds = %618
br label %690
690: ; preds = %689
%691 = load i32, i32* %19
%692 = add nsw i32 %691, 33554432
store i32 %692, i32* %19
br label %614
693: ; preds = %614
br label %794
694: ; preds = %594
%695 = load i32, i32* %4
%696 = icmp eq i32 %695, 28
br i1 %696, label %697, label %794
697: ; preds = %694
%698 = load float*, float** %3
%699 = getelementptr inbounds float, float* %698, i64 0
%700 = load float*, float** %3
%701 = getelementptr inbounds float, float* %700, i64 33554432
%702 = load float*, float** %3
%703 = getelementptr inbounds float, float* %702, i64 67108864
%704 = load float*, float** %3
%705 = getelementptr inbounds float, float* %704, i64 100663296
%706 = load float*, float** %3
%707 = getelementptr inbounds float, float* %706, i64 134217728
%708 = load float*, float** %3
%709 = getelementptr inbounds float, float* %708, i64 167772160
%710 = load float*, float** %3
%711 = getelementptr inbounds float, float* %710, i64 201326592
%712 = load float*, float** %3
%713 = getelementptr inbounds float, float* %712, i64 234881024
store i32 0, i32* %21
br label %714
714: ; preds = %790, %697
%715 = load i32, i32* %21
%716 = icmp slt i32 %715, 268435456
br i1 %716, label %717, label %793
717: ; preds = %714
store i32 0, i32* %22
br label %718
718: ; preds = %786, %717
%719 = load i32, i32* %22
%720 = icmp slt i32 %719, 33554432
br i1 %720, label %721, label %789
721: ; preds = %718
%722 = load float*, float** %3
%723 = load i32, i32* %21
%724 = sext i32 %723 to i64
%725 = getelementptr inbounds float, float* %722, i64 %724
%726 = load i32, i32* %22
%727 = sext i32 %726 to i64
%728 = getelementptr inbounds float, float* %725, i64 %727
%729 = getelementptr inbounds float, float* %728, i64 0
%730 = load float*, float** %3
%731 = load i32, i32* %21
%732 = sext i32 %731 to i64
%733 = getelementptr inbounds float, float* %730, i64 %732
%734 = load i32, i32* %22
%735 = sext i32 %734 to i64
%736 = getelementptr inbounds float, float* %733, i64 %735
%737 = getelementptr inbounds float, float* %736, i64 33554432
%738 = load float*, float** %3
%739 = load i32, i32* %21
%740 = sext i32 %739 to i64
%741 = getelementptr inbounds float, float* %738, i64 %740
%742 = load i32, i32* %22
%743 = sext i32 %742 to i64
%744 = getelementptr inbounds float, float* %741, i64 %743
%745 = getelementptr inbounds float, float* %744, i64 67108864
%746 = load float*, float** %3
%747 = load i32, i32* %21
%748 = sext i32 %747 to i64
%749 = getelementptr inbounds float, float* %746, i64 %748
%750 = load i32, i32* %22
%751 = sext i32 %750 to i64
%752 = getelementptr inbounds float, float* %749, i64 %751
%753 = getelementptr inbounds float, float* %752, i64 100663296
%754 = load float*, float** %3
%755 = load i32, i32* %21
%756 = sext i32 %755 to i64
%757 = getelementptr inbounds float, float* %754, i64 %756
%758 = load i32, i32* %22
%759 = sext i32 %758 to i64
%760 = getelementptr inbounds float, float* %757, i64 %759
%761 = getelementptr inbounds float, float* %760, i64 134217728
%762 = load float*, float** %3
%763 = load i32, i32* %21
%764 = sext i32 %763 to i64
%765 = getelementptr inbounds float, float* %762, i64 %764
%766 = load i32, i32* %22
%767 = sext i32 %766 to i64
%768 = getelementptr inbounds float, float* %765, i64 %767
%769 = getelementptr inbounds float, float* %768, i64 167772160
%770 = load float*, float** %3
%771 = load i32, i32* %21
%772 = sext i32 %771 to i64
%773 = getelementptr inbounds float, float* %770, i64 %772
%774 = load i32, i32* %22
%775 = sext i32 %774 to i64
%776 = getelementptr inbounds float, float* %773, i64 %775
%777 = getelementptr inbounds float, float* %776, i64 201326592
%778 = load float*, float** %3
%779 = load i32, i32* %21
%780 = sext i32 %779 to i64
%781 = getelementptr inbounds float, float* %778, i64 %780
%782 = load i32, i32* %22
%783 = sext i32 %782 to i64
%784 = getelementptr inbounds float, float* %781, i64 %783
%785 = getelementptr inbounds float, float* %784, i64 234881024
br label %786
786: ; preds = %721
%787 = load i32, i32* %22
%788 = add nsw i32 %787, 4
store i32 %788, i32* %22
br label %718
789: ; preds = %718
br label %790
790: ; preds = %789
%791 = load i32, i32* %21
%792 = add nsw i32 %791, 268435456
store i32 %792, i32* %21
br label %714
793: ; preds = %714
br label %794
794: ; preds = %393, %493, %593, %693, %793, %694
ret void
}

LLVM IR (-O2):
define void @helper_float_28_recursive(float* %0, i32 %1) {
switch i32 %1, label %243 [
i32 16, label %3
i32 19, label %163
i32 22, label %183
i32 25, label %203
i32 28, label %223
]
3: ; preds = %2, %3
%4 = phi i64 [ %13, %3 ], [ 0, %2 ]
%5 = getelementptr inbounds float, float* %0, i64 %4
%6 = getelementptr inbounds float, float* %5, i64 4
%7 = getelementptr inbounds float, float* %5, i64 8
%8 = getelementptr inbounds float, float* %5, i64 12
%9 = getelementptr inbounds float, float* %5, i64 16
%10 = getelementptr inbounds float, float* %5, i64 20
%11 = getelementptr inbounds float, float* %5, i64 24
%12 = getelementptr inbounds float, float* %5, i64 28
tail call void asm sideeffect "movups ($0), %xmm0\0Amovups ($1), %xmm1\0Amovups ($2), %xmm2\0Amovups ($3), %xmm3\0Amovups ($4), %xmm4\0Amovups ($5), %xmm5\0Amovups ($6), %xmm6\0Amovups ($7), %xmm7\0Amovaps %xmm0, %xmm8\0Ashufps $$160, %xmm8, %xmm8\0Ashufps $$245, %xmm0, %xmm0\0Axorps %xmm9, %xmm9\0Asubps %xmm0, %xmm9\0Aaddsubps %xmm9, %xmm8\0Amovaps %xmm8, %xmm0\0Amovaps %xmm1, %xmm8\0Ashufps $$160, %xmm8, %xmm8\0Ashufps $$245, %xmm1, %xmm1\0Axorps %xmm9, %xmm9\0Asubps %xmm1, %xmm9\0Aaddsubps %xmm9, %xmm8\0Amovaps %xmm8, %xmm1\0Amovaps %xmm2, %xmm8\0Ashufps $$160, %xmm8, %xmm8\0Ashufps $$245, %xmm2, %xmm2\0Axorps %xmm9, %xmm9\0Asubps %xmm2, %xmm9\0Aaddsubps %xmm9, %xmm8\0Amovaps %xmm8, %xmm2\0Amovaps %xmm3, %xmm8\0Ashufps $$160, %xmm8, %xmm8\0Ashufps $$245, %xmm3, %xmm3\0Axorps %xmm9, %xmm9\0Asubps %xmm3, %xmm9\0Aaddsubps %xmm9, %xmm8\0Amovaps %xmm8, %xmm3\0Amovaps %xmm4, %xmm8\0Ashufps $$160, %xmm8, %xmm8\0Ashufps $$245, %xmm4, %xmm4\0Axorps %xmm9, %xmm9\0Asubps %xmm4, %xmm9\0Aaddsubps %xmm9, %xmm8\0Amovaps %xmm8, %xmm4\0Amovaps %xmm5, %xmm8\0Ashufps $$160, %xmm8, %xmm8\0Ashufps $$245, %xmm5, %xmm5\0Axorps %xmm9, %xmm9\0Asubps %xmm5, %xmm9\0Aaddsubps %xmm9, %xmm8\0Amovaps %xmm8, %xmm5\0Amovaps %xmm6, %xmm8\0Ashufps $$160, %xmm8, %xmm8\0Ashufps $$245, %xmm6, %xmm6\0Axorps %xmm9, %xmm9\0Asubps %xmm6, %xmm9\0Aaddsubps %xmm9, %xmm8\0Amovaps %xmm8, %xmm6\0Amovaps %xmm7, %xmm8\0Ashufps $$160, %xmm8, %xmm8\0Ashufps $$245, %xmm7, %xmm7\0Axorps %xmm9, %xmm9\0Asubps %xmm7, %xmm9\0Aaddsubps %xmm9, %xmm8\0Amovaps %xmm8, %xmm7\0Amovaps %xmm0, %xmm8\0Ashufps $$68, %xmm8, %xmm8\0Axorps %xmm9, %xmm9\0Amovaps %xmm0, %xmm10\0Ashufps $$14, %xmm9, %xmm10\0Amovaps %xmm0, %xmm11\0Ashufps $$224, %xmm11, %xmm9\0Aaddps %xmm8, %xmm10\0Asubps %xmm9, %xmm10\0Amovaps %xmm10, %xmm0\0Amovaps %xmm1, %xmm8\0Ashufps $$68, %xmm8, %xmm8\0Axorps %xmm9, %xmm9\0Amovaps %xmm1, %xmm10\0Ashufps $$14, %xmm9, %xmm10\0Amovaps %xmm1, %xmm11\0Ashufps $$224, %xmm11, %xmm9\0Aaddps %xmm8, %xmm10\0Asubps %xmm9, %xmm10\0Amovaps %xmm10, %xmm1\0Amovaps %xmm2, %xmm8\0Ashufps $$68, %xmm8, %xmm8\0Axorps %xmm9, %xmm9\0Amovaps %xmm2, %xmm10\0Ashufps $$14, %xmm9, %xmm10\0Amovaps %xmm2, %xmm11\0Ashufps $$224, %xmm11, %xmm9\0Aaddps %xmm8, %xmm10\0Asubps %xmm9, %xmm10\0Amovaps %xmm10, %xmm2\0Amovaps %xmm3, %xmm8\0Ashufps $$68, %xmm8, %xmm8\0Axorps %xmm9, %xmm9\0Amovaps %xmm3, %xmm10\0Ashufps $$14, %xmm9, %xmm10\0Amovaps %xmm3, %xmm11\0Ashufps $$224, %xmm11, %xmm9\0Aaddps %xmm8, %xmm10\0Asubps %xmm9, %xmm10\0Amovaps %xmm10, %xmm3\0Amovaps %xmm4, %xmm8\0Ashufps $$68, %xmm8, %xmm8\0Axorps %xmm9, %xmm9\0Amovaps %xmm4, %xmm10\0Ashufps $$14, %xmm9, %xmm10\0Amovaps %xmm4, %xmm11\0Ashufps $$224, %xmm11, %xmm9\0Aaddps %xmm8, %xmm10\0Asubps %xmm9, %xmm10\0Amovaps %xmm10, %xmm4\0Amovaps %xmm5, %xmm8\0Ashufps $$68, %xmm8, %xmm8\0Axorps %xmm9, %xmm9\0Amovaps %xmm5, %xmm10\0Ashufps $$14, %xmm9, %xmm10\0Amovaps %xmm5, %xmm11\0Ashufps $$224, %xmm11, %xmm9\0Aaddps %xmm8, %xmm10\0Asubps %xmm9, %xmm10\0Amovaps %xmm10, %xmm5\0Amovaps %xmm6, %xmm8\0Ashufps $$68, %xmm8, %xmm8\0Axorps %xmm9, %xmm9\0Amovaps %xmm6, %xmm10\0Ashufps $$14, %xmm9, %xmm10\0Amovaps %xmm6, %xmm11\0Ashufps $$224, %xmm11, %xmm9\0Aaddps %xmm8, %xmm10\0Asubps %xmm9, %xmm10\0Amovaps %xmm10, %xmm6\0Amovaps %xmm7, %xmm8\0Ashufps $$68, %xmm8, %xmm8\0Axorps %xmm9, %xmm9\0Amovaps %xmm7, %xmm10\0Ashufps $$14, %xmm9, %xmm10\0Amovaps %xmm7, %xmm11\0Ashufps $$224, %xmm11, %xmm9\0Aaddps %xmm8, %xmm10\0Asubps %xmm9, %xmm10\0Amovaps %xmm10, %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm9\0Aaddps %xmm1, %xmm8\0Asubps %xmm1, %xmm9\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm11\0Aaddps %xmm3, %xmm10\0Asubps %xmm3, %xmm11\0Amovaps %xmm4, %xmm12\0Amovaps %xmm4, %xmm13\0Aaddps %xmm5, %xmm12\0Asubps %xmm5, %xmm13\0Amovaps %xmm6, %xmm14\0Amovaps %xmm6, %xmm15\0Aaddps %xmm7, %xmm14\0Asubps %xmm7, %xmm15\0Amovaps %xmm8, %xmm0\0Amovaps %xmm8, %xmm2\0Aaddps %xmm10, %xmm0\0Asubps %xmm10, %xmm2\0Amovaps %xmm9, %xmm1\0Amovaps %xmm9, %xmm3\0Aaddps %xmm11, %xmm1\0Asubps %xmm11, %xmm3\0Amovaps %xmm12, %xmm4\0Amovaps %xmm12, %xmm6\0Aaddps %xmm14, %xmm4\0Asubps %xmm14, %xmm6\0Amovaps %xmm13, %xmm5\0Amovaps %xmm13, %xmm7\0Aaddps %xmm15, %xmm5\0Asubps %xmm15, %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm12\0Aaddps %xmm4, %xmm8\0Asubps %xmm4, %xmm12\0Amovaps %xmm1, %xmm9\0Amovaps %xmm1, %xmm13\0Aaddps %xmm5, %xmm9\0Asubps %xmm5, %xmm13\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm14\0Aaddps %xmm6, %xmm10\0Asubps %xmm6, %xmm14\0Amovaps %xmm3, %xmm11\0Amovaps %xmm3, %xmm15\0Aaddps %xmm7, %xmm11\0Asubps %xmm7, %xmm15\0Amovups %xmm8, ($0)\0Amovups %xmm9, ($1)\0Amovups %xmm10, ($2)\0Amovups %xmm11, ($3)\0Amovups %xmm12, ($4)\0Amovups %xmm13, ($5)\0Amovups %xmm14, ($6)\0Amovups %xmm15, ($7)\0A", "r,r,r,r,r,r,r,r,~{xmm0},~{xmm1},~{xmm2},~{xmm3},~{xmm4},~{xmm5},~{xmm6},~{xmm7},~{xmm8},~{xmm9},~{xmm10},~{xmm11},~{xmm12},~{xmm13},~{xmm14},~{xmm15},~{memory},~{dirflag},~{fpsr},~{flags}"(float* %5, float* %6, float* %7, float* %8, float* %9, float* %10, float* %11, float* %12)
%13 = add nuw nsw i64 %4, 32
%14 = icmp ult i64 %4, 65504
br i1 %14, label %3, label %15
15: ; preds = %3, %15
%16 = phi i64 [ %81, %15 ], [ 0, %3 ]
%17 = getelementptr inbounds float, float* %0, i64 %16
%18 = getelementptr inbounds float, float* %17, i64 32
%19 = getelementptr inbounds float, float* %17, i64 64
%20 = getelementptr inbounds float, float* %17, i64 96
%21 = getelementptr inbounds float, float* %17, i64 128
%22 = getelementptr inbounds float, float* %17, i64 160
%23 = getelementptr inbounds float, float* %17, i64 192
%24 = getelementptr inbounds float, float* %17, i64 224
tail call void asm sideeffect "movups ($0), %xmm0\0Amovups ($1), %xmm1\0Amovups ($2), %xmm2\0Amovups ($3), %xmm3\0Amovups ($4), %xmm4\0Amovups ($5), %xmm5\0Amovups ($6), %xmm6\0Amovups ($7), %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm9\0Aaddps %xmm1, %xmm8\0Asubps %xmm1, %xmm9\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm11\0Aaddps %xmm3, %xmm10\0Asubps %xmm3, %xmm11\0Amovaps %xmm4, %xmm12\0Amovaps %xmm4, %xmm13\0Aaddps %xmm5, %xmm12\0Asubps %xmm5, %xmm13\0Amovaps %xmm6, %xmm14\0Amovaps %xmm6, %xmm15\0Aaddps %xmm7, %xmm14\0Asubps %xmm7, %xmm15\0Amovaps %xmm8, %xmm0\0Amovaps %xmm8, %xmm2\0Aaddps %xmm10, %xmm0\0Asubps %xmm10, %xmm2\0Amovaps %xmm9, %xmm1\0Amovaps %xmm9, %xmm3\0Aaddps %xmm11, %xmm1\0Asubps %xmm11, %xmm3\0Amovaps %xmm12, %xmm4\0Amovaps %xmm12, %xmm6\0Aaddps %xmm14, %xmm4\0Asubps %xmm14, %xmm6\0Amovaps %xmm13, %xmm5\0Amovaps %xmm13, %xmm7\0Aaddps %xmm15, %xmm5\0Asubps %xmm15, %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm12\0Aaddps %xmm4, %xmm8\0Asubps %xmm4, %xmm12\0Amovaps %xmm1, %xmm9\0Amovaps %xmm1, %xmm13\0Aaddps %xmm5, %xmm9\0Asubps %xmm5, %xmm13\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm14\0Aaddps %xmm6, %xmm10\0Asubps %xmm6, %xmm14\0Amovaps %xmm3, %xmm11\0Amovaps %xmm3, %xmm15\0Aaddps %xmm7, %xmm11\0Asubps %xmm7, %xmm15\0Amovups %xmm8, ($0)\0Amovups %xmm9, ($1)\0Amovups %xmm10, ($2)\0Amovups %xmm11, ($3)\0Amovups %xmm12, ($4)\0Amovups %xmm13, ($5)\0Amovups %xmm14, ($6)\0Amovups %xmm15, ($7)\0A", "r,r,r,r,r,r,r,r,~{xmm0},~{xmm1},~{xmm2},~{xmm3},~{xmm4},~{xmm5},~{xmm6},~{xmm7},~{xmm8},~{xmm9},~{xmm10},~{xmm11},~{xmm12},~{xmm13},~{xmm14},~{xmm15},~{memory},~{dirflag},~{fpsr},~{flags}"(float* %17, float* %18, float* %19, float* %20, float* %21, float* %22, float* %23, float* %24)
%25 = getelementptr inbounds float, float* %17, i64 4
%26 = getelementptr inbounds float, float* %25, i64 32
%27 = getelementptr inbounds float, float* %25, i64 64
%28 = getelementptr inbounds float, float* %25, i64 96
%29 = getelementptr inbounds float, float* %25, i64 128
%30 = getelementptr inbounds float, float* %25, i64 160
%31 = getelementptr inbounds float, float* %25, i64 192
%32 = getelementptr inbounds float, float* %25, i64 224
tail call void asm sideeffect "movups ($0), %xmm0\0Amovups ($1), %xmm1\0Amovups ($2), %xmm2\0Amovups ($3), %xmm3\0Amovups ($4), %xmm4\0Amovups ($5), %xmm5\0Amovups ($6), %xmm6\0Amovups ($7), %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm9\0Aaddps %xmm1, %xmm8\0Asubps %xmm1, %xmm9\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm11\0Aaddps %xmm3, %xmm10\0Asubps %xmm3, %xmm11\0Amovaps %xmm4, %xmm12\0Amovaps %xmm4, %xmm13\0Aaddps %xmm5, %xmm12\0Asubps %xmm5, %xmm13\0Amovaps %xmm6, %xmm14\0Amovaps %xmm6, %xmm15\0Aaddps %xmm7, %xmm14\0Asubps %xmm7, %xmm15\0Amovaps %xmm8, %xmm0\0Amovaps %xmm8, %xmm2\0Aaddps %xmm10, %xmm0\0Asubps %xmm10, %xmm2\0Amovaps %xmm9, %xmm1\0Amovaps %xmm9, %xmm3\0Aaddps %xmm11, %xmm1\0Asubps %xmm11, %xmm3\0Amovaps %xmm12, %xmm4\0Amovaps %xmm12, %xmm6\0Aaddps %xmm14, %xmm4\0Asubps %xmm14, %xmm6\0Amovaps %xmm13, %xmm5\0Amovaps %xmm13, %xmm7\0Aaddps %xmm15, %xmm5\0Asubps %xmm15, %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm12\0Aaddps %xmm4, %xmm8\0Asubps %xmm4, %xmm12\0Amovaps %xmm1, %xmm9\0Amovaps %xmm1, %xmm13\0Aaddps %xmm5, %xmm9\0Asubps %xmm5, %xmm13\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm14\0Aaddps %xmm6, %xmm10\0Asubps %xmm6, %xmm14\0Amovaps %xmm3, %xmm11\0Amovaps %xmm3, %xmm15\0Aaddps %xmm7, %xmm11\0Asubps %xmm7, %xmm15\0Amovups %xmm8, ($0)\0Amovups %xmm9, ($1)\0Amovups %xmm10, ($2)\0Amovups %xmm11, ($3)\0Amovups %xmm12, ($4)\0Amovups %xmm13, ($5)\0Amovups %xmm14, ($6)\0Amovups %xmm15, ($7)\0A", "r,r,r,r,r,r,r,r,~{xmm0},~{xmm1},~{xmm2},~{xmm3},~{xmm4},~{xmm5},~{xmm6},~{xmm7},~{xmm8},~{xmm9},~{xmm10},~{xmm11},~{xmm12},~{xmm13},~{xmm14},~{xmm15},~{memory},~{dirflag},~{fpsr},~{flags}"(float* %25, float* %26, float* %27, float* %28, float* %29, float* %30, float* %31, float* %32)
%33 = getelementptr inbounds float, float* %17, i64 8
%34 = getelementptr inbounds float, float* %33, i64 32
%35 = getelementptr inbounds float, float* %33, i64 64
%36 = getelementptr inbounds float, float* %33, i64 96
%37 = getelementptr inbounds float, float* %33, i64 128
%38 = getelementptr inbounds float, float* %33, i64 160
%39 = getelementptr inbounds float, float* %33, i64 192
%40 = getelementptr inbounds float, float* %33, i64 224
tail call void asm sideeffect "movups ($0), %xmm0\0Amovups ($1), %xmm1\0Amovups ($2), %xmm2\0Amovups ($3), %xmm3\0Amovups ($4), %xmm4\0Amovups ($5), %xmm5\0Amovups ($6), %xmm6\0Amovups ($7), %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm9\0Aaddps %xmm1, %xmm8\0Asubps %xmm1, %xmm9\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm11\0Aaddps %xmm3, %xmm10\0Asubps %xmm3, %xmm11\0Amovaps %xmm4, %xmm12\0Amovaps %xmm4, %xmm13\0Aaddps %xmm5, %xmm12\0Asubps %xmm5, %xmm13\0Amovaps %xmm6, %xmm14\0Amovaps %xmm6, %xmm15\0Aaddps %xmm7, %xmm14\0Asubps %xmm7, %xmm15\0Amovaps %xmm8, %xmm0\0Amovaps %xmm8, %xmm2\0Aaddps %xmm10, %xmm0\0Asubps %xmm10, %xmm2\0Amovaps %xmm9, %xmm1\0Amovaps %xmm9, %xmm3\0Aaddps %xmm11, %xmm1\0Asubps %xmm11, %xmm3\0Amovaps %xmm12, %xmm4\0Amovaps %xmm12, %xmm6\0Aaddps %xmm14, %xmm4\0Asubps %xmm14, %xmm6\0Amovaps %xmm13, %xmm5\0Amovaps %xmm13, %xmm7\0Aaddps %xmm15, %xmm5\0Asubps %xmm15, %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm12\0Aaddps %xmm4, %xmm8\0Asubps %xmm4, %xmm12\0Amovaps %xmm1, %xmm9\0Amovaps %xmm1, %xmm13\0Aaddps %xmm5, %xmm9\0Asubps %xmm5, %xmm13\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm14\0Aaddps %xmm6, %xmm10\0Asubps %xmm6, %xmm14\0Amovaps %xmm3, %xmm11\0Amovaps %xmm3, %xmm15\0Aaddps %xmm7, %xmm11\0Asubps %xmm7, %xmm15\0Amovups %xmm8, ($0)\0Amovups %xmm9, ($1)\0Amovups %xmm10, ($2)\0Amovups %xmm11, ($3)\0Amovups %xmm12, ($4)\0Amovups %xmm13, ($5)\0Amovups %xmm14, ($6)\0Amovups %xmm15, ($7)\0A", "r,r,r,r,r,r,r,r,~{xmm0},~{xmm1},~{xmm2},~{xmm3},~{xmm4},~{xmm5},~{xmm6},~{xmm7},~{xmm8},~{xmm9},~{xmm10},~{xmm11},~{xmm12},~{xmm13},~{xmm14},~{xmm15},~{memory},~{dirflag},~{fpsr},~{flags}"(float* %33, float* %34, float* %35, float* %36, float* %37, float* %38, float* %39, float* %40)
%41 = getelementptr inbounds float, float* %17, i64 12
%42 = getelementptr inbounds float, float* %41, i64 32
%43 = getelementptr inbounds float, float* %41, i64 64
%44 = getelementptr inbounds float, float* %41, i64 96
%45 = getelementptr inbounds float, float* %41, i64 128
%46 = getelementptr inbounds float, float* %41, i64 160
%47 = getelementptr inbounds float, float* %41, i64 192
%48 = getelementptr inbounds float, float* %41, i64 224
tail call void asm sideeffect "movups ($0), %xmm0\0Amovups ($1), %xmm1\0Amovups ($2), %xmm2\0Amovups ($3), %xmm3\0Amovups ($4), %xmm4\0Amovups ($5), %xmm5\0Amovups ($6), %xmm6\0Amovups ($7), %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm9\0Aaddps %xmm1, %xmm8\0Asubps %xmm1, %xmm9\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm11\0Aaddps %xmm3, %xmm10\0Asubps %xmm3, %xmm11\0Amovaps %xmm4, %xmm12\0Amovaps %xmm4, %xmm13\0Aaddps %xmm5, %xmm12\0Asubps %xmm5, %xmm13\0Amovaps %xmm6, %xmm14\0Amovaps %xmm6, %xmm15\0Aaddps %xmm7, %xmm14\0Asubps %xmm7, %xmm15\0Amovaps %xmm8, %xmm0\0Amovaps %xmm8, %xmm2\0Aaddps %xmm10, %xmm0\0Asubps %xmm10, %xmm2\0Amovaps %xmm9, %xmm1\0Amovaps %xmm9, %xmm3\0Aaddps %xmm11, %xmm1\0Asubps %xmm11, %xmm3\0Amovaps %xmm12, %xmm4\0Amovaps %xmm12, %xmm6\0Aaddps %xmm14, %xmm4\0Asubps %xmm14, %xmm6\0Amovaps %xmm13, %xmm5\0Amovaps %xmm13, %xmm7\0Aaddps %xmm15, %xmm5\0Asubps %xmm15, %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm12\0Aaddps %xmm4, %xmm8\0Asubps %xmm4, %xmm12\0Amovaps %xmm1, %xmm9\0Amovaps %xmm1, %xmm13\0Aaddps %xmm5, %xmm9\0Asubps %xmm5, %xmm13\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm14\0Aaddps %xmm6, %xmm10\0Asubps %xmm6, %xmm14\0Amovaps %xmm3, %xmm11\0Amovaps %xmm3, %xmm15\0Aaddps %xmm7, %xmm11\0Asubps %xmm7, %xmm15\0Amovups %xmm8, ($0)\0Amovups %xmm9, ($1)\0Amovups %xmm10, ($2)\0Amovups %xmm11, ($3)\0Amovups %xmm12, ($4)\0Amovups %xmm13, ($5)\0Amovups %xmm14, ($6)\0Amovups %xmm15, ($7)\0A", "r,r,r,r,r,r,r,r,~{xmm0},~{xmm1},~{xmm2},~{xmm3},~{xmm4},~{xmm5},~{xmm6},~{xmm7},~{xmm8},~{xmm9},~{xmm10},~{xmm11},~{xmm12},~{xmm13},~{xmm14},~{xmm15},~{memory},~{dirflag},~{fpsr},~{flags}"(float* %41, float* %42, float* %43, float* %44, float* %45, float* %46, float* %47, float* %48)
%49 = getelementptr inbounds float, float* %17, i64 16
%50 = getelementptr inbounds float, float* %49, i64 32
%51 = getelementptr inbounds float, float* %49, i64 64
%52 = getelementptr inbounds float, float* %49, i64 96
%53 = getelementptr inbounds float, float* %49, i64 128
%54 = getelementptr inbounds float, float* %49, i64 160
%55 = getelementptr inbounds float, float* %49, i64 192
%56 = getelementptr inbounds float, float* %49, i64 224
tail call void asm sideeffect "movups ($0), %xmm0\0Amovups ($1), %xmm1\0Amovups ($2), %xmm2\0Amovups ($3), %xmm3\0Amovups ($4), %xmm4\0Amovups ($5), %xmm5\0Amovups ($6), %xmm6\0Amovups ($7), %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm9\0Aaddps %xmm1, %xmm8\0Asubps %xmm1, %xmm9\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm11\0Aaddps %xmm3, %xmm10\0Asubps %xmm3, %xmm11\0Amovaps %xmm4, %xmm12\0Amovaps %xmm4, %xmm13\0Aaddps %xmm5, %xmm12\0Asubps %xmm5, %xmm13\0Amovaps %xmm6, %xmm14\0Amovaps %xmm6, %xmm15\0Aaddps %xmm7, %xmm14\0Asubps %xmm7, %xmm15\0Amovaps %xmm8, %xmm0\0Amovaps %xmm8, %xmm2\0Aaddps %xmm10, %xmm0\0Asubps %xmm10, %xmm2\0Amovaps %xmm9, %xmm1\0Amovaps %xmm9, %xmm3\0Aaddps %xmm11, %xmm1\0Asubps %xmm11, %xmm3\0Amovaps %xmm12, %xmm4\0Amovaps %xmm12, %xmm6\0Aaddps %xmm14, %xmm4\0Asubps %xmm14, %xmm6\0Amovaps %xmm13, %xmm5\0Amovaps %xmm13, %xmm7\0Aaddps %xmm15, %xmm5\0Asubps %xmm15, %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm12\0Aaddps %xmm4, %xmm8\0Asubps %xmm4, %xmm12\0Amovaps %xmm1, %xmm9\0Amovaps %xmm1, %xmm13\0Aaddps %xmm5, %xmm9\0Asubps %xmm5, %xmm13\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm14\0Aaddps %xmm6, %xmm10\0Asubps %xmm6, %xmm14\0Amovaps %xmm3, %xmm11\0Amovaps %xmm3, %xmm15\0Aaddps %xmm7, %xmm11\0Asubps %xmm7, %xmm15\0Amovups %xmm8, ($0)\0Amovups %xmm9, ($1)\0Amovups %xmm10, ($2)\0Amovups %xmm11, ($3)\0Amovups %xmm12, ($4)\0Amovups %xmm13, ($5)\0Amovups %xmm14, ($6)\0Amovups %xmm15, ($7)\0A", "r,r,r,r,r,r,r,r,~{xmm0},~{xmm1},~{xmm2},~{xmm3},~{xmm4},~{xmm5},~{xmm6},~{xmm7},~{xmm8},~{xmm9},~{xmm10},~{xmm11},~{xmm12},~{xmm13},~{xmm14},~{xmm15},~{memory},~{dirflag},~{fpsr},~{flags}"(float* %49, float* %50, float* %51, float* %52, float* %53, float* %54, float* %55, float* %56)
%57 = getelementptr inbounds float, float* %17, i64 20
%58 = getelementptr inbounds float, float* %57, i64 32
%59 = getelementptr inbounds float, float* %57, i64 64
%60 = getelementptr inbounds float, float* %57, i64 96
%61 = getelementptr inbounds float, float* %57, i64 128
%62 = getelementptr inbounds float, float* %57, i64 160
%63 = getelementptr inbounds float, float* %57, i64 192
%64 = getelementptr inbounds float, float* %57, i64 224
tail call void asm sideeffect "movups ($0), %xmm0\0Amovups ($1), %xmm1\0Amovups ($2), %xmm2\0Amovups ($3), %xmm3\0Amovups ($4), %xmm4\0Amovups ($5), %xmm5\0Amovups ($6), %xmm6\0Amovups ($7), %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm9\0Aaddps %xmm1, %xmm8\0Asubps %xmm1, %xmm9\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm11\0Aaddps %xmm3, %xmm10\0Asubps %xmm3, %xmm11\0Amovaps %xmm4, %xmm12\0Amovaps %xmm4, %xmm13\0Aaddps %xmm5, %xmm12\0Asubps %xmm5, %xmm13\0Amovaps %xmm6, %xmm14\0Amovaps %xmm6, %xmm15\0Aaddps %xmm7, %xmm14\0Asubps %xmm7, %xmm15\0Amovaps %xmm8, %xmm0\0Amovaps %xmm8, %xmm2\0Aaddps %xmm10, %xmm0\0Asubps %xmm10, %xmm2\0Amovaps %xmm9, %xmm1\0Amovaps %xmm9, %xmm3\0Aaddps %xmm11, %xmm1\0Asubps %xmm11, %xmm3\0Amovaps %xmm12, %xmm4\0Amovaps %xmm12, %xmm6\0Aaddps %xmm14, %xmm4\0Asubps %xmm14, %xmm6\0Amovaps %xmm13, %xmm5\0Amovaps %xmm13, %xmm7\0Aaddps %xmm15, %xmm5\0Asubps %xmm15, %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm12\0Aaddps %xmm4, %xmm8\0Asubps %xmm4, %xmm12\0Amovaps %xmm1, %xmm9\0Amovaps %xmm1, %xmm13\0Aaddps %xmm5, %xmm9\0Asubps %xmm5, %xmm13\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm14\0Aaddps %xmm6, %xmm10\0Asubps %xmm6, %xmm14\0Amovaps %xmm3, %xmm11\0Amovaps %xmm3, %xmm15\0Aaddps %xmm7, %xmm11\0Asubps %xmm7, %xmm15\0Amovups %xmm8, ($0)\0Amovups %xmm9, ($1)\0Amovups %xmm10, ($2)\0Amovups %xmm11, ($3)\0Amovups %xmm12, ($4)\0Amovups %xmm13, ($5)\0Amovups %xmm14, ($6)\0Amovups %xmm15, ($7)\0A", "r,r,r,r,r,r,r,r,~{xmm0},~{xmm1},~{xmm2},~{xmm3},~{xmm4},~{xmm5},~{xmm6},~{xmm7},~{xmm8},~{xmm9},~{xmm10},~{xmm11},~{xmm12},~{xmm13},~{xmm14},~{xmm15},~{memory},~{dirflag},~{fpsr},~{flags}"(float* %57, float* %58, float* %59, float* %60, float* %61, float* %62, float* %63, float* %64)
%65 = getelementptr inbounds float, float* %17, i64 24
%66 = getelementptr inbounds float, float* %65, i64 32
%67 = getelementptr inbounds float, float* %65, i64 64
%68 = getelementptr inbounds float, float* %65, i64 96
%69 = getelementptr inbounds float, float* %65, i64 128
%70 = getelementptr inbounds float, float* %65, i64 160
%71 = getelementptr inbounds float, float* %65, i64 192
%72 = getelementptr inbounds float, float* %65, i64 224
tail call void asm sideeffect "movups ($0), %xmm0\0Amovups ($1), %xmm1\0Amovups ($2), %xmm2\0Amovups ($3), %xmm3\0Amovups ($4), %xmm4\0Amovups ($5), %xmm5\0Amovups ($6), %xmm6\0Amovups ($7), %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm9\0Aaddps %xmm1, %xmm8\0Asubps %xmm1, %xmm9\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm11\0Aaddps %xmm3, %xmm10\0Asubps %xmm3, %xmm11\0Amovaps %xmm4, %xmm12\0Amovaps %xmm4, %xmm13\0Aaddps %xmm5, %xmm12\0Asubps %xmm5, %xmm13\0Amovaps %xmm6, %xmm14\0Amovaps %xmm6, %xmm15\0Aaddps %xmm7, %xmm14\0Asubps %xmm7, %xmm15\0Amovaps %xmm8, %xmm0\0Amovaps %xmm8, %xmm2\0Aaddps %xmm10, %xmm0\0Asubps %xmm10, %xmm2\0Amovaps %xmm9, %xmm1\0Amovaps %xmm9, %xmm3\0Aaddps %xmm11, %xmm1\0Asubps %xmm11, %xmm3\0Amovaps %xmm12, %xmm4\0Amovaps %xmm12, %xmm6\0Aaddps %xmm14, %xmm4\0Asubps %xmm14, %xmm6\0Amovaps %xmm13, %xmm5\0Amovaps %xmm13, %xmm7\0Aaddps %xmm15, %xmm5\0Asubps %xmm15, %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm12\0Aaddps %xmm4, %xmm8\0Asubps %xmm4, %xmm12\0Amovaps %xmm1, %xmm9\0Amovaps %xmm1, %xmm13\0Aaddps %xmm5, %xmm9\0Asubps %xmm5, %xmm13\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm14\0Aaddps %xmm6, %xmm10\0Asubps %xmm6, %xmm14\0Amovaps %xmm3, %xmm11\0Amovaps %xmm3, %xmm15\0Aaddps %xmm7, %xmm11\0Asubps %xmm7, %xmm15\0Amovups %xmm8, ($0)\0Amovups %xmm9, ($1)\0Amovups %xmm10, ($2)\0Amovups %xmm11, ($3)\0Amovups %xmm12, ($4)\0Amovups %xmm13, ($5)\0Amovups %xmm14, ($6)\0Amovups %xmm15, ($7)\0A", "r,r,r,r,r,r,r,r,~{xmm0},~{xmm1},~{xmm2},~{xmm3},~{xmm4},~{xmm5},~{xmm6},~{xmm7},~{xmm8},~{xmm9},~{xmm10},~{xmm11},~{xmm12},~{xmm13},~{xmm14},~{xmm15},~{memory},~{dirflag},~{fpsr},~{flags}"(float* %65, float* %66, float* %67, float* %68, float* %69, float* %70, float* %71, float* %72)
%73 = getelementptr inbounds float, float* %17, i64 28
%74 = getelementptr inbounds float, float* %73, i64 32
%75 = getelementptr inbounds float, float* %73, i64 64
%76 = getelementptr inbounds float, float* %73, i64 96
%77 = getelementptr inbounds float, float* %73, i64 128
%78 = getelementptr inbounds float, float* %73, i64 160
%79 = getelementptr inbounds float, float* %73, i64 192
%80 = getelementptr inbounds float, float* %73, i64 224
tail call void asm sideeffect "movups ($0), %xmm0\0Amovups ($1), %xmm1\0Amovups ($2), %xmm2\0Amovups ($3), %xmm3\0Amovups ($4), %xmm4\0Amovups ($5), %xmm5\0Amovups ($6), %xmm6\0Amovups ($7), %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm9\0Aaddps %xmm1, %xmm8\0Asubps %xmm1, %xmm9\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm11\0Aaddps %xmm3, %xmm10\0Asubps %xmm3, %xmm11\0Amovaps %xmm4, %xmm12\0Amovaps %xmm4, %xmm13\0Aaddps %xmm5, %xmm12\0Asubps %xmm5, %xmm13\0Amovaps %xmm6, %xmm14\0Amovaps %xmm6, %xmm15\0Aaddps %xmm7, %xmm14\0Asubps %xmm7, %xmm15\0Amovaps %xmm8, %xmm0\0Amovaps %xmm8, %xmm2\0Aaddps %xmm10, %xmm0\0Asubps %xmm10, %xmm2\0Amovaps %xmm9, %xmm1\0Amovaps %xmm9, %xmm3\0Aaddps %xmm11, %xmm1\0Asubps %xmm11, %xmm3\0Amovaps %xmm12, %xmm4\0Amovaps %xmm12, %xmm6\0Aaddps %xmm14, %xmm4\0Asubps %xmm14, %xmm6\0Amovaps %xmm13, %xmm5\0Amovaps %xmm13, %xmm7\0Aaddps %xmm15, %xmm5\0Asubps %xmm15, %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm12\0Aaddps %xmm4, %xmm8\0Asubps %xmm4, %xmm12\0Amovaps %xmm1, %xmm9\0Amovaps %xmm1, %xmm13\0Aaddps %xmm5, %xmm9\0Asubps %xmm5, %xmm13\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm14\0Aaddps %xmm6, %xmm10\0Asubps %xmm6, %xmm14\0Amovaps %xmm3, %xmm11\0Amovaps %xmm3, %xmm15\0Aaddps %xmm7, %xmm11\0Asubps %xmm7, %xmm15\0Amovups %xmm8, ($0)\0Amovups %xmm9, ($1)\0Amovups %xmm10, ($2)\0Amovups %xmm11, ($3)\0Amovups %xmm12, ($4)\0Amovups %xmm13, ($5)\0Amovups %xmm14, ($6)\0Amovups %xmm15, ($7)\0A", "r,r,r,r,r,r,r,r,~{xmm0},~{xmm1},~{xmm2},~{xmm3},~{xmm4},~{xmm5},~{xmm6},~{xmm7},~{xmm8},~{xmm9},~{xmm10},~{xmm11},~{xmm12},~{xmm13},~{xmm14},~{xmm15},~{memory},~{dirflag},~{fpsr},~{flags}"(float* %73, float* %74, float* %75, float* %76, float* %77, float* %78, float* %79, float* %80)
%81 = add nuw nsw i64 %16, 256
%82 = icmp ult i64 %16, 65280
br i1 %82, label %15, label %83
83: ; preds = %15, %86
%84 = phi i64 [ %87, %86 ], [ 0, %15 ]
%85 = getelementptr inbounds float, float* %0, i64 %84
br label %89
86: ; preds = %89
%87 = add nuw nsw i64 %84, 2048
%88 = icmp ult i64 %84, 63488
br i1 %88, label %83, label %143
89: ; preds = %83, %89
%90 = phi i64 [ 0, %83 ], [ %99, %89 ]
%91 = getelementptr inbounds float, float* %85, i64 %90
%92 = getelementptr inbounds float, float* %91, i64 256
%93 = getelementptr inbounds float, float* %91, i64 512
%94 = getelementptr inbounds float, float* %91, i64 768
%95 = getelementptr inbounds float, float* %91, i64 1024
%96 = getelementptr inbounds float, float* %91, i64 1280
%97 = getelementptr inbounds float, float* %91, i64 1536
%98 = getelementptr inbounds float, float* %91, i64 1792
tail call void asm sideeffect "movups ($0), %xmm0\0Amovups ($1), %xmm1\0Amovups ($2), %xmm2\0Amovups ($3), %xmm3\0Amovups ($4), %xmm4\0Amovups ($5), %xmm5\0Amovups ($6), %xmm6\0Amovups ($7), %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm9\0Aaddps %xmm1, %xmm8\0Asubps %xmm1, %xmm9\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm11\0Aaddps %xmm3, %xmm10\0Asubps %xmm3, %xmm11\0Amovaps %xmm4, %xmm12\0Amovaps %xmm4, %xmm13\0Aaddps %xmm5, %xmm12\0Asubps %xmm5, %xmm13\0Amovaps %xmm6, %xmm14\0Amovaps %xmm6, %xmm15\0Aaddps %xmm7, %xmm14\0Asubps %xmm7, %xmm15\0Amovaps %xmm8, %xmm0\0Amovaps %xmm8, %xmm2\0Aaddps %xmm10, %xmm0\0Asubps %xmm10, %xmm2\0Amovaps %xmm9, %xmm1\0Amovaps %xmm9, %xmm3\0Aaddps %xmm11, %xmm1\0Asubps %xmm11, %xmm3\0Amovaps %xmm12, %xmm4\0Amovaps %xmm12, %xmm6\0Aaddps %xmm14, %xmm4\0Asubps %xmm14, %xmm6\0Amovaps %xmm13, %xmm5\0Amovaps %xmm13, %xmm7\0Aaddps %xmm15, %xmm5\0Asubps %xmm15, %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm12\0Aaddps %xmm4, %xmm8\0Asubps %xmm4, %xmm12\0Amovaps %xmm1, %xmm9\0Amovaps %xmm1, %xmm13\0Aaddps %xmm5, %xmm9\0Asubps %xmm5, %xmm13\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm14\0Aaddps %xmm6, %xmm10\0Asubps %xmm6, %xmm14\0Amovaps %xmm3, %xmm11\0Amovaps %xmm3, %xmm15\0Aaddps %xmm7, %xmm11\0Asubps %xmm7, %xmm15\0Amovups %xmm8, ($0)\0Amovups %xmm9, ($1)\0Amovups %xmm10, ($2)\0Amovups %xmm11, ($3)\0Amovups %xmm12, ($4)\0Amovups %xmm13, ($5)\0Amovups %xmm14, ($6)\0Amovups %xmm15, ($7)\0A", "r,r,r,r,r,r,r,r,~{xmm0},~{xmm1},~{xmm2},~{xmm3},~{xmm4},~{xmm5},~{xmm6},~{xmm7},~{xmm8},~{xmm9},~{xmm10},~{xmm11},~{xmm12},~{xmm13},~{xmm14},~{xmm15},~{memory},~{dirflag},~{fpsr},~{flags}"(float* %91, float* %92, float* %93, float* %94, float* %95, float* %96, float* %97, float* %98)
%99 = add nuw nsw i64 %90, 4
%100 = icmp ult i64 %90, 252
br i1 %100, label %89, label %86
101: ; preds = %143
%102 = getelementptr inbounds float, float* %0, i64 16384
br label %103
103: ; preds = %103, %101
%104 = phi i64 [ 0, %101 ], [ %113, %103 ]
%105 = getelementptr inbounds float, float* %102, i64 %104
%106 = getelementptr inbounds float, float* %105, i64 2048
%107 = getelementptr inbounds float, float* %105, i64 4096
%108 = getelementptr inbounds float, float* %105, i64 6144
%109 = getelementptr inbounds float, float* %105, i64 8192
%110 = getelementptr inbounds float, float* %105, i64 10240
%111 = getelementptr inbounds float, float* %105, i64 12288
%112 = getelementptr inbounds float, float* %105, i64 14336
tail call void asm sideeffect "movups ($0), %xmm0\0Amovups ($1), %xmm1\0Amovups ($2), %xmm2\0Amovups ($3), %xmm3\0Amovups ($4), %xmm4\0Amovups ($5), %xmm5\0Amovups ($6), %xmm6\0Amovups ($7), %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm9\0Aaddps %xmm1, %xmm8\0Asubps %xmm1, %xmm9\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm11\0Aaddps %xmm3, %xmm10\0Asubps %xmm3, %xmm11\0Amovaps %xmm4, %xmm12\0Amovaps %xmm4, %xmm13\0Aaddps %xmm5, %xmm12\0Asubps %xmm5, %xmm13\0Amovaps %xmm6, %xmm14\0Amovaps %xmm6, %xmm15\0Aaddps %xmm7, %xmm14\0Asubps %xmm7, %xmm15\0Amovaps %xmm8, %xmm0\0Amovaps %xmm8, %xmm2\0Aaddps %xmm10, %xmm0\0Asubps %xmm10, %xmm2\0Amovaps %xmm9, %xmm1\0Amovaps %xmm9, %xmm3\0Aaddps %xmm11, %xmm1\0Asubps %xmm11, %xmm3\0Amovaps %xmm12, %xmm4\0Amovaps %xmm12, %xmm6\0Aaddps %xmm14, %xmm4\0Asubps %xmm14, %xmm6\0Amovaps %xmm13, %xmm5\0Amovaps %xmm13, %xmm7\0Aaddps %xmm15, %xmm5\0Asubps %xmm15, %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm12\0Aaddps %xmm4, %xmm8\0Asubps %xmm4, %xmm12\0Amovaps %xmm1, %xmm9\0Amovaps %xmm1, %xmm13\0Aaddps %xmm5, %xmm9\0Asubps %xmm5, %xmm13\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm14\0Aaddps %xmm6, %xmm10\0Asubps %xmm6, %xmm14\0Amovaps %xmm3, %xmm11\0Amovaps %xmm3, %xmm15\0Aaddps %xmm7, %xmm11\0Asubps %xmm7, %xmm15\0Amovups %xmm8, ($0)\0Amovups %xmm9, ($1)\0Amovups %xmm10, ($2)\0Amovups %xmm11, ($3)\0Amovups %xmm12, ($4)\0Amovups %xmm13, ($5)\0Amovups %xmm14, ($6)\0Amovups %xmm15, ($7)\0A", "r,r,r,r,r,r,r,r,~{xmm0},~{xmm1},~{xmm2},~{xmm3},~{xmm4},~{xmm5},~{xmm6},~{xmm7},~{xmm8},~{xmm9},~{xmm10},~{xmm11},~{xmm12},~{xmm13},~{xmm14},~{xmm15},~{memory},~{dirflag},~{fpsr},~{flags}"(float* %105, float* %106, float* %107, float* %108, float* %109, float* %110, float* %111, float* %112)
%113 = add nuw nsw i64 %104, 4
%114 = icmp ult i64 %104, 2044
br i1 %114, label %103, label %115
115: ; preds = %103
%116 = getelementptr inbounds float, float* %0, i64 32768
br label %117
117: ; preds = %117, %115
%118 = phi i64 [ 0, %115 ], [ %127, %117 ]
%119 = getelementptr inbounds float, float* %116, i64 %118
%120 = getelementptr inbounds float, float* %119, i64 2048
%121 = getelementptr inbounds float, float* %119, i64 4096
%122 = getelementptr inbounds float, float* %119, i64 6144
%123 = getelementptr inbounds float, float* %119, i64 8192
%124 = getelementptr inbounds float, float* %119, i64 10240
%125 = getelementptr inbounds float, float* %119, i64 12288
%126 = getelementptr inbounds float, float* %119, i64 14336
tail call void asm sideeffect "movups ($0), %xmm0\0Amovups ($1), %xmm1\0Amovups ($2), %xmm2\0Amovups ($3), %xmm3\0Amovups ($4), %xmm4\0Amovups ($5), %xmm5\0Amovups ($6), %xmm6\0Amovups ($7), %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm9\0Aaddps %xmm1, %xmm8\0Asubps %xmm1, %xmm9\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm11\0Aaddps %xmm3, %xmm10\0Asubps %xmm3, %xmm11\0Amovaps %xmm4, %xmm12\0Amovaps %xmm4, %xmm13\0Aaddps %xmm5, %xmm12\0Asubps %xmm5, %xmm13\0Amovaps %xmm6, %xmm14\0Amovaps %xmm6, %xmm15\0Aaddps %xmm7, %xmm14\0Asubps %xmm7, %xmm15\0Amovaps %xmm8, %xmm0\0Amovaps %xmm8, %xmm2\0Aaddps %xmm10, %xmm0\0Asubps %xmm10, %xmm2\0Amovaps %xmm9, %xmm1\0Amovaps %xmm9, %xmm3\0Aaddps %xmm11, %xmm1\0Asubps %xmm11, %xmm3\0Amovaps %xmm12, %xmm4\0Amovaps %xmm12, %xmm6\0Aaddps %xmm14, %xmm4\0Asubps %xmm14, %xmm6\0Amovaps %xmm13, %xmm5\0Amovaps %xmm13, %xmm7\0Aaddps %xmm15, %xmm5\0Asubps %xmm15, %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm12\0Aaddps %xmm4, %xmm8\0Asubps %xmm4, %xmm12\0Amovaps %xmm1, %xmm9\0Amovaps %xmm1, %xmm13\0Aaddps %xmm5, %xmm9\0Asubps %xmm5, %xmm13\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm14\0Aaddps %xmm6, %xmm10\0Asubps %xmm6, %xmm14\0Amovaps %xmm3, %xmm11\0Amovaps %xmm3, %xmm15\0Aaddps %xmm7, %xmm11\0Asubps %xmm7, %xmm15\0Amovups %xmm8, ($0)\0Amovups %xmm9, ($1)\0Amovups %xmm10, ($2)\0Amovups %xmm11, ($3)\0Amovups %xmm12, ($4)\0Amovups %xmm13, ($5)\0Amovups %xmm14, ($6)\0Amovups %xmm15, ($7)\0A", "r,r,r,r,r,r,r,r,~{xmm0},~{xmm1},~{xmm2},~{xmm3},~{xmm4},~{xmm5},~{xmm6},~{xmm7},~{xmm8},~{xmm9},~{xmm10},~{xmm11},~{xmm12},~{xmm13},~{xmm14},~{xmm15},~{memory},~{dirflag},~{fpsr},~{flags}"(float* %119, float* %120, float* %121, float* %122, float* %123, float* %124, float* %125, float* %126)
%127 = add nuw nsw i64 %118, 4
%128 = icmp ult i64 %118, 2044
br i1 %128, label %117, label %129
129: ; preds = %117
%130 = getelementptr inbounds float, float* %0, i64 49152
br label %131
131: ; preds = %131, %129
%132 = phi i64 [ 0, %129 ], [ %141, %131 ]
%133 = getelementptr inbounds float, float* %130, i64 %132
%134 = getelementptr inbounds float, float* %133, i64 2048
%135 = getelementptr inbounds float, float* %133, i64 4096
%136 = getelementptr inbounds float, float* %133, i64 6144
%137 = getelementptr inbounds float, float* %133, i64 8192
%138 = getelementptr inbounds float, float* %133, i64 10240
%139 = getelementptr inbounds float, float* %133, i64 12288
%140 = getelementptr inbounds float, float* %133, i64 14336
tail call void asm sideeffect "movups ($0), %xmm0\0Amovups ($1), %xmm1\0Amovups ($2), %xmm2\0Amovups ($3), %xmm3\0Amovups ($4), %xmm4\0Amovups ($5), %xmm5\0Amovups ($6), %xmm6\0Amovups ($7), %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm9\0Aaddps %xmm1, %xmm8\0Asubps %xmm1, %xmm9\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm11\0Aaddps %xmm3, %xmm10\0Asubps %xmm3, %xmm11\0Amovaps %xmm4, %xmm12\0Amovaps %xmm4, %xmm13\0Aaddps %xmm5, %xmm12\0Asubps %xmm5, %xmm13\0Amovaps %xmm6, %xmm14\0Amovaps %xmm6, %xmm15\0Aaddps %xmm7, %xmm14\0Asubps %xmm7, %xmm15\0Amovaps %xmm8, %xmm0\0Amovaps %xmm8, %xmm2\0Aaddps %xmm10, %xmm0\0Asubps %xmm10, %xmm2\0Amovaps %xmm9, %xmm1\0Amovaps %xmm9, %xmm3\0Aaddps %xmm11, %xmm1\0Asubps %xmm11, %xmm3\0Amovaps %xmm12, %xmm4\0Amovaps %xmm12, %xmm6\0Aaddps %xmm14, %xmm4\0Asubps %xmm14, %xmm6\0Amovaps %xmm13, %xmm5\0Amovaps %xmm13, %xmm7\0Aaddps %xmm15, %xmm5\0Asubps %xmm15, %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm12\0Aaddps %xmm4, %xmm8\0Asubps %xmm4, %xmm12\0Amovaps %xmm1, %xmm9\0Amovaps %xmm1, %xmm13\0Aaddps %xmm5, %xmm9\0Asubps %xmm5, %xmm13\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm14\0Aaddps %xmm6, %xmm10\0Asubps %xmm6, %xmm14\0Amovaps %xmm3, %xmm11\0Amovaps %xmm3, %xmm15\0Aaddps %xmm7, %xmm11\0Asubps %xmm7, %xmm15\0Amovups %xmm8, ($0)\0Amovups %xmm9, ($1)\0Amovups %xmm10, ($2)\0Amovups %xmm11, ($3)\0Amovups %xmm12, ($4)\0Amovups %xmm13, ($5)\0Amovups %xmm14, ($6)\0Amovups %xmm15, ($7)\0A", "r,r,r,r,r,r,r,r,~{xmm0},~{xmm1},~{xmm2},~{xmm3},~{xmm4},~{xmm5},~{xmm6},~{xmm7},~{xmm8},~{xmm9},~{xmm10},~{xmm11},~{xmm12},~{xmm13},~{xmm14},~{xmm15},~{memory},~{dirflag},~{fpsr},~{flags}"(float* %133, float* %134, float* %135, float* %136, float* %137, float* %138, float* %139, float* %140)
%141 = add nuw nsw i64 %132, 4
%142 = icmp ult i64 %132, 2044
br i1 %142, label %131, label %155
143: ; preds = %86, %143
%144 = phi i64 [ %153, %143 ], [ 0, %86 ]
%145 = getelementptr inbounds float, float* %0, i64 %144
%146 = getelementptr inbounds float, float* %145, i64 2048
%147 = getelementptr inbounds float, float* %145, i64 4096
%148 = getelementptr inbounds float, float* %145, i64 6144
%149 = getelementptr inbounds float, float* %145, i64 8192
%150 = getelementptr inbounds float, float* %145, i64 10240
%151 = getelementptr inbounds float, float* %145, i64 12288
%152 = getelementptr inbounds float, float* %145, i64 14336
tail call void asm sideeffect "movups ($0), %xmm0\0Amovups ($1), %xmm1\0Amovups ($2), %xmm2\0Amovups ($3), %xmm3\0Amovups ($4), %xmm4\0Amovups ($5), %xmm5\0Amovups ($6), %xmm6\0Amovups ($7), %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm9\0Aaddps %xmm1, %xmm8\0Asubps %xmm1, %xmm9\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm11\0Aaddps %xmm3, %xmm10\0Asubps %xmm3, %xmm11\0Amovaps %xmm4, %xmm12\0Amovaps %xmm4, %xmm13\0Aaddps %xmm5, %xmm12\0Asubps %xmm5, %xmm13\0Amovaps %xmm6, %xmm14\0Amovaps %xmm6, %xmm15\0Aaddps %xmm7, %xmm14\0Asubps %xmm7, %xmm15\0Amovaps %xmm8, %xmm0\0Amovaps %xmm8, %xmm2\0Aaddps %xmm10, %xmm0\0Asubps %xmm10, %xmm2\0Amovaps %xmm9, %xmm1\0Amovaps %xmm9, %xmm3\0Aaddps %xmm11, %xmm1\0Asubps %xmm11, %xmm3\0Amovaps %xmm12, %xmm4\0Amovaps %xmm12, %xmm6\0Aaddps %xmm14, %xmm4\0Asubps %xmm14, %xmm6\0Amovaps %xmm13, %xmm5\0Amovaps %xmm13, %xmm7\0Aaddps %xmm15, %xmm5\0Asubps %xmm15, %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm12\0Aaddps %xmm4, %xmm8\0Asubps %xmm4, %xmm12\0Amovaps %xmm1, %xmm9\0Amovaps %xmm1, %xmm13\0Aaddps %xmm5, %xmm9\0Asubps %xmm5, %xmm13\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm14\0Aaddps %xmm6, %xmm10\0Asubps %xmm6, %xmm14\0Amovaps %xmm3, %xmm11\0Amovaps %xmm3, %xmm15\0Aaddps %xmm7, %xmm11\0Asubps %xmm7, %xmm15\0Amovups %xmm8, ($0)\0Amovups %xmm9, ($1)\0Amovups %xmm10, ($2)\0Amovups %xmm11, ($3)\0Amovups %xmm12, ($4)\0Amovups %xmm13, ($5)\0Amovups %xmm14, ($6)\0Amovups %xmm15, ($7)\0A", "r,r,r,r,r,r,r,r,~{xmm0},~{xmm1},~{xmm2},~{xmm3},~{xmm4},~{xmm5},~{xmm6},~{xmm7},~{xmm8},~{xmm9},~{xmm10},~{xmm11},~{xmm12},~{xmm13},~{xmm14},~{xmm15},~{memory},~{dirflag},~{fpsr},~{flags}"(float* %145, float* %146, float* %147, float* %148, float* %149, float* %150, float* %151, float* %152)
%153 = add nuw nsw i64 %144, 4
%154 = icmp ult i64 %144, 2044
br i1 %154, label %143, label %101
155: ; preds = %131, %155
%156 = phi i64 [ %161, %155 ], [ 0, %131 ]
%157 = getelementptr inbounds float, float* %0, i64 %156
%158 = getelementptr inbounds float, float* %157, i64 16384
%159 = getelementptr inbounds float, float* %157, i64 32768
%160 = getelementptr inbounds float, float* %157, i64 49152
tail call void asm sideeffect "movups ($0), %xmm0\0Amovups ($1), %xmm1\0Amovups ($2), %xmm2\0Amovups ($3), %xmm3\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm9\0Aaddps %xmm1, %xmm8\0Asubps %xmm1, %xmm9\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm11\0Aaddps %xmm3, %xmm10\0Asubps %xmm3, %xmm11\0Amovaps %xmm8, %xmm0\0Amovaps %xmm8, %xmm2\0Aaddps %xmm10, %xmm0\0Asubps %xmm10, %xmm2\0Amovaps %xmm9, %xmm1\0Amovaps %xmm9, %xmm3\0Aaddps %xmm11, %xmm1\0Asubps %xmm11, %xmm3\0Amovups %xmm0, ($0)\0Amovups %xmm1, ($1)\0Amovups %xmm2, ($2)\0Amovups %xmm3, ($3)\0A", "r,r,r,r,~{xmm0},~{xmm1},~{xmm2},~{xmm3},~{xmm4},~{xmm5},~{xmm6},~{xmm7},~{xmm8},~{xmm9},~{xmm10},~{xmm11},~{xmm12},~{xmm13},~{xmm14},~{xmm15},~{memory},~{dirflag},~{fpsr},~{flags}"(float* %157, float* %158, float* %159, float* %160)
%161 = add nuw nsw i64 %156, 4
%162 = icmp ult i64 %156, 16380
br i1 %162, label %155, label %243
163: ; preds = %2
tail call void @helper_float_28_recursive(float* %0, i32 16)
%164 = getelementptr inbounds float, float* %0, i64 65536
tail call void @helper_float_28_recursive(float* %164, i32 16)
%165 = getelementptr inbounds float, float* %0, i64 131072
tail call void @helper_float_28_recursive(float* %165, i32 16)
%166 = getelementptr inbounds float, float* %0, i64 196608
tail call void @helper_float_28_recursive(float* %166, i32 16)
%167 = getelementptr inbounds float, float* %0, i64 262144
tail call void @helper_float_28_recursive(float* %167, i32 16)
%168 = getelementptr inbounds float, float* %0, i64 327680
tail call void @helper_float_28_recursive(float* %168, i32 16)
%169 = getelementptr inbounds float, float* %0, i64 393216
tail call void @helper_float_28_recursive(float* %169, i32 16)
%170 = getelementptr inbounds float, float* %0, i64 458752
tail call void @helper_float_28_recursive(float* %170, i32 16)
br label %171
171: ; preds = %163, %171
%172 = phi i64 [ 0, %163 ], [ %181, %171 ]
%173 = getelementptr inbounds float, float* %0, i64 %172
%174 = getelementptr inbounds float, float* %173, i64 65536
%175 = getelementptr inbounds float, float* %173, i64 131072
%176 = getelementptr inbounds float, float* %173, i64 196608
%177 = getelementptr inbounds float, float* %173, i64 262144
%178 = getelementptr inbounds float, float* %173, i64 327680
%179 = getelementptr inbounds float, float* %173, i64 393216
%180 = getelementptr inbounds float, float* %173, i64 458752
tail call void asm sideeffect "movups ($0), %xmm0\0Amovups ($1), %xmm1\0Amovups ($2), %xmm2\0Amovups ($3), %xmm3\0Amovups ($4), %xmm4\0Amovups ($5), %xmm5\0Amovups ($6), %xmm6\0Amovups ($7), %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm9\0Aaddps %xmm1, %xmm8\0Asubps %xmm1, %xmm9\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm11\0Aaddps %xmm3, %xmm10\0Asubps %xmm3, %xmm11\0Amovaps %xmm4, %xmm12\0Amovaps %xmm4, %xmm13\0Aaddps %xmm5, %xmm12\0Asubps %xmm5, %xmm13\0Amovaps %xmm6, %xmm14\0Amovaps %xmm6, %xmm15\0Aaddps %xmm7, %xmm14\0Asubps %xmm7, %xmm15\0Amovaps %xmm8, %xmm0\0Amovaps %xmm8, %xmm2\0Aaddps %xmm10, %xmm0\0Asubps %xmm10, %xmm2\0Amovaps %xmm9, %xmm1\0Amovaps %xmm9, %xmm3\0Aaddps %xmm11, %xmm1\0Asubps %xmm11, %xmm3\0Amovaps %xmm12, %xmm4\0Amovaps %xmm12, %xmm6\0Aaddps %xmm14, %xmm4\0Asubps %xmm14, %xmm6\0Amovaps %xmm13, %xmm5\0Amovaps %xmm13, %xmm7\0Aaddps %xmm15, %xmm5\0Asubps %xmm15, %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm12\0Aaddps %xmm4, %xmm8\0Asubps %xmm4, %xmm12\0Amovaps %xmm1, %xmm9\0Amovaps %xmm1, %xmm13\0Aaddps %xmm5, %xmm9\0Asubps %xmm5, %xmm13\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm14\0Aaddps %xmm6, %xmm10\0Asubps %xmm6, %xmm14\0Amovaps %xmm3, %xmm11\0Amovaps %xmm3, %xmm15\0Aaddps %xmm7, %xmm11\0Asubps %xmm7, %xmm15\0Amovups %xmm8, ($0)\0Amovups %xmm9, ($1)\0Amovups %xmm10, ($2)\0Amovups %xmm11, ($3)\0Amovups %xmm12, ($4)\0Amovups %xmm13, ($5)\0Amovups %xmm14, ($6)\0Amovups %xmm15, ($7)\0A", "r,r,r,r,r,r,r,r,~{xmm0},~{xmm1},~{xmm2},~{xmm3},~{xmm4},~{xmm5},~{xmm6},~{xmm7},~{xmm8},~{xmm9},~{xmm10},~{xmm11},~{xmm12},~{xmm13},~{xmm14},~{xmm15},~{memory},~{dirflag},~{fpsr},~{flags}"(float* %173, float* %174, float* %175, float* %176, float* %177, float* %178, float* %179, float* %180)
%181 = add nuw nsw i64 %172, 4
%182 = icmp ult i64 %172, 65532
br i1 %182, label %171, label %243
183: ; preds = %2
tail call void @helper_float_28_recursive(float* %0, i32 19)
%184 = getelementptr inbounds float, float* %0, i64 524288
tail call void @helper_float_28_recursive(float* %184, i32 19)
%185 = getelementptr inbounds float, float* %0, i64 1048576
tail call void @helper_float_28_recursive(float* %185, i32 19)
%186 = getelementptr inbounds float, float* %0, i64 1572864
tail call void @helper_float_28_recursive(float* %186, i32 19)
%187 = getelementptr inbounds float, float* %0, i64 2097152
tail call void @helper_float_28_recursive(float* %187, i32 19)
%188 = getelementptr inbounds float, float* %0, i64 2621440
tail call void @helper_float_28_recursive(float* %188, i32 19)
%189 = getelementptr inbounds float, float* %0, i64 3145728
tail call void @helper_float_28_recursive(float* %189, i32 19)
%190 = getelementptr inbounds float, float* %0, i64 3670016
tail call void @helper_float_28_recursive(float* %190, i32 19)
br label %191
191: ; preds = %183, %191
%192 = phi i64 [ 0, %183 ], [ %201, %191 ]
%193 = getelementptr inbounds float, float* %0, i64 %192
%194 = getelementptr inbounds float, float* %193, i64 524288
%195 = getelementptr inbounds float, float* %193, i64 1048576
%196 = getelementptr inbounds float, float* %193, i64 1572864
%197 = getelementptr inbounds float, float* %193, i64 2097152
%198 = getelementptr inbounds float, float* %193, i64 2621440
%199 = getelementptr inbounds float, float* %193, i64 3145728
%200 = getelementptr inbounds float, float* %193, i64 3670016
tail call void asm sideeffect "movups ($0), %xmm0\0Amovups ($1), %xmm1\0Amovups ($2), %xmm2\0Amovups ($3), %xmm3\0Amovups ($4), %xmm4\0Amovups ($5), %xmm5\0Amovups ($6), %xmm6\0Amovups ($7), %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm9\0Aaddps %xmm1, %xmm8\0Asubps %xmm1, %xmm9\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm11\0Aaddps %xmm3, %xmm10\0Asubps %xmm3, %xmm11\0Amovaps %xmm4, %xmm12\0Amovaps %xmm4, %xmm13\0Aaddps %xmm5, %xmm12\0Asubps %xmm5, %xmm13\0Amovaps %xmm6, %xmm14\0Amovaps %xmm6, %xmm15\0Aaddps %xmm7, %xmm14\0Asubps %xmm7, %xmm15\0Amovaps %xmm8, %xmm0\0Amovaps %xmm8, %xmm2\0Aaddps %xmm10, %xmm0\0Asubps %xmm10, %xmm2\0Amovaps %xmm9, %xmm1\0Amovaps %xmm9, %xmm3\0Aaddps %xmm11, %xmm1\0Asubps %xmm11, %xmm3\0Amovaps %xmm12, %xmm4\0Amovaps %xmm12, %xmm6\0Aaddps %xmm14, %xmm4\0Asubps %xmm14, %xmm6\0Amovaps %xmm13, %xmm5\0Amovaps %xmm13, %xmm7\0Aaddps %xmm15, %xmm5\0Asubps %xmm15, %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm12\0Aaddps %xmm4, %xmm8\0Asubps %xmm4, %xmm12\0Amovaps %xmm1, %xmm9\0Amovaps %xmm1, %xmm13\0Aaddps %xmm5, %xmm9\0Asubps %xmm5, %xmm13\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm14\0Aaddps %xmm6, %xmm10\0Asubps %xmm6, %xmm14\0Amovaps %xmm3, %xmm11\0Amovaps %xmm3, %xmm15\0Aaddps %xmm7, %xmm11\0Asubps %xmm7, %xmm15\0Amovups %xmm8, ($0)\0Amovups %xmm9, ($1)\0Amovups %xmm10, ($2)\0Amovups %xmm11, ($3)\0Amovups %xmm12, ($4)\0Amovups %xmm13, ($5)\0Amovups %xmm14, ($6)\0Amovups %xmm15, ($7)\0A", "r,r,r,r,r,r,r,r,~{xmm0},~{xmm1},~{xmm2},~{xmm3},~{xmm4},~{xmm5},~{xmm6},~{xmm7},~{xmm8},~{xmm9},~{xmm10},~{xmm11},~{xmm12},~{xmm13},~{xmm14},~{xmm15},~{memory},~{dirflag},~{fpsr},~{flags}"(float* %193, float* %194, float* %195, float* %196, float* %197, float* %198, float* %199, float* %200)
%201 = add nuw nsw i64 %192, 4
%202 = icmp ult i64 %192, 524284
br i1 %202, label %191, label %243
203: ; preds = %2
tail call void @helper_float_28_recursive(float* %0, i32 22)
%204 = getelementptr inbounds float, float* %0, i64 4194304
tail call void @helper_float_28_recursive(float* %204, i32 22)
%205 = getelementptr inbounds float, float* %0, i64 8388608
tail call void @helper_float_28_recursive(float* %205, i32 22)
%206 = getelementptr inbounds float, float* %0, i64 12582912
tail call void @helper_float_28_recursive(float* %206, i32 22)
%207 = getelementptr inbounds float, float* %0, i64 16777216
tail call void @helper_float_28_recursive(float* %207, i32 22)
%208 = getelementptr inbounds float, float* %0, i64 20971520
tail call void @helper_float_28_recursive(float* %208, i32 22)
%209 = getelementptr inbounds float, float* %0, i64 25165824
tail call void @helper_float_28_recursive(float* %209, i32 22)
%210 = getelementptr inbounds float, float* %0, i64 29360128
tail call void @helper_float_28_recursive(float* %210, i32 22)
br label %211
211: ; preds = %203, %211
%212 = phi i64 [ 0, %203 ], [ %221, %211 ]
%213 = getelementptr inbounds float, float* %0, i64 %212
%214 = getelementptr inbounds float, float* %213, i64 4194304
%215 = getelementptr inbounds float, float* %213, i64 8388608
%216 = getelementptr inbounds float, float* %213, i64 12582912
%217 = getelementptr inbounds float, float* %213, i64 16777216
%218 = getelementptr inbounds float, float* %213, i64 20971520
%219 = getelementptr inbounds float, float* %213, i64 25165824
%220 = getelementptr inbounds float, float* %213, i64 29360128
tail call void asm sideeffect "movups ($0), %xmm0\0Amovups ($1), %xmm1\0Amovups ($2), %xmm2\0Amovups ($3), %xmm3\0Amovups ($4), %xmm4\0Amovups ($5), %xmm5\0Amovups ($6), %xmm6\0Amovups ($7), %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm9\0Aaddps %xmm1, %xmm8\0Asubps %xmm1, %xmm9\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm11\0Aaddps %xmm3, %xmm10\0Asubps %xmm3, %xmm11\0Amovaps %xmm4, %xmm12\0Amovaps %xmm4, %xmm13\0Aaddps %xmm5, %xmm12\0Asubps %xmm5, %xmm13\0Amovaps %xmm6, %xmm14\0Amovaps %xmm6, %xmm15\0Aaddps %xmm7, %xmm14\0Asubps %xmm7, %xmm15\0Amovaps %xmm8, %xmm0\0Amovaps %xmm8, %xmm2\0Aaddps %xmm10, %xmm0\0Asubps %xmm10, %xmm2\0Amovaps %xmm9, %xmm1\0Amovaps %xmm9, %xmm3\0Aaddps %xmm11, %xmm1\0Asubps %xmm11, %xmm3\0Amovaps %xmm12, %xmm4\0Amovaps %xmm12, %xmm6\0Aaddps %xmm14, %xmm4\0Asubps %xmm14, %xmm6\0Amovaps %xmm13, %xmm5\0Amovaps %xmm13, %xmm7\0Aaddps %xmm15, %xmm5\0Asubps %xmm15, %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm12\0Aaddps %xmm4, %xmm8\0Asubps %xmm4, %xmm12\0Amovaps %xmm1, %xmm9\0Amovaps %xmm1, %xmm13\0Aaddps %xmm5, %xmm9\0Asubps %xmm5, %xmm13\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm14\0Aaddps %xmm6, %xmm10\0Asubps %xmm6, %xmm14\0Amovaps %xmm3, %xmm11\0Amovaps %xmm3, %xmm15\0Aaddps %xmm7, %xmm11\0Asubps %xmm7, %xmm15\0Amovups %xmm8, ($0)\0Amovups %xmm9, ($1)\0Amovups %xmm10, ($2)\0Amovups %xmm11, ($3)\0Amovups %xmm12, ($4)\0Amovups %xmm13, ($5)\0Amovups %xmm14, ($6)\0Amovups %xmm15, ($7)\0A", "r,r,r,r,r,r,r,r,~{xmm0},~{xmm1},~{xmm2},~{xmm3},~{xmm4},~{xmm5},~{xmm6},~{xmm7},~{xmm8},~{xmm9},~{xmm10},~{xmm11},~{xmm12},~{xmm13},~{xmm14},~{xmm15},~{memory},~{dirflag},~{fpsr},~{flags}"(float* %213, float* %214, float* %215, float* %216, float* %217, float* %218, float* %219, float* %220)
%221 = add nuw nsw i64 %212, 4
%222 = icmp ult i64 %212, 4194300
br i1 %222, label %211, label %243
223: ; preds = %2
tail call void @helper_float_28_recursive(float* %0, i32 25)
%224 = getelementptr inbounds float, float* %0, i64 33554432
tail call void @helper_float_28_recursive(float* %224, i32 25)
%225 = getelementptr inbounds float, float* %0, i64 67108864
tail call void @helper_float_28_recursive(float* %225, i32 25)
%226 = getelementptr inbounds float, float* %0, i64 100663296
tail call void @helper_float_28_recursive(float* %226, i32 25)
%227 = getelementptr inbounds float, float* %0, i64 134217728
tail call void @helper_float_28_recursive(float* %227, i32 25)
%228 = getelementptr inbounds float, float* %0, i64 167772160
tail call void @helper_float_28_recursive(float* %228, i32 25)
%229 = getelementptr inbounds float, float* %0, i64 201326592
tail call void @helper_float_28_recursive(float* %229, i32 25)
%230 = getelementptr inbounds float, float* %0, i64 234881024
tail call void @helper_float_28_recursive(float* %230, i32 25)
br label %231
231: ; preds = %223, %231
%232 = phi i64 [ 0, %223 ], [ %241, %231 ]
%233 = getelementptr inbounds float, float* %0, i64 %232
%234 = getelementptr inbounds float, float* %233, i64 33554432
%235 = getelementptr inbounds float, float* %233, i64 67108864
%236 = getelementptr inbounds float, float* %233, i64 100663296
%237 = getelementptr inbounds float, float* %233, i64 134217728
%238 = getelementptr inbounds float, float* %233, i64 167772160
%239 = getelementptr inbounds float, float* %233, i64 201326592
%240 = getelementptr inbounds float, float* %233, i64 234881024
tail call void asm sideeffect "movups ($0), %xmm0\0Amovups ($1), %xmm1\0Amovups ($2), %xmm2\0Amovups ($3), %xmm3\0Amovups ($4), %xmm4\0Amovups ($5), %xmm5\0Amovups ($6), %xmm6\0Amovups ($7), %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm9\0Aaddps %xmm1, %xmm8\0Asubps %xmm1, %xmm9\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm11\0Aaddps %xmm3, %xmm10\0Asubps %xmm3, %xmm11\0Amovaps %xmm4, %xmm12\0Amovaps %xmm4, %xmm13\0Aaddps %xmm5, %xmm12\0Asubps %xmm5, %xmm13\0Amovaps %xmm6, %xmm14\0Amovaps %xmm6, %xmm15\0Aaddps %xmm7, %xmm14\0Asubps %xmm7, %xmm15\0Amovaps %xmm8, %xmm0\0Amovaps %xmm8, %xmm2\0Aaddps %xmm10, %xmm0\0Asubps %xmm10, %xmm2\0Amovaps %xmm9, %xmm1\0Amovaps %xmm9, %xmm3\0Aaddps %xmm11, %xmm1\0Asubps %xmm11, %xmm3\0Amovaps %xmm12, %xmm4\0Amovaps %xmm12, %xmm6\0Aaddps %xmm14, %xmm4\0Asubps %xmm14, %xmm6\0Amovaps %xmm13, %xmm5\0Amovaps %xmm13, %xmm7\0Aaddps %xmm15, %xmm5\0Asubps %xmm15, %xmm7\0Amovaps %xmm0, %xmm8\0Amovaps %xmm0, %xmm12\0Aaddps %xmm4, %xmm8\0Asubps %xmm4, %xmm12\0Amovaps %xmm1, %xmm9\0Amovaps %xmm1, %xmm13\0Aaddps %xmm5, %xmm9\0Asubps %xmm5, %xmm13\0Amovaps %xmm2, %xmm10\0Amovaps %xmm2, %xmm14\0Aaddps %xmm6, %xmm10\0Asubps %xmm6, %xmm14\0Amovaps %xmm3, %xmm11\0Amovaps %xmm3, %xmm15\0Aaddps %xmm7, %xmm11\0Asubps %xmm7, %xmm15\0Amovups %xmm8, ($0)\0Amovups %xmm9, ($1)\0Amovups %xmm10, ($2)\0Amovups %xmm11, ($3)\0Amovups %xmm12, ($4)\0Amovups %xmm13, ($5)\0Amovups %xmm14, ($6)\0Amovups %xmm15, ($7)\0A", "r,r,r,r,r,r,r,r,~{xmm0},~{xmm1},~{xmm2},~{xmm3},~{xmm4},~{xmm5},~{xmm6},~{xmm7},~{xmm8},~{xmm9},~{xmm10},~{xmm11},~{xmm12},~{xmm13},~{xmm14},~{xmm15},~{memory},~{dirflag},~{fpsr},~{flags}"(float* %233, float* %234, float* %235, float* %236, float* %237, float* %238, float* %239, float* %240)
%241 = add nuw nsw i64 %232, 4
%242 = icmp ult i64 %232, 33554428
br i1 %242, label %231, label %243
243: ; preds = %231, %211, %191, %171, %155, %2
ret void
}