user: 这段汇编代码用C语言表示是什么样的？

```asm
<test_primitive_exprs>:
  endbr64
  sub    $0x8,%rsp
  lea    D39(%rip),%rdi
  call   <run@plt>
  test   %rax,%rax
  jne    L141
L270:
  lea    D84(%rip),%rdi
  call   <run@plt>
  test   %rax,%rax
  jne    L47
L325:
  lea    D120(%rip),%rdi
  call   <run@plt>
  test   %rax,%rax
  jne    L491
L80:
  lea    D154(%rip),%rdi
  call   <run@plt>
  test   %rax,%rax
  jne    L375
L95:
  lea    D193(%rip),%rdi
  call   <run@plt>
  test   %rax,%rax
  jne    L193
L495:
  lea    D70(%rip),%rdi
  call   <run@plt>
  test   %rax,%rax
  je     L442
L446:
  lea    D27(%rip),%rdi
  call   <run@plt>
  test   %rax,%rax
  je     L49
L508:
  lea    D178(%rip),%rdi
  call   <run@plt>
  test   %rax,%rax
  je     L245
L37:
  lea    D190(%rip),%rdi
  call   <run@plt>
  test   %rax,%rax
  je     L441
L254:
  lea    D102(%rip),%rdi
  call   <run@plt>
  test   %rax,%rax
  je     L273
L496:
  lea    D236(%rip),%rdi
  call   <run@plt>
  test   %rax,%rax
  je     L420
L113:
  lea    D90(%rip),%rdi
  call   <run@plt>
  test   %rax,%rax
  je     L19
L212:
  lea    D196(%rip),%rdi
  call   <run@plt>
  test   %rax,%rax
  je     L7
L434:
  lea    D226(%rip),%rdi
  call   <run@plt>
  test   %rax,%rax
  je     L175
L259:
  lea    D57(%rip),%rdi
  call   <run@plt>
  test   %rax,%rax
  je     L130
L369:
  lea    D157(%rip),%rdi
  call   <run@plt>
  test   %rax,%rax
  je     L501
L355:
  lea    D25(%rip),%rdi
  call   <run@plt>
  test   %rax,%rax
  je     L381
L185:
  lea    D171(%rip),%rdi
  call   <run@plt>
  test   %rax,%rax
  je     L384
L251:
  lea    D117(%rip),%rdi
  call   <run@plt>
  test   %rax,%rax
  je     L210
L399:
  lea    D5(%rip),%rdi
  call   <run@plt>
  test   %rax,%rax
  je     L84
L269:
  lea    D9(%rip),%rdi
  call   <run@plt>
  test   %rax,%rax
  je     L478
L26:
  lea    D166(%rip),%rdi
  call   <run@plt>
  test   %rax,%rax
  je     L486
L204:
  lea    D75(%rip),%rdi
  call   <run@plt>
  test   %rax,%rax
  je     L59
L261:
  lea    D47(%rip),%rdi
  call   <run@plt>
  test   %rax,%rax
  je     L258
L510:
  lea    D29(%rip),%rdi
  call   <run@plt>
  test   %rax,%rax
  je     L93
L67:
  lea    D230(%rip),%rdi
  call   <run@plt>
  test   %rax,%rax
  je     L463
L48:
  add    $0x8,%rsp
  ret
L141:
  mov    $0x91,%edi
  call   <fail_test@plt>
  jmp    L270
L47:
  mov    $0x92,%edi
  call   <fail_test@plt>
  jmp    L325
L491:
  mov    $0x93,%edi
  call   <fail_test@plt>
  jmp    L80
L375:
  mov    $0x94,%edi
  call   <fail_test@plt>
  jmp    L95
L193:
  mov    $0x95,%edi
  call   <fail_test@plt>
  jmp    L495
L442:
  mov    $0x96,%edi
  call   <fail_test@plt>
  jmp    L446
L49:
  mov    $0x97,%edi
  call   <fail_test@plt>
  jmp    L508
L245:
  mov    $0x98,%edi
  call   <fail_test@plt>
  jmp    L37
L441:
  mov    $0x99,%edi
  call   <fail_test@plt>
  jmp    L254
L273:
  mov    $0x9a,%edi
  call   <fail_test@plt>
  jmp    L496
L420:
  mov    $0x9b,%edi
  call   <fail_test@plt>
  jmp    L113
L19:
  mov    $0x9c,%edi
  call   <fail_test@plt>
  jmp    L212
L7:
  mov    $0x9d,%edi
  call   <fail_test@plt>
  jmp    L434
L175:
  mov    $0x9e,%edi
  call   <fail_test@plt>
  jmp    L259
L130:
  mov    $0x9f,%edi
  call   <fail_test@plt>
  jmp    L369
L501:
  mov    $0xa0,%edi
  call   <fail_test@plt>
  jmp    L355
L381:
  mov    $0xa1,%edi
  call   <fail_test@plt>
  jmp    L185
L384:
  mov    $0xa2,%edi
  call   <fail_test@plt>
  jmp    L251
L210:
  mov    $0xa3,%edi
  call   <fail_test@plt>
  jmp    L399
L84:
  mov    $0xa4,%edi
  call   <fail_test@plt>
  jmp    L269
L478:
  mov    $0xa5,%edi
  call   <fail_test@plt>
  jmp    L26
L486:
  mov    $0xa6,%edi
  call   <fail_test@plt>
  jmp    L204
L59:
  mov    $0xa7,%edi
  call   <fail_test@plt>
  jmp    L261
L258:
  mov    $0xa8,%edi
  call   <fail_test@plt>
  jmp    L510
L93:
  mov    $0xa9,%edi
  call   <fail_test@plt>
  jmp    L67
L463:
  mov    $0xaa,%edi
  call   <fail_test@plt>
  jmp    L48
```

