int btp_frame_parseadd_operator(const char **input, struct btp_strbuf *target) {
  const char *local_input = *input;
  if (0 == btp_skip_string(&local_input, "operator"))
    return 0;
  if (0 < btp_skip_string(&local_input, ">>=")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, ">>=");
    int length = local_input - *input;
    *input = local_input;
    return length;
  }
  if (0 < btp_skip_string(&local_input, ">>")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, ">>");
    int length = local_input - *input;
    *input = local_input;
    return length;
  }
  if (0 < btp_skip_string(&local_input, ">=")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, ">=");
    int length = local_input - *input;
    *input = local_input;
    return length;
  }
  if (0 < btp_skip_string(&local_input, ">")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, ">");
    int length = local_input - *input;
    *input = local_input;
    return length;
  };
  if (0 < btp_skip_string(&local_input, "<<=")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "<<=");
    int length = local_input - *input;
    *input = local_input;
    return length;
  }
  if (0 < btp_skip_string(&local_input, "<<")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "<<");
    int length = local_input - *input;
    *input = local_input;
    return length;
  }
  if (0 < btp_skip_string(&local_input, "<=")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "<=");
    int length = local_input - *input;
    *input = local_input;
    return length;
  }
  if (0 < btp_skip_string(&local_input, "<")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "<");
    int length = local_input - *input;
    *input = local_input;
    return length;
  };
  if (0 < btp_skip_string(&local_input, "->*")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "->*");
    int length = local_input - *input;
    *input = local_input;
    return length;
  }
  if (0 < btp_skip_string(&local_input, "->")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "->");
    int length = local_input - *input;
    *input = local_input;
    return length;
  }
  if (0 < btp_skip_string(&local_input, "-")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "-");
    int length = local_input - *input;
    *input = local_input;
    return length;
  };
  if (0 < btp_skip_string(&local_input, "==")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "==");
    int length = local_input - *input;
    *input = local_input;
    return length;
  }
  if (0 < btp_skip_string(&local_input, "=")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "=");
    int length = local_input - *input;
    *input = local_input;
    return length;
  };
  if (0 < btp_skip_string(&local_input, "&&")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "&&");
    int length = local_input - *input;
    *input = local_input;
    return length;
  }
  if (0 < btp_skip_string(&local_input, "&=")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "&=");
    int length = local_input - *input;
    *input = local_input;
    return length;
  }
  if (0 < btp_skip_string(&local_input, "&")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "&");
    int length = local_input - *input;
    *input = local_input;
    return length;
  };
  if (0 < btp_skip_string(&local_input, "||")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "||");
    int length = local_input - *input;
    *input = local_input;
    return length;
  }
  if (0 < btp_skip_string(&local_input, "|=")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "|=");
    int length = local_input - *input;
    *input = local_input;
    return length;
  }
  if (0 < btp_skip_string(&local_input, "|")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "|");
    int length = local_input - *input;
    *input = local_input;
    return length;
  };
  if (0 < btp_skip_string(&local_input, "++")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "++");
    int length = local_input - *input;
    *input = local_input;
    return length;
  }
  if (0 < btp_skip_string(&local_input, "+=")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "+=");
    int length = local_input - *input;
    *input = local_input;
    return length;
  }
  if (0 < btp_skip_string(&local_input, "+")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "+");
    int length = local_input - *input;
    *input = local_input;
    return length;
  };
  if (0 < btp_skip_string(&local_input, "--")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "--");
    int length = local_input - *input;
    *input = local_input;
    return length;
  }
  if (0 < btp_skip_string(&local_input, "-=")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "-=");
    int length = local_input - *input;
    *input = local_input;
    return length;
  }
  if (0 < btp_skip_string(&local_input, "-")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "-");
    int length = local_input - *input;
    *input = local_input;
    return length;
  };
  if (0 < btp_skip_string(&local_input, "/=")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "/=");
    int length = local_input - *input;
    *input = local_input;
    return length;
  }
  if (0 < btp_skip_string(&local_input, "/")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "/");
    int length = local_input - *input;
    *input = local_input;
    return length;
  };
  if (0 < btp_skip_string(&local_input, "*=")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "*=");
    int length = local_input - *input;
    *input = local_input;
    return length;
  }
  if (0 < btp_skip_string(&local_input, "*")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "*");
    int length = local_input - *input;
    *input = local_input;
    return length;
  };
  if (0 < btp_skip_string(&local_input, "%=")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "%=");
    int length = local_input - *input;
    *input = local_input;
    return length;
  }
  if (0 < btp_skip_string(&local_input, "%")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "%");
    int length = local_input - *input;
    *input = local_input;
    return length;
  };
  if (0 < btp_skip_string(&local_input, "!=")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "!=");
    int length = local_input - *input;
    *input = local_input;
    return length;
  }
  if (0 < btp_skip_string(&local_input, "!")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "!");
    int length = local_input - *input;
    *input = local_input;
    return length;
  };
  if (0 < btp_skip_string(&local_input, "~")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "~");
    int length = local_input - *input;
    *input = local_input;
    return length;
  };
  if (0 < btp_skip_string(&local_input, "()")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "()");
    int length = local_input - *input;
    *input = local_input;
    return length;
  };
  if (0 < btp_skip_string(&local_input, "[]")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "[]");
    int length = local_input - *input;
    *input = local_input;
    return length;
  };
  if (0 < btp_skip_string(&local_input, ",")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, ",");
    int length = local_input - *input;
    *input = local_input;
    return length;
  };
  if (0 < btp_skip_string(&local_input, "^=")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "^=");
    int length = local_input - *input;
    *input = local_input;
    return length;
  }
  if (0 < btp_skip_string(&local_input, "^")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, "^");
    int length = local_input - *input;
    *input = local_input;
    return length;
  };
  if (0 < btp_skip_string(&local_input, " new[]")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, " new[]");
    int length = local_input - *input;
    *input = local_input;
    return length;
  }
  if (0 < btp_skip_string(&local_input, " new")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, " new");
    int length = local_input - *input;
    *input = local_input;
    return length;
  };
  if (0 < btp_skip_string(&local_input, " delete[]")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, " delete[]");
    int length = local_input - *input;
    *input = local_input;
    return length;
  }
  if (0 < btp_skip_string(&local_input, " delete")) {
    btp_strbuf_append_str(target, "operator");
    btp_strbuf_append_str(target, " delete");
    int length = local_input - *input;
    *input = local_input;
    return length;
  };
  return 0;
}


