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

```asm
<main>:
  endbr64
  push   %r14
  push   %r13
  push   %r12
  push   %rbp
  push   %rbx
  sub    $0x30,%rsp
  mov    %fs:0x28,%rax
  mov    %rax,0x28(%rsp)
  xor    %eax,%eax
  lea    0x14(%rsp),%rbp
  prefetcht0 0x0(%rbp)
  prefetcht0 0x0(%rbp)
  prefetchnta 0x0(%rbp)
  call   <random@plt>
  xor    %esi,%esi
  lea    D764(%rip),%rdi
  mov    %eax,%ebx
  xor    %eax,%eax
  call   <p@plt>
  mov    $0x14,%esi
  xor    %eax,%eax
  movslq %ebx,%rbp
  lea    D552(%rip),%rdi
  call   <p@plt>
  mov    $0x1,%esi
  lea    D240(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  xor    %esi,%esi
  cmp    $0xc,%ebx
  lea    D322(%rip),%rdi
  sete   %sil
  xor    %eax,%eax
  call   <p@plt>
  xor    %esi,%esi
  lea    D820(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  xor    %esi,%esi
  lea    D381(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  xor    %esi,%esi
  lea    D350(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  movsd  D411(%rip),%xmm0
  mov    $0x1,%eax
  lea    D388(%rip),%rdi
  call   <q@plt>
  mov    D411(%rip),%rax
  lea    D524(%rip),%rdi
  movq   %rax,%xmm0
  mov    $0x1,%eax
  call   <q@plt>
  flds   0x12f4(%rip)        # 24e8 <_fini+0xafc>
  sub    $0x10,%rsp
  xor    %eax,%eax
  lea    D257(%rip),%rdi
  fstpt  (%rsp)
  call   <q@plt>
  mov    D411(%rip),%rax
  lea    D399(%rip),%rdi
  movq   %rax,%xmm0
  mov    $0x1,%eax
  call   <q@plt>
  mov    D411(%rip),%rax
  lea    D299(%rip),%rdi
  movq   %rax,%xmm0
  mov    $0x1,%eax
  call   <q@plt>
  fldt   0x12b7(%rip)        # 2500 <_fini+0xb14>
  sub    $0x10,%rsp
  xor    %eax,%eax
  lea    D818(%rip),%rdi
  fstpt  (%rsp)
  call   <q@plt>
  add    $0x20,%rsp
  mov    $0x2,%esi
  xor    %eax,%eax
  lea    D254(%rip),%rdi
  call   <p@plt>
  mov    $0x2,%esi
  lea    D592(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  mov    $0x2,%esi
  lea    D210(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  movsd  D531(%rip),%xmm0
  mov    $0x1,%eax
  lea    D638(%rip),%rdi
  call   <q@plt>
  mov    D531(%rip),%rax
  lea    D668(%rip),%rdi
  movq   %rax,%xmm0
  mov    $0x1,%eax
  call   <q@plt>
  flds   0x1215(%rip)        # 24ec <_fini+0xb00>
  lea    D645(%rip),%rdi
  fstpt  (%rsp)
  mov    0x8(%rsp),%edx
  mov    (%rsp),%rax
  push   %rdx
  push   %rax
  xor    %eax,%eax
  call   <q@plt>
  movsd  D75(%rip),%xmm0
  mov    $0x1,%eax
  lea    D760(%rip),%rdi
  call   <q@plt>
  movsd  D96(%rip),%xmm0
  mov    $0x1,%eax
  lea    D269(%rip),%rdi
  call   <q@plt>
  movsd  D623(%rip),%xmm0
  mov    $0x1,%eax
  lea    D97(%rip),%rdi
  call   <q@plt>
  push   $0x7fff
  movabs $0xc00000000000000a,%rax
  lea    D738(%rip),%rdi
  push   %rax
  xor    %eax,%eax
  call   <q@plt>
  add    $0x20,%rsp
  mov    $0x1,%eax
  movsd  D293(%rip),%xmm0
  lea    D355(%rip),%rdi
  call   <q@plt>
  xor    %esi,%esi
  lea    D77(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  xor    %esi,%esi
  lea    D540(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  mov    $0x1,%esi
  lea    D604(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  mov    $0x1,%esi
  lea    D433(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  mov    $0x1,%esi
  lea    D605(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  xor    %esi,%esi
  lea    D533(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  xor    %esi,%esi
  lea    D515(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  xor    %esi,%esi
  lea    D630(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  xor    %esi,%esi
  lea    D15(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  mov    %ebx,%esi
  lea    D514(%rip),%rdi
  neg    %esi
  cmovs  %ebx,%esi
  xor    %eax,%eax
  call   <p@plt>
  bsr    %ebx,%esi
  lea    D271(%rip),%rdi
  xor    %eax,%eax
  xor    $0x1f,%esi
  call   <p@plt>
  bsr    %rbp,%rsi
  lea    D195(%rip),%rdi
  xor    %eax,%eax
  xor    $0x3f,%esi
  call   <p@plt>
  bsr    %rbp,%rsi
  xor    %r13d,%r13d
  xor    %eax,%eax
  tzcnt  %ebx,%r13d
  xor    $0x3f,%esi
  lea    D42(%rip),%rdi
  xor    %r12d,%r12d
  call   <p@plt>
  tzcnt  %rbp,%r12
  mov    %r13d,%esi
  xor    %eax,%eax
  lea    D186(%rip),%rdi
  call   <p@plt>
  mov    %r12d,%esi
  lea    D78(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  mov    %r12d,%esi
  lea    D236(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  bsf    %ebx,%esi
  mov    $0xffffffff,%esi
  mov    %rbp,%r12
  cmovne %r13d,%esi
  lea    D110(%rip),%rdi
  xor    %eax,%eax
  mov    $0xffffffffffffffff,%r13
  add    $0x1,%esi
  call   <p@plt>
  bsf    %rbp,%rax
  lea    D622(%rip),%rdi
  cmove  %r13,%rax
  lea    0x1(%rax),%esi
  xor    %eax,%eax
  call   <p@plt>
  bsf    %rbp,%rax
  lea    D393(%rip),%rdi
  cmove  %r13,%rax
  lea    0x1(%rax),%esi
  xor    %eax,%eax
  call   <p@plt>
  mov    %ebx,%eax
  xor    %esi,%esi
  lea    D131(%rip),%rdi
  shr    $0x10,%eax
  xor    %ebx,%eax
  xor    %ah,%al
  setnp  %sil
  shr    $0x20,%r12
  xor    %eax,%eax
  call   <p@plt>
  xor    %ebx,%r12d
  xor    %esi,%esi
  lea    D324(%rip),%rdi
  mov    %r12d,%r13d
  mov    %r12d,%eax
  shr    $0x10,%r13d
  xor    %r13d,%eax
  xor    %ah,%al
  setnp  %sil
  xor    %eax,%eax
  call   <p@plt>
  mov    %r12d,%eax
  xor    %esi,%esi
  lea    D836(%rip),%rdi
  xor    %r13d,%eax
  xor    %ah,%al
  setnp  %sil
  xor    %eax,%eax
  call   <p@plt>
  mov    %ebx,%edi
  call   <__popcountdi2>
  lea    D451(%rip),%rdi
  mov    %eax,%esi
  xor    %eax,%eax
  call   <p@plt>
  mov    %rbp,%rdi
  call   <__popcountdi2>
  lea    D649(%rip),%rdi
  mov    %eax,%r12d
  mov    %eax,%esi
  xor    %eax,%eax
  call   <p@plt>
  mov    %r12d,%esi
  lea    D809(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  movsd  D327(%rip),%xmm0
  mov    %ebx,%edi
  call   <__powidf2>
  lea    D70(%rip),%rdi
  mov    $0x1,%eax
  call   <q@plt>
  movss  D374(%rip),%xmm0
  mov    %ebx,%edi
  call   <__powisf2>
  lea    D285(%rip),%rdi
  mov    $0x1,%eax
  cvtss2sd %xmm0,%xmm0
  call   <q@plt>
  flds   0xf00(%rip)        # 24f0 <_fini+0xb04>
  mov    %ebx,%edi
  fstpt  (%rsp)
  mov    (%rsp),%rax
  mov    0x8(%rsp),%edx
  push   %rdx
  push   %rax
  call   <__powixf2>
  lea    D670(%rip),%rdi
  xor    %eax,%eax
  lea    0x28(%rsp),%r14
  fstpt  (%rsp)
  lea    0x2e(%rsp),%r13
  call   <q@plt>
  xor    %eax,%eax
  call   <random@plt>
  mov    $0x6f,%edx
  mov    %r14,%rsi
  mov    %r13,%rdi
  mov    %dx,0x2c(%rsp)
  movslq %eax,%r12
  movl   $0x6c6c6548,0x28(%rsp)
  call   <strcat@plt>
  xor    %esi,%esi
  lea    D206(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  xor    %esi,%esi
  lea    D266(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  mov    %r12,%rdx
  mov    %r14,%rsi
  mov    %r13,%rdi
  call   <strncat@plt>
  xor    %esi,%esi
  lea    D405(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  xor    %esi,%esi
  lea    D709(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  xor    %esi,%esi
  lea    D407(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  xor    %esi,%esi
  lea    D165(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  xor    %esi,%esi
  lea    D610(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  xor    %esi,%esi
  lea    D166(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  xor    %esi,%esi
  lea    D819(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  xor    %esi,%esi
  lea    D396(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  mov    %r12,%rcx
  mov    $0xa,%edx
  mov    %r14,%rsi
  mov    %r13,%rdi
  call   <__mempcpy_chk@plt>
  xor    %esi,%esi
  lea    D725(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  xor    %esi,%esi
  lea    D666(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  xor    %esi,%esi
  lea    D21(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  xor    %esi,%esi
  lea    D848(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  xor    %eax,%eax
  mov    $0xa,%esi
  lea    D474(%rip),%rdi
  call   <p@plt>
  mov    $0xa,%esi
  lea    D280(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  mov    $0xa,%esi
  lea    D330(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  mov    $0xa,%esi
  lea    D493(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  mov    %ebx,%esi
  lea    D336(%rip),%rdi
  xor    %eax,%eax
  rol    $0x8,%si
  bswap  %ebx
  movzwl %si,%esi
  call   <p@plt>
  mov    %ebx,%esi
  lea    D247(%rip),%rdi
  xor    %eax,%eax
  call   <p@plt>
  mov    %rbp,%rsi
  lea    D418(%rip),%rdi
  xor    %eax,%eax
  bswap  %rsi
  call   <p@plt>
  ud2
```