tool_calls: name: disassemble_data
arguments: data_tag: D39
type_infered: string
name: disassemble_data
arguments: data_tag: D84
type_infered: string
name: disassemble_data
arguments: data_tag: D120
type_infered: string
name: disassemble_data
arguments: data_tag: D154
type_infered: string
name: disassemble_data
arguments: data_tag: D193
type_infered: string
name: disassemble_data
arguments: data_tag: D70
type_infered: string
name: disassemble_data
arguments: data_tag: D27
type_infered: string
name: disassemble_data
arguments: data_tag: D178
type_infered: string
name: disassemble_data
arguments: data_tag: D190
type_infered: string
name: disassemble_data
arguments: data_tag: D102
type_infered: string
name: disassemble_data
arguments: data_tag: D236
type_infered: string
name: disassemble_data
arguments: data_tag: D90
type_infered: string
name: disassemble_data
arguments: data_tag: D196
type_infered: string
name: disassemble_data
arguments: data_tag: D226
type_infered: string
name: disassemble_data
arguments: data_tag: D57
type_infered: string
name: disassemble_data
arguments: data_tag: D157
type_infered: string
name: disassemble_data
arguments: data_tag: D25
type_infered: string
name: disassemble_data
arguments: data_tag: D171
type_infered: string
name: disassemble_data
arguments: data_tag: D117
type_infered: string
name: disassemble_data
arguments: data_tag: D5
type_infered: string
name: disassemble_data
arguments: data_tag: D9
type_infered: string
name: disassemble_data
arguments: data_tag: D166
type_infered: string
name: disassemble_data
arguments: data_tag: D75
type_infered: string
name: disassemble_data
arguments: data_tag: D47
type_infered: string
name: disassemble_data
arguments: data_tag: D29
type_infered: string
name: disassemble_data
arguments: data_tag: D230
type_infered: string

tool: D39: test/progs/primitive_expr_basic.b

tool: D84: test/progs/primitive_expr_ops.b

tool: D120: test/progs/primitive_expr_conv.b

tool: D154: test/progs/primitive_expr_time.b

tool: D193: test/progs/primitive_expr_str_index.b

tool: D70: test/progs/primitive_expr_not_string_err.b

tool: D27: test/progs/primitive_expr_not_real_err.b

tool: D178: test/progs/primitive_expr_eq_err.b

tool: D190: test/progs/primitive_expr_neq_err.b

tool: D102: test/progs/primitive_expr_and_err.b

tool: D236: test/progs/primitive_expr_or_err.b

tool: D90: test/progs/primitive_expr_gt_err.b

tool: D196: test/progs/primitive_expr_lt_err.b

tool: D226: test/progs/primitive_expr_sum_err.b

tool: D57: test/progs/primitive_expr_sub_err.b

tool: D157: test/progs/primitive_expr_mul_err.b

tool: D25: test/progs/primitive_expr_div_err.b

tool: D171: test/progs/primitive_expr_unknown_func_err.b