x86 assembly (clang, -O0):
<btp_frame_parseadd_operator>:
push   %rbp
mov    %rsp,%rbp
sub    $0xd0,%rsp
mov    %rdi,-0x10(%rbp)
mov    %rsi,-0x18(%rbp)
mov    -0x10(%rbp),%rax
mov    (%rax),%rax
mov    %rax,-0x20(%rbp)
lea    -0x20(%rbp),%rdi
lea    0x1eb7(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jne    1168 <btp_frame_parseadd_operator+0x48>
movl   $0x0,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x1e96(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    11d1 <btp_frame_parseadd_operator+0xb1>
mov    -0x18(%rbp),%rdi
lea    0x1e6f(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x1e66(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0x24(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x24(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x1e31(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    123a <btp_frame_parseadd_operator+0x11a>
mov    -0x18(%rbp),%rdi
lea    0x1e06(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x1e01(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0x28(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x28(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x1dc5(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    12a3 <btp_frame_parseadd_operator+0x183>
mov    -0x18(%rbp),%rdi
lea    0x1d9d(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x1d95(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0x2c(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x2c(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x1d6e(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    130c <btp_frame_parseadd_operator+0x1ec>
mov    -0x18(%rbp),%rdi
lea    0x1d34(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x1d3e(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0x30(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x30(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x1cf9(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    1375 <btp_frame_parseadd_operator+0x255>
mov    -0x18(%rbp),%rdi
lea    0x1ccb(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x1cc9(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0x34(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x34(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x1c94(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    13de <btp_frame_parseadd_operator+0x2be>
mov    -0x18(%rbp),%rdi
lea    0x1c62(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x1c64(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0x38(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x38(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x1c28(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    1447 <btp_frame_parseadd_operator+0x327>
mov    -0x18(%rbp),%rdi
lea    0x1bf9(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x1bf8(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0x3c(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x3c(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x1bc3(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    14b0 <btp_frame_parseadd_operator+0x390>
mov    -0x18(%rbp),%rdi
lea    0x1b90(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x1b93(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0x40(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x40(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x1b5c(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    1519 <btp_frame_parseadd_operator+0x3f9>
mov    -0x18(%rbp),%rdi
lea    0x1b27(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x1b2c(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0x44(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x44(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x1af7(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    1582 <btp_frame_parseadd_operator+0x462>
mov    -0x18(%rbp),%rdi
lea    0x1abe(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x1ac7(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0x48(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x48(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x1aa7(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    15eb <btp_frame_parseadd_operator+0x4cb>
mov    -0x18(%rbp),%rdi
lea    0x1a55(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x1a77(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0x4c(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x4c(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x1a28(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    1654 <btp_frame_parseadd_operator+0x534>
mov    -0x18(%rbp),%rdi
lea    0x19ec(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x19f8(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0x50(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x50(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x19e8(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    16bd <btp_frame_parseadd_operator+0x59d>
mov    -0x18(%rbp),%rdi
lea    0x1983(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x19b8(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0x54(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x54(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x1959(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    1726 <btp_frame_parseadd_operator+0x606>
mov    -0x18(%rbp),%rdi
lea    0x191a(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x1929(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0x58(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x58(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x18f3(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    178f <btp_frame_parseadd_operator+0x66f>
mov    -0x18(%rbp),%rdi
lea    0x18b1(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x18c3(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0x5c(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x5c(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x1888(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    17f8 <btp_frame_parseadd_operator+0x6d8>
mov    -0x18(%rbp),%rdi
lea    0x1848(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x1858(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0x60(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x60(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x1824(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    1861 <btp_frame_parseadd_operator+0x741>
mov    -0x18(%rbp),%rdi
lea    0x17df(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x17f4(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0x64(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x64(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x17be(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    18ca <btp_frame_parseadd_operator+0x7aa>
mov    -0x18(%rbp),%rdi
lea    0x1776(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x178e(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0x68(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x68(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x1753(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    1933 <btp_frame_parseadd_operator+0x813>
mov    -0x18(%rbp),%rdi
lea    0x170d(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x1723(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0x6c(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x6c(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x16ef(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    199c <btp_frame_parseadd_operator+0x87c>
mov    -0x18(%rbp),%rdi
lea    0x16a4(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x16bf(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0x70(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x70(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x1689(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    1a05 <btp_frame_parseadd_operator+0x8e5>
mov    -0x18(%rbp),%rdi
lea    0x163b(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x1659(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0x74(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x74(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x161e(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    1a6e <btp_frame_parseadd_operator+0x94e>
mov    -0x18(%rbp),%rdi
lea    0x15d2(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x15ee(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0x78(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x78(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x15ba(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    1ad7 <btp_frame_parseadd_operator+0x9b7>
mov    -0x18(%rbp),%rdi
lea    0x1569(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x158a(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0x7c(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x7c(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x1554(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    1b40 <btp_frame_parseadd_operator+0xa20>
mov    -0x18(%rbp),%rdi
lea    0x1500(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x1524(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0x80(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x80(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x14e9(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    1baf <btp_frame_parseadd_operator+0xa8f>
mov    -0x18(%rbp),%rdi
lea    0x1497(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x14b9(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0x84(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x84(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x147f(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    1c1e <btp_frame_parseadd_operator+0xafe>
mov    -0x18(%rbp),%rdi
lea    0x1428(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x144f(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0x88(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x88(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x1413(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    1c8d <btp_frame_parseadd_operator+0xb6d>
mov    -0x18(%rbp),%rdi
lea    0x13b9(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x13e3(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0x8c(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x8c(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x13a6(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    1cfc <btp_frame_parseadd_operator+0xbdc>
mov    -0x18(%rbp),%rdi
lea    0x134a(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x1376(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0x90(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x90(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x1312(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    1d6b <btp_frame_parseadd_operator+0xc4b>
mov    -0x18(%rbp),%rdi
lea    0x12db(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x12e2(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0x94(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x94(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x12cb(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    1dda <btp_frame_parseadd_operator+0xcba>
mov    -0x18(%rbp),%rdi
lea    0x126c(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x129b(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0x98(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x98(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x125f(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    1e49 <btp_frame_parseadd_operator+0xd29>
mov    -0x18(%rbp),%rdi
lea    0x11fd(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x122f(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0x9c(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0x9c(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x11f2(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    1eb8 <btp_frame_parseadd_operator+0xd98>
mov    -0x18(%rbp),%rdi
lea    0x118e(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x11c2(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0xa0(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0xa0(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x1186(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    1f27 <btp_frame_parseadd_operator+0xe07>
mov    -0x18(%rbp),%rdi
lea    0x111f(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x1156(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0xa4(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0xa4(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x1119(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    1f96 <btp_frame_parseadd_operator+0xe76>
mov    -0x18(%rbp),%rdi
lea    0x10b0(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x10e9(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0xa8(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0xa8(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x10ac(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    2005 <btp_frame_parseadd_operator+0xee5>
mov    -0x18(%rbp),%rdi
lea    0x1041(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x107c(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0xac(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0xac(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0x105a(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    2074 <btp_frame_parseadd_operator+0xf54>
mov    -0x18(%rbp),%rdi
lea    0xfd2(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0x102a(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0xb0(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0xb0(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0xfd1(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    20e3 <btp_frame_parseadd_operator+0xfc3>
mov    -0x18(%rbp),%rdi
lea    0xf63(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0xfa1(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0xb4(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0xb4(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0xf64(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    2152 <btp_frame_parseadd_operator+0x1032>
mov    -0x18(%rbp),%rdi
lea    0xef4(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0xf34(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0xb8(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0xb8(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0xef8(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    21c1 <btp_frame_parseadd_operator+0x10a1>
mov    -0x18(%rbp),%rdi
lea    0xe85(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0xec8(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0xbc(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0xbc(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0xe8b(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    2230 <btp_frame_parseadd_operator+0x1110>
mov    -0x18(%rbp),%rdi
lea    0xe16(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0xe5b(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0xc0(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0xc0(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0xe23(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    229f <btp_frame_parseadd_operator+0x117f>
mov    -0x18(%rbp),%rdi
lea    0xda7(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0xdf3(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0xc4(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0xc4(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0xdb9(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    230e <btp_frame_parseadd_operator+0x11ee>
mov    -0x18(%rbp),%rdi
lea    0xd38(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0xd89(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0xc8(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0xc8(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
lea    -0x20(%rbp),%rdi
lea    0xd54(%rip),%rsi
mov    $0x0,%al
call   1030 <btp_skip_string@plt>
mov    %eax,%ecx
xor    %eax,%eax
cmp    %ecx,%eax
jge    237d <btp_frame_parseadd_operator+0x125d>
mov    -0x18(%rbp),%rdi
lea    0xcc9(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x18(%rbp),%rdi
lea    0xd24(%rip),%rsi
mov    $0x0,%al
call   1040 <btp_strbuf_append_str@plt>
mov    -0x20(%rbp),%rax
mov    -0x10(%rbp),%rcx
mov    (%rcx),%rcx
sub    %rcx,%rax
mov    %eax,-0xcc(%rbp)
mov    -0x20(%rbp),%rcx
mov    -0x10(%rbp),%rax
mov    %rcx,(%rax)
mov    -0xcc(%rbp),%eax
mov    %eax,-0x4(%rbp)
jmp    2384 <btp_frame_parseadd_operator+0x1264>
movl   $0x0,-0x4(%rbp)
mov    -0x4(%rbp),%eax
add    $0xd0,%rsp
pop    %rbp
ret

x86 assembly (clang, -O2):
<btp_frame_parseadd_operator>:
push   %rbp
push   %r15
push   %r14
push   %rbx
push   %rax
mov    %rsi,%r14
mov    %rdi,%rbx
mov    (%rdi),%rax
mov    %rax,(%rsp)
lea    0xec5(%rip),%rsi
xor    %ebp,%ebp
mov    %rsp,%rdi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
je     1618 <btp_frame_parseadd_operator+0x4f8>
lea    0xeb3(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xe9b(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xe7c(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xe72(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xe4a(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xe32(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xe13(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xdfb(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xde1(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xdc9(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xdc6(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xd94(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xda1(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xd5f(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xd46(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xd28(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xd11(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xcf8(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xcda(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xcc3(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xcaa(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xc8c(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xc75(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xc5c(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xc3e(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xc27(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xc0e(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xbf4(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xbb3(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xbbf(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xba6(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xb8c(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xb73(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xb59(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xb3f(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xb40(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xb0a(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xaf0(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xadb(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xac5(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xab4(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xaa1(%rip),%r15
xor    %ebp,%ebp
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jg     15ed <btp_frame_parseadd_operator+0x4cd>
lea    0xa91(%rip),%r15
mov    %rsp,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1030 <btp_skip_string@plt>
test   %eax,%eax
jle    1618 <btp_frame_parseadd_operator+0x4f8>
lea    0xa0c(%rip),%rsi
mov    %r14,%rdi
xor    %eax,%eax
call   1040 <btp_strbuf_append_str@plt>
mov    %r14,%rdi
mov    %r15,%rsi
xor    %eax,%eax
call   1040 <btp_strbuf_append_str@plt>
mov    (%rsp),%rax
mov    (%rbx),%ecx
mov    %rax,(%rbx)
mov    %eax,%ebp
sub    %ecx,%ebp
mov    %ebp,%eax
add    $0x8,%rsp
pop    %rbx
pop    %r14
pop    %r15
pop    %rbp
ret

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

LLVM IR (-O2):
%struct.btp_strbuf = type opaque
@.str = [9 x i8] c"operator\00"
@.str.1 = [4 x i8] c">>=\00"
@.str.2 = [3 x i8] c">>\00"
@.str.3 = [3 x i8] c">=\00"
@.str.4 = [2 x i8] c">\00"
@.str.5 = [4 x i8] c"<<=\00"
@.str.6 = [3 x i8] c"<<\00"
@.str.7 = [3 x i8] c"<=\00"
@.str.8 = [2 x i8] c"<\00"
@.str.9 = [4 x i8] c"->*\00"
@.str.10 = [3 x i8] c"->\00"
@.str.11 = [2 x i8] c"-\00"
@.str.12 = [3 x i8] c"==\00"
@.str.13 = [2 x i8] c"=\00"
@.str.14 = [3 x i8] c"&&\00"
@.str.15 = [3 x i8] c"&=\00"
@.str.16 = [2 x i8] c"&\00"
@.str.17 = [3 x i8] c"||\00"
@.str.18 = [3 x i8] c"|=\00"
@.str.19 = [2 x i8] c"|\00"
@.str.20 = [3 x i8] c"++\00"
@.str.21 = [3 x i8] c"+=\00"
@.str.22 = [2 x i8] c"+\00"
@.str.23 = [3 x i8] c"--\00"
@.str.24 = [3 x i8] c"-=\00"
@.str.25 = [3 x i8] c"/=\00"
@.str.26 = [2 x i8] c"/\00"
@.str.27 = [3 x i8] c"*=\00"
@.str.28 = [2 x i8] c"*\00"
@.str.29 = [3 x i8] c"%=\00"
@.str.30 = [2 x i8] c"%\00"
@.str.31 = [3 x i8] c"!=\00"
@.str.32 = [2 x i8] c"!\00"
@.str.33 = [2 x i8] c"~\00"
@.str.34 = [3 x i8] c"()\00"
@.str.35 = [3 x i8] c"[]\00"
@.str.36 = [2 x i8] c",\00"
@.str.37 = [3 x i8] c"^=\00"
@.str.38 = [2 x i8] c"^\00"
@.str.39 = [7 x i8] c" new[]\00"
@.str.40 = [5 x i8] c" new\00"
@.str.41 = [10 x i8] c" delete[]\00"
@.str.42 = [8 x i8] c" delete\00"
define i32 @btp_frame_parseadd_operator(i8** %0, %struct.btp_strbuf* %1) {
%3 = alloca i8*
%4 = bitcast i8** %3 to i8*
%5 = load i8*, i8** %0
store i8* %5, i8** %3
%6 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str, i64 0, i64 0))
%7 = icmp eq i32 %6, 0
br i1 %7, label %147, label %8
8: ; preds = %2
%9 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.1, i64 0, i64 0))
%10 = icmp sgt i32 %9, 0
br i1 %10, label %137, label %11
11: ; preds = %8
%12 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.2, i64 0, i64 0))
%13 = icmp sgt i32 %12, 0
br i1 %13, label %137, label %14
14: ; preds = %11
%15 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.3, i64 0, i64 0))
%16 = icmp sgt i32 %15, 0
br i1 %16, label %137, label %17
17: ; preds = %14
%18 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0))
%19 = icmp sgt i32 %18, 0
br i1 %19, label %137, label %20
20: ; preds = %17
%21 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.5, i64 0, i64 0))
%22 = icmp sgt i32 %21, 0
br i1 %22, label %137, label %23
23: ; preds = %20
%24 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.6, i64 0, i64 0))
%25 = icmp sgt i32 %24, 0
br i1 %25, label %137, label %26
26: ; preds = %23
%27 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.7, i64 0, i64 0))
%28 = icmp sgt i32 %27, 0
br i1 %28, label %137, label %29
29: ; preds = %26
%30 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.8, i64 0, i64 0))
%31 = icmp sgt i32 %30, 0
br i1 %31, label %137, label %32
32: ; preds = %29
%33 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.9, i64 0, i64 0))
%34 = icmp sgt i32 %33, 0
br i1 %34, label %137, label %35
35: ; preds = %32
%36 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.10, i64 0, i64 0))
%37 = icmp sgt i32 %36, 0
br i1 %37, label %137, label %38
38: ; preds = %35
%39 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.11, i64 0, i64 0))
%40 = icmp sgt i32 %39, 0
br i1 %40, label %137, label %41
41: ; preds = %38
%42 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.12, i64 0, i64 0))
%43 = icmp sgt i32 %42, 0
br i1 %43, label %137, label %44
44: ; preds = %41
%45 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.13, i64 0, i64 0))
%46 = icmp sgt i32 %45, 0
br i1 %46, label %137, label %47
47: ; preds = %44
%48 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.14, i64 0, i64 0))
%49 = icmp sgt i32 %48, 0
br i1 %49, label %137, label %50
50: ; preds = %47
%51 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.15, i64 0, i64 0))
%52 = icmp sgt i32 %51, 0
br i1 %52, label %137, label %53
53: ; preds = %50
%54 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.16, i64 0, i64 0))
%55 = icmp sgt i32 %54, 0
br i1 %55, label %137, label %56
56: ; preds = %53
%57 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.17, i64 0, i64 0))
%58 = icmp sgt i32 %57, 0
br i1 %58, label %137, label %59
59: ; preds = %56
%60 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.18, i64 0, i64 0))
%61 = icmp sgt i32 %60, 0
br i1 %61, label %137, label %62
62: ; preds = %59
%63 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.19, i64 0, i64 0))
%64 = icmp sgt i32 %63, 0
br i1 %64, label %137, label %65
65: ; preds = %62
%66 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.20, i64 0, i64 0))
%67 = icmp sgt i32 %66, 0
br i1 %67, label %137, label %68
68: ; preds = %65
%69 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.21, i64 0, i64 0))
%70 = icmp sgt i32 %69, 0
br i1 %70, label %137, label %71
71: ; preds = %68
%72 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.22, i64 0, i64 0))
%73 = icmp sgt i32 %72, 0
br i1 %73, label %137, label %74
74: ; preds = %71
%75 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.23, i64 0, i64 0))
%76 = icmp sgt i32 %75, 0
br i1 %76, label %137, label %77
77: ; preds = %74
%78 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.24, i64 0, i64 0))
%79 = icmp sgt i32 %78, 0
br i1 %79, label %137, label %80
80: ; preds = %77
%81 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.11, i64 0, i64 0))
%82 = icmp sgt i32 %81, 0
br i1 %82, label %137, label %83
83: ; preds = %80
%84 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.25, i64 0, i64 0))
%85 = icmp sgt i32 %84, 0
br i1 %85, label %137, label %86
86: ; preds = %83
%87 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.26, i64 0, i64 0))
%88 = icmp sgt i32 %87, 0
br i1 %88, label %137, label %89
89: ; preds = %86
%90 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.27, i64 0, i64 0))
%91 = icmp sgt i32 %90, 0
br i1 %91, label %137, label %92
92: ; preds = %89
%93 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.28, i64 0, i64 0))
%94 = icmp sgt i32 %93, 0
br i1 %94, label %137, label %95
95: ; preds = %92
%96 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.29, i64 0, i64 0))
%97 = icmp sgt i32 %96, 0
br i1 %97, label %137, label %98
98: ; preds = %95
%99 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.30, i64 0, i64 0))
%100 = icmp sgt i32 %99, 0
br i1 %100, label %137, label %101
101: ; preds = %98
%102 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.31, i64 0, i64 0))
%103 = icmp sgt i32 %102, 0
br i1 %103, label %137, label %104
104: ; preds = %101
%105 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.32, i64 0, i64 0))
%106 = icmp sgt i32 %105, 0
br i1 %106, label %137, label %107
107: ; preds = %104
%108 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.33, i64 0, i64 0))
%109 = icmp sgt i32 %108, 0
br i1 %109, label %137, label %110
110: ; preds = %107
%111 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.34, i64 0, i64 0))
%112 = icmp sgt i32 %111, 0
br i1 %112, label %137, label %113
113: ; preds = %110
%114 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.35, i64 0, i64 0))
%115 = icmp sgt i32 %114, 0
br i1 %115, label %137, label %116
116: ; preds = %113
%117 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.36, i64 0, i64 0))
%118 = icmp sgt i32 %117, 0
br i1 %118, label %137, label %119
119: ; preds = %116
%120 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.37, i64 0, i64 0))
%121 = icmp sgt i32 %120, 0
br i1 %121, label %137, label %122
122: ; preds = %119
%123 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @.str.38, i64 0, i64 0))
%124 = icmp sgt i32 %123, 0
br i1 %124, label %137, label %125
125: ; preds = %122
%126 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.39, i64 0, i64 0))
%127 = icmp sgt i32 %126, 0
br i1 %127, label %137, label %128
128: ; preds = %125
%129 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.40, i64 0, i64 0))
%130 = icmp sgt i32 %129, 0
br i1 %130, label %137, label %131
131: ; preds = %128
%132 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.41, i64 0, i64 0))
%133 = icmp sgt i32 %132, 0
br i1 %133, label %137, label %134
134: ; preds = %131
%135 = call i32 (i8**, i8*, ...) bitcast (i32 (...)* @btp_skip_string to i32 (i8**, i8*, ...)*)(i8** %3, i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.42, i64 0, i64 0))
%136 = icmp sgt i32 %135, 0
br i1 %136, label %137, label %147
137: ; preds = %134, %131, %128, %125, %122, %119, %116, %113, %110, %107, %104, %101, %98, %95, %92, %89, %86, %83, %80, %77, %74, %71, %68, %65, %62, %59, %56, %53, %50, %47, %44, %41, %38, %35, %32, %29, %26, %23, %20, %17, %14, %11, %8
%138 = phi i8* [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.1, i64 0, i64 0), %8 ], [ getelementptr inbounds ([3 x i8], [3 x i8]* @.str.2, i64 0, i64 0), %11 ], [ getelementptr inbounds ([3 x i8], [3 x i8]* @.str.3, i64 0, i64 0), %14 ], [ getelementptr inbounds ([2 x i8], [2 x i8]* @.str.4, i64 0, i64 0), %17 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.5, i64 0, i64 0), %20 ], [ getelementptr inbounds ([3 x i8], [3 x i8]* @.str.6, i64 0, i64 0), %23 ], [ getelementptr inbounds ([3 x i8], [3 x i8]* @.str.7, i64 0, i64 0), %26 ], [ getelementptr inbounds ([2 x i8], [2 x i8]* @.str.8, i64 0, i64 0), %29 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str.9, i64 0, i64 0), %32 ], [ getelementptr inbounds ([3 x i8], [3 x i8]* @.str.10, i64 0, i64 0), %35 ], [ getelementptr inbounds ([2 x i8], [2 x i8]* @.str.11, i64 0, i64 0), %38 ], [ getelementptr inbounds ([3 x i8], [3 x i8]* @.str.12, i64 0, i64 0), %41 ], [ getelementptr inbounds ([2 x i8], [2 x i8]* @.str.13, i64 0, i64 0), %44 ], [ getelementptr inbounds ([3 x i8], [3 x i8]* @.str.14, i64 0, i64 0), %47 ], [ getelementptr inbounds ([3 x i8], [3 x i8]* @.str.15, i64 0, i64 0), %50 ], [ getelementptr inbounds ([2 x i8], [2 x i8]* @.str.16, i64 0, i64 0), %53 ], [ getelementptr inbounds ([3 x i8], [3 x i8]* @.str.17, i64 0, i64 0), %56 ], [ getelementptr inbounds ([3 x i8], [3 x i8]* @.str.18, i64 0, i64 0), %59 ], [ getelementptr inbounds ([2 x i8], [2 x i8]* @.str.19, i64 0, i64 0), %62 ], [ getelementptr inbounds ([3 x i8], [3 x i8]* @.str.20, i64 0, i64 0), %65 ], [ getelementptr inbounds ([3 x i8], [3 x i8]* @.str.21, i64 0, i64 0), %68 ], [ getelementptr inbounds ([2 x i8], [2 x i8]* @.str.22, i64 0, i64 0), %71 ], [ getelementptr inbounds ([3 x i8], [3 x i8]* @.str.23, i64 0, i64 0), %74 ], [ getelementptr inbounds ([3 x i8], [3 x i8]* @.str.24, i64 0, i64 0), %77 ], [ getelementptr inbounds ([2 x i8], [2 x i8]* @.str.11, i64 0, i64 0), %80 ], [ getelementptr inbounds ([3 x i8], [3 x i8]* @.str.25, i64 0, i64 0), %83 ], [ getelementptr inbounds ([2 x i8], [2 x i8]* @.str.26, i64 0, i64 0), %86 ], [ getelementptr inbounds ([3 x i8], [3 x i8]* @.str.27, i64 0, i64 0), %89 ], [ getelementptr inbounds ([2 x i8], [2 x i8]* @.str.28, i64 0, i64 0), %92 ], [ getelementptr inbounds ([3 x i8], [3 x i8]* @.str.29, i64 0, i64 0), %95 ], [ getelementptr inbounds ([2 x i8], [2 x i8]* @.str.30, i64 0, i64 0), %98 ], [ getelementptr inbounds ([3 x i8], [3 x i8]* @.str.31, i64 0, i64 0), %101 ], [ getelementptr inbounds ([2 x i8], [2 x i8]* @.str.32, i64 0, i64 0), %104 ], [ getelementptr inbounds ([2 x i8], [2 x i8]* @.str.33, i64 0, i64 0), %107 ], [ getelementptr inbounds ([3 x i8], [3 x i8]* @.str.34, i64 0, i64 0), %110 ], [ getelementptr inbounds ([3 x i8], [3 x i8]* @.str.35, i64 0, i64 0), %113 ], [ getelementptr inbounds ([2 x i8], [2 x i8]* @.str.36, i64 0, i64 0), %116 ], [ getelementptr inbounds ([3 x i8], [3 x i8]* @.str.37, i64 0, i64 0), %119 ], [ getelementptr inbounds ([2 x i8], [2 x i8]* @.str.38, i64 0, i64 0), %122 ], [ getelementptr inbounds ([7 x i8], [7 x i8]* @.str.39, i64 0, i64 0), %125 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.40, i64 0, i64 0), %128 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.41, i64 0, i64 0), %131 ], [ getelementptr inbounds ([8 x i8], [8 x i8]* @.str.42, i64 0, i64 0), %134 ]
%139 = call i32 (%struct.btp_strbuf*, i8*, ...) bitcast (i32 (...)* @btp_strbuf_append_str to i32 (%struct.btp_strbuf*, i8*, ...)*)(%struct.btp_strbuf* %1, i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str, i64 0, i64 0))
%140 = call i32 (%struct.btp_strbuf*, i8*, ...) bitcast (i32 (...)* @btp_strbuf_append_str to i32 (%struct.btp_strbuf*, i8*, ...)*)(%struct.btp_strbuf* %1, i8* %138)
%141 = load i8*, i8** %3
%142 = load i8*, i8** %0
%143 = ptrtoint i8* %141 to i64
%144 = ptrtoint i8* %142 to i64
%145 = sub i64 %143, %144
%146 = trunc i64 %145 to i32
store i8* %141, i8** %0
br label %147
147: ; preds = %137, %134, %2
%148 = phi i32 [ 0, %2 ], [ 0, %134 ], [ %146, %137 ]
ret i32 %148
}