tool_calls: name: extract_symbolic_data
arguments: data_label: D764
type: string
name: extract_symbolic_data
arguments: data_label: D552
type: string
name: extract_symbolic_data
arguments: data_label: D240
type: string
name: extract_symbolic_data
arguments: data_label: D322
type: string
name: extract_symbolic_data
arguments: data_label: D820
type: string
name: extract_symbolic_data
arguments: data_label: D381
type: string
name: extract_symbolic_data
arguments: data_label: D350
type: string
name: extract_symbolic_data
arguments: data_label: D411
type: byte[8]
name: extract_symbolic_data
arguments: data_label: D388
type: string
name: extract_symbolic_data
arguments: data_label: D524
type: string
name: extract_symbolic_data
arguments: data_label: D257
type: string
name: extract_symbolic_data
arguments: data_label: D399
type: string
name: extract_symbolic_data
arguments: data_label: D299
type: string
name: extract_symbolic_data
arguments: data_label: D818
type: string
name: extract_symbolic_data
arguments: data_label: D254
type: string
name: extract_symbolic_data
arguments: data_label: D592
type: string
name: extract_symbolic_data
arguments: data_label: D210
type: string
name: extract_symbolic_data
arguments: data_label: D531
type: byte[8]
name: extract_symbolic_data
arguments: data_label: D638
type: string
name: extract_symbolic_data
arguments: data_label: D668
type: string
name: extract_symbolic_data
arguments: data_label: D645
type: string
name: extract_symbolic_data
arguments: data_label: D75
type: byte[8]
name: extract_symbolic_data
arguments: data_label: D760
type: string
name: extract_symbolic_data
arguments: data_label: D96
type: byte[8]
name: extract_symbolic_data
arguments: data_label: D269
type: string
name: extract_symbolic_data
arguments: data_label: D623
type: f32[2]
name: extract_symbolic_data
arguments: data_label: D97
type: string
name: extract_symbolic_data
arguments: data_label: D738
type: string
name: extract_symbolic_data
arguments: data_label: D293
type: byte[8]
name: extract_symbolic_data
arguments: data_label: D355
type: string
name: extract_symbolic_data
arguments: data_label: D77
type: string
name: extract_symbolic_data
arguments: data_label: D540
type: string
name: extract_symbolic_data
arguments: data_label: D604
type: string
name: extract_symbolic_data
arguments: data_label: D433
type: string
name: extract_symbolic_data
arguments: data_label: D605
type: string
name: extract_symbolic_data
arguments: data_label: D533
type: string
name: extract_symbolic_data
arguments: data_label: D515
type: string
name: extract_symbolic_data
arguments: data_label: D630
type: string
name: extract_symbolic_data
arguments: data_label: D15
type: string
name: extract_symbolic_data
arguments: data_label: D514
type: string
name: extract_symbolic_data
arguments: data_label: D271
type: string
name: extract_symbolic_data
arguments: data_label: D195
type: string
name: extract_symbolic_data
arguments: data_label: D42
type: string
name: extract_symbolic_data
arguments: data_label: D186
type: string
name: extract_symbolic_data
arguments: data_label: D78
type: string
name: extract_symbolic_data
arguments: data_label: D236
type: string
name: extract_symbolic_data
arguments: data_label: D110
type: string
name: extract_symbolic_data
arguments: data_label: D622
type: string
name: extract_symbolic_data
arguments: data_label: D393
type: string
name: extract_symbolic_data
arguments: data_label: D131
type: string
name: extract_symbolic_data
arguments: data_label: D324
type: string
name: extract_symbolic_data
arguments: data_label: D836
type: string
name: extract_symbolic_data
arguments: data_label: D451
type: string
name: extract_symbolic_data
arguments: data_label: D649
type: string
name: extract_symbolic_data
arguments: data_label: D809
type: string
name: extract_symbolic_data
arguments: data_label: D327
type: f32[2]
name: extract_symbolic_data
arguments: data_label: D70
type: string
name: extract_symbolic_data
arguments: data_label: D374
type: byte[4]
name: extract_symbolic_data
arguments: data_label: D285
type: string
name: extract_symbolic_data
arguments: data_label: D670
type: string
name: extract_symbolic_data
arguments: data_label: D206
type: string
name: extract_symbolic_data
arguments: data_label: D266
type: string
name: extract_symbolic_data
arguments: data_label: D405
type: string
name: extract_symbolic_data
arguments: data_label: D709
type: string
name: extract_symbolic_data
arguments: data_label: D407
type: string
name: extract_symbolic_data
arguments: data_label: D165
type: string
name: extract_symbolic_data
arguments: data_label: D610
type: string
name: extract_symbolic_data
arguments: data_label: D166
type: string
name: extract_symbolic_data
arguments: data_label: D819
type: string
name: extract_symbolic_data
arguments: data_label: D396
type: string
name: extract_symbolic_data
arguments: data_label: D725
type: string
name: extract_symbolic_data
arguments: data_label: D666
type: string
name: extract_symbolic_data
arguments: data_label: D21
type: string
name: extract_symbolic_data
arguments: data_label: D848
type: string
name: extract_symbolic_data
arguments: data_label: D474
type: string
name: extract_symbolic_data
arguments: data_label: D280
type: string
name: extract_symbolic_data
arguments: data_label: D330
type: string
name: extract_symbolic_data
arguments: data_label: D493
type: string
name: extract_symbolic_data
arguments: data_label: D336
type: string
name: extract_symbolic_data
arguments: data_label: D247
type: string
name: extract_symbolic_data
arguments: data_label: D418
type: string