tool: D117: test/progs/primitive_expr_conv_str_to_int_err.b

tool: D5: test/progs/primitive_expr_conv_str_to_real_err.b

tool: D9: test/progs/primitive_expr_conv_str_to_long_err.b

tool: D166: test/progs/primitive_expr_conv_param_err.b

tool: D75: test/progs/primitive_expr_time_int_err.b

tool: D47: test/progs/primitive_expr_str_index_param_missing_err.b

tool: D29: test/progs/primitive_expr_str_index_param_one_type_err.b

tool: D230: test/progs/primitive_expr_str_index_param_two_type_err.b

assistant: ```c
void test_primitive_exprs() {
  do {
    if (run("test/progs/"
            "primitive_expr_basic.b"))
      fail_test(145);
    ;
  } while (0);
  do {
    if (run("test/progs/"
            "primitive_expr_ops.b"))
      fail_test(146);
    ;
  } while (0);
  do {
    if (run("test/progs/"
            "primitive_expr_conv.b"))
      fail_test(147);
    ;
  } while (0);
  do {
    if (run("test/progs/"
            "primitive_expr_time.b"))
      fail_test(148);
    ;
  } while (0);
  do {
    if (run("test/progs/"
            "primitive_expr_str_index.b"))
      fail_test(149);
    ;
  } while (0);
  do {
    if (!run("test/progs/"
             "primitive_expr_not_string_err.b"))
      fail_test(150);
    ;
  } while (0);
  do {
    if (!run("test/progs/"
             "primitive_expr_not_real_err.b"))
      fail_test(151);
    ;
  } while (0);
  do {
    if (!run("test/progs/"
             "primitive_expr_eq_err.b"))
      fail_test(152);
    ;
  } while (0);
  do {
    if (!run("test/progs/"
             "primitive_expr_neq_err.b"))
      fail_test(153);
    ;
  } while (0);
  do {
    if (!run("test/progs/"
             "primitive_expr_and_err.b"))
      fail_test(154);
    ;
  } while (0);
  do {
    if (!run("test/progs/"
             "primitive_expr_or_err.b"))
      fail_test(155);
    ;
  } while (0);
  do {
    if (!run("test/progs/"
             "primitive_expr_gt_err.b"))
      fail_test(156);
    ;
  } while (0);
  do {
    if (!run("test/progs/"
             "primitive_expr_lt_err.b"))
      fail_test(157);
    ;
  } while (0);
  do {
    if (!run("test/progs/"
             "primitive_expr_sum_err.b"))
      fail_test(158);
    ;
  } while (0);
  do {
    if (!run("test/progs/"
             "primitive_expr_sub_err.b"))
      fail_test(159);
    ;
  } while (0);
  do {
    if (!run("test/progs/"
             "primitive_expr_mul_err.b"))
      fail_test(160);
    ;
  } while (0);
  do {
    if (!run("test/progs/"
             "primitive_expr_div_err.b"))
      fail_test(161);
    ;
  } while (0);
  do {
    if (!run("test/progs/"
             "primitive_expr_unknown_func_err.b"))
      fail_test(162);
    ;
  } while (0);
  do {
    if (!run("test/progs/"
             "primitive_expr_conv_str_to_int_err.b"))
      fail_test(163);
    ;
  } while (0);
  do {
    if (!run("test/progs/"
             "primitive_expr_conv_str_to_real_err.b"))
      fail_test(164);
    ;
  } while (0);
  do {
    if (!run("test/progs/"
             "primitive_expr_conv_str_to_long_err.b"))
      fail_test(165);
    ;
  } while (0);
  do {
    if (!run("test/progs/"
             "primitive_expr_conv_param_err.b"))
      fail_test(166);
    ;
  } while (0);
  do {
    if (!run("test/progs/"
             "primitive_expr_time_int_err.b"))
      fail_test(167);
    ;
  } while (0);
  do {
    if (!run("test/progs/"
             "primitive_expr_str_index_param_missing_err.b"))
      fail_test(168);
    ;
  } while (0);
  do {
    if (!run("test/progs/"
             "primitive_expr_str_index_param_one_type_err.b"))
      fail_test(169);
    ;
  } while (0);
  do {
    if (!run("test/progs/"
             "primitive_expr_str_index_param_two_type_err.b"))
      fail_test(170);
    ;
  } while (0);
}
```