tool: D764: types_compatible_p(int, float)

tool: D552: choose_expr(0, 10, 20)

tool: D240: constant_p(sizeof(10))

tool: D322: expect(N == 12, 0)

tool: D820: prefetch(&N)

tool: D381: prefetch(&N, 1)

tool: D350: prefetch(&N, 1, 0)

tool: {"D411": [0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0x7f]}

tool: D388: huge_val()

tool: D524: huge_valf()

tool: D257: huge_vall()

tool: D399: inf()

tool: D299: inff()

tool: D818: infl()

tool: D254: fpclassify(0, 1, 2, 3, 4, 1.0)

tool: D592: fpclassify(0, 1, 2, 3, 4, 1.0f)

tool: D210: fpclassify(0, 1, 2, 3, 4, 1.0l)

tool: {"D531": [0x00,0x00,0x00,0x00,0x00,0x00,0xf8,0x7f]}

tool: D638: nan("")

tool: D668: nanf("")

tool: D645: nanl("")

tool: {"D75": [0x00,0x00,0x00,0x00,0x00,0x00,0xf4,0x7f]}

tool: D760: nans("")

tool: {"D96": [0x0a,0x00,0x00,0x00,0x00,0x00,0xf8,0x7f]}

tool: D269: nan("10")

tool: {"D623": [2.0,null]}

tool: D97: nanf("10")

tool: D738: nanl("10")

tool: {"D293": [0x0a,0x00,0x00,0x00,0x00,0x00,0xf0,0x7f]}

tool: D355: nans("10")

tool: D77: isgreater(1., 2.)

tool: D540: isgreaterequal(1., 2.)

tool: D604: isless(1., 2.)

tool: D433: islessequal(1., 2.)

tool: D605: islessgreater(1., 2.)

tool: D533: isunordered(1., 2.)

tool: D515: isinf(1.)

tool: D630: isinf_sign(1.)

tool: D15: isnan(1.)

tool: D514: abs(N)

tool: D271: clz(N)

tool: D195: clzl(N)

tool: D42: clzll(N)

tool: D186: ctz(N)

tool: D78: ctzl(N)

tool: D236: ctzll(N)

tool: D110: ffs(N)

tool: D622: ffsl(N)

tool: D393: ffsll(N)

tool: D131: parity(N)

tool: D324: parityl(N)

tool: D836: parityll(N)

tool: D451: popcount(N)

tool: D649: popcountl(N)

tool: D809: popcountll(N)

tool: {"D327": [2.0,1.899999976158142]}

tool: D70: powi(1.2f, N)

tool: {"D374": [0x9a,0x99,0x99,0x3f]}

tool: D285: powif(1.2f, N)

tool: D670: powil(1.2f, N)

tool: D206: strcat(s0, s1)

tool: D266: strcmp(s0, s1)

tool: D405: strncat(s0, s1, n)

tool: D709: strchr(s0, s1[0])

tool: D407: strrchr(s0, s1[0])

tool: D165: strcpy(s0, s1)

tool: D610: strncpy(s0, s1, n)

tool: D166: __memset_chk(s0, 0, sizeof s0, n)

tool: D819: __memcpy_chk(s0, s1, sizeof s0, n)

tool: D396: __memmove_chk(s0, s1, sizeof s0, n)

tool: D725: __mempcpy_chk(s0, s1, sizeof s0, n)

tool: D666: __strncpy_chk(s0, s1, sizeof s0, n)

tool: D21: __strcpy_chk(s0, s1, n)

tool: D848: __strcat_chk(s0, s1, n)

tool: D474: object_size(s0, 0)

tool: D280: object_size(s0, 1)

tool: D330: object_size(s0, 2)

tool: D493: object_size(s0, 3)

tool: D336: bswap16(N)

tool: D247: bswap32(N)

tool: D418: bswap64(N)

assistant: ```c
int main() {
  int N = random();
  p("types_compatible_p"
    "(int, float)",
    __builtin_types_compatible_p(int, float));
  p("choose_expr"
    "(0, 10, 20)",
    __builtin_choose_expr(0, 10, 20));
  p("constant_p"
    "(sizeof(10))",
    __builtin_constant_p(sizeof(10)));
  p("expect"
    "(N == 12, 0)",
    __builtin_expect(N == 12, 0));
  p("prefetch"
    "(&N)",
    (__builtin_prefetch(&N), 0));
  p("prefetch"
    "(&N, 1)",
    (__builtin_prefetch(&N, 1), 0));
  p("prefetch"
    "(&N, 1, 0)",
    (__builtin_prefetch(&N, 1, 0), 0));
  q("huge_val"
    "()",
    __builtin_huge_val());
  q("huge_valf"
    "()",
    __builtin_huge_valf());
  q("huge_vall"
    "()",
    __builtin_huge_vall());
  q("inf"
    "()",
    __builtin_inf());
  q("inff"
    "()",
    __builtin_inff());
  q("infl"
    "()",
    __builtin_infl());
  p("fpclassify"
    "(0, 1, 2, 3, 4, 1.0)",
    __builtin_fpclassify(0, 1, 2, 3, 4, 1.0));
  p("fpclassify"
    "(0, 1, 2, 3, 4, 1.0f)",
    __builtin_fpclassify(0, 1, 2, 3, 4, 1.0f));
  p("fpclassify"
    "(0, 1, 2, 3, 4, 1.0l)",
    __builtin_fpclassify(0, 1, 2, 3, 4, 1.0l));
  q("nan"
    "(\"\")",
    __builtin_nan(""));
  q("nanf"
    "(\"\")",
    __builtin_nanf(""));
  q("nanl"
    "(\"\")",
    __builtin_nanl(""));
  q("nans"
    "(\"\")",
    __builtin_nans(""));
  q("nan"
    "(\"10\")",
    __builtin_nan("10"));
  q("nanf"
    "(\"10\")",
    __builtin_nanf("10"));
  q("nanl"
    "(\"10\")",
    __builtin_nanl("10"));
  q("nans"
    "(\"10\")",
    __builtin_nans("10"));
  p("isgreater"
    "(1., 2.)",
    __builtin_isgreater(1., 2.));
  p("isgreaterequal"
    "(1., 2.)",
    __builtin_isgreaterequal(1., 2.));
  p("isless"
    "(1., 2.)",
    __builtin_isless(1., 2.));
  p("islessequal"
    "(1., 2.)",
    __builtin_islessequal(1., 2.));
  p("islessgreater"
    "(1., 2.)",
    __builtin_islessgreater(1., 2.));
  p("isunordered"
    "(1., 2.)",
    __builtin_isunordered(1., 2.));
  p("isinf"
    "(1.)",
    __builtin_isinf(1.));
  p("isinf_sign"
    "(1.)",
    __builtin_isinf_sign(1.));
  p("isnan"
    "(1.)",
    __builtin_isnan(1.));
  p("abs"
    "(N)",
    __builtin_abs(N));
  p("clz"
    "(N)",
    __builtin_clz(N));
  p("clzl"
    "(N)",
    __builtin_clzl(N));
  p("clzll"
    "(N)",
    __builtin_clzll(N));
  p("ctz"
    "(N)",
    __builtin_ctz(N));
  p("ctzl"
    "(N)",
    __builtin_ctzl(N));
  p("ctzll"
    "(N)",
    __builtin_ctzll(N));
  p("ffs"
    "(N)",
    __builtin_ffs(N));
  p("ffsl"
    "(N)",
    __builtin_ffsl(N));
  p("ffsll"
    "(N)",
    __builtin_ffsll(N));
  p("parity"
    "(N)",
    __builtin_parity(N));
  p("parityl"
    "(N)",
    __builtin_parityl(N));
  p("parityll"
    "(N)",
    __builtin_parityll(N));
  p("popcount"
    "(N)",
    __builtin_popcount(N));
  p("popcountl"
    "(N)",
    __builtin_popcountl(N));
  p("popcountll"
    "(N)",
    __builtin_popcountll(N));
  q("powi"
    "(1.2f, N)",
    __builtin_powi(1.2f, N));
  q("powif"
    "(1.2f, N)",
    __builtin_powif(1.2f, N));
  q("powil"
    "(1.2f, N)",
    __builtin_powil(1.2f, N));
  int a, b, n = random();
  char s0[10], s1[] = "Hello";
  p("strcat"
    "(s0, s1)",
    (__builtin_strcat(s0, s1), 0));
  p("strcmp"
    "(s0, s1)",
    (__builtin_strcmp(s0, s1), 0));
  p("strncat"
    "(s0, s1, n)",
    (__builtin_strncat(s0, s1, n), 0));
  p("strchr"
    "(s0, s1[0])",
    (__builtin_strchr(s0, s1[0]), 0));
  p("strrchr"
    "(s0, s1[0])",
    (__builtin_strrchr(s0, s1[0]), 0));
  p("strcpy"
    "(s0, s1)",
    (__builtin_strcpy(s0, s1), 0));
  p("strncpy"
    "(s0, s1, n)",
    (__builtin_strncpy(s0, s1, n), 0));
  p("__memset_chk"
    "(s0, 0, sizeof s0, n)",
    (__builtin___memset_chk(s0, 0, sizeof s0, n), 0));
  p("__memcpy_chk"
    "(s0, s1, sizeof s0, n)",
    (__builtin___memcpy_chk(s0, s1, sizeof s0, n), 0));
  p("__memmove_chk"
    "(s0, s1, sizeof s0, n)",
    (__builtin___memmove_chk(s0, s1, sizeof s0, n), 0));
  p("__mempcpy_chk"
    "(s0, s1, sizeof s0, n)",
    (__builtin___mempcpy_chk(s0, s1, sizeof s0, n), 0));
  p("__strncpy_chk"
    "(s0, s1, sizeof s0, n)",
    (__builtin___strncpy_chk(s0, s1, sizeof s0, n), 0));
  p("__strcpy_chk"
    "(s0, s1, n)",
    (__builtin___strcpy_chk(s0, s1, n), 0));
  s0[0] = 0;
  p("__strcat_chk"
    "(s0, s1, n)",
    (__builtin___strcat_chk(s0, s1, n), 0));
  p("object_size"
    "(s0, 0)",
    __builtin_object_size(s0, 0));
  p("object_size"
    "(s0, 1)",
    __builtin_object_size(s0, 1));
  p("object_size"
    "(s0, 2)",
    __builtin_object_size(s0, 2));
  p("object_size"
    "(s0, 3)",
    __builtin_object_size(s0, 3));
  p("bswap16"
    "(N)",
    __builtin_bswap16(N));
  p("bswap32"
    "(N)",
    __builtin_bswap32(N));
  p("bswap64"
    "(N)",
    __builtin_bswap64(N));
  p("trap"
    "()",
    (__builtin_trap(), 0));
  r("extract_return_addr"
    "(&N)",
    __builtin_extract_return_addr(&N));
  p("signbit"
    "(1.0)",
    __builtin_signbit(1.0));
  return 0;
}
```