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

```asm
<check_add_double>:
  endbr64
  sub    $0x288,%rsp
  movq   $0x0,(%rsp)
  movsd  D1963(%rip),%xmm0
  movsd  %xmm0,0x80(%rsp)
  movsd  D2231(%rip),%xmm0
  movsd  %xmm0,0x88(%rsp)
  movsd  0x80(%rsp),%xmm1
  movsd  0x88(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L1613
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L1613
  movsd  0x80(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L1613
  jne    L1613
  movsd  0x88(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L1613
  jne    L1613
  movsd  0x80(%rsp),%xmm0
  movsd  0x88(%rsp),%xmm1
  movsd  (%rsp),%xmm2
  addsd  %xmm2,%xmm0
  movsd  %xmm0,0x90(%rsp)
  movsd  %xmm1,0x98(%rsp)
  movsd  0x90(%rsp),%xmm1
  movsd  0x98(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L755
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L755
  movsd  0x90(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L755
  jne    L755
  movsd  0x98(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L755
  jne    L755
  movq   $0x0,0x8(%rsp)
  movsd  D261(%rip),%xmm0
  movsd  %xmm0,0xa0(%rsp)
  movsd  D1184(%rip),%xmm0
  movsd  %xmm0,0xa8(%rsp)
  movsd  0xa0(%rsp),%xmm1
  movsd  0xa8(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L734
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L734
  movsd  0xa0(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L734
  jne    L734
  movsd  0xa8(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2221(%rip),%xmm0
  jp     L734
  jne    L734
  movsd  0xa0(%rsp),%xmm0
  movsd  0xa8(%rsp),%xmm1
  movsd  0x8(%rsp),%xmm2
  addsd  %xmm2,%xmm0
  movsd  %xmm0,0xb0(%rsp)
  movsd  %xmm1,0xb8(%rsp)
  movsd  0xb0(%rsp),%xmm1
  movsd  0xb8(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L743
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L743
  movsd  0xb0(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L743
  jne    L743
  movsd  0xb8(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2221(%rip),%xmm0
  jp     L743
  jne    L743
  movq   $0x0,0x10(%rsp)
  movsd  D47(%rip),%xmm0
  movsd  %xmm0,0xc0(%rsp)
  movsd  D576(%rip),%xmm0
  movsd  %xmm0,0xc8(%rsp)
  movsd  0xc0(%rsp),%xmm1
  movsd  0xc8(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L702
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L702
  movsd  0xc0(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2221(%rip),%xmm0
  jp     L702
  jne    L702
  movsd  0xc8(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L702
  jne    L702
  movsd  0xc0(%rsp),%xmm0
  movsd  0xc8(%rsp),%xmm1
  movsd  0x10(%rsp),%xmm2
  addsd  %xmm2,%xmm0
  movsd  %xmm0,0xd0(%rsp)
  movsd  %xmm1,0xd8(%rsp)
  movsd  0xd0(%rsp),%xmm1
  movsd  0xd8(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L314
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L314
  movsd  0xd0(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L314
  jne    L314
  movsd  0xd8(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L314
  jne    L314
  movq   $0x0,0x18(%rsp)
  movsd  D1810(%rip),%xmm0
  movsd  %xmm0,0xe0(%rsp)
  movsd  D1692(%rip),%xmm0
  movsd  %xmm0,0xe8(%rsp)
  movsd  0xe0(%rsp),%xmm1
  movsd  0xe8(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L10
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L10
  movsd  0xe0(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2221(%rip),%xmm0
  jp     L10
  jne    L10
  movsd  0xe8(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2221(%rip),%xmm0
  jp     L10
  jne    L10
  movsd  0xe0(%rsp),%xmm0
  movsd  0xe8(%rsp),%xmm1
  movsd  0x18(%rsp),%xmm2
  addsd  %xmm2,%xmm0
  movsd  %xmm0,0xf0(%rsp)
  movsd  %xmm1,0xf8(%rsp)
  movsd  0xf0(%rsp),%xmm1
  movsd  0xf8(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L333
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L333
  movsd  0xf0(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L333
  jne    L333
  movsd  0xf8(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2221(%rip),%xmm0
  jp     L333
  jne    L333
  movsd  D433(%rip),%xmm0
  movsd  %xmm0,0x20(%rsp)
  movsd  D1963(%rip),%xmm0
  movsd  %xmm0,0x100(%rsp)
  movsd  D2231(%rip),%xmm0
  movsd  %xmm0,0x108(%rsp)
  movsd  0x100(%rsp),%xmm1
  movsd  0x108(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L896
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L896
  movsd  0x100(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L896
  jne    L896
  movsd  0x108(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L896
  jne    L896
  movsd  0x100(%rsp),%xmm0
  movsd  0x108(%rsp),%xmm1
  movsd  0x20(%rsp),%xmm2
  addsd  %xmm2,%xmm0
  movsd  %xmm0,0x110(%rsp)
  movsd  %xmm1,0x118(%rsp)
  movsd  0x110(%rsp),%xmm1
  movsd  0x118(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L1406
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L1406
  movsd  0x110(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L1406
  jne    L1406
  movsd  0x118(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L1406
  jne    L1406
  movsd  D433(%rip),%xmm0
  movsd  %xmm0,0x28(%rsp)
  movsd  D261(%rip),%xmm0
  movsd  %xmm0,0x120(%rsp)
  movsd  D1184(%rip),%xmm0
  movsd  %xmm0,0x128(%rsp)
  movsd  0x120(%rsp),%xmm1
  movsd  0x128(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L1360
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L1360
  movsd  0x120(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L1360
  jne    L1360
  movsd  0x128(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2221(%rip),%xmm0
  jp     L1360
  jne    L1360
  movsd  0x120(%rsp),%xmm0
  movsd  0x128(%rsp),%xmm1
  movsd  0x28(%rsp),%xmm2
  addsd  %xmm2,%xmm0
  movsd  %xmm0,0x130(%rsp)
  movsd  %xmm1,0x138(%rsp)
  movsd  0x130(%rsp),%xmm1
  movsd  0x138(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L861
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L861
  movsd  0x130(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L861
  jne    L861
  movsd  0x138(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2221(%rip),%xmm0
  jp     L861
  jne    L861
  movsd  D433(%rip),%xmm0
  movsd  %xmm0,0x30(%rsp)
  movsd  D47(%rip),%xmm0
  movsd  %xmm0,0x140(%rsp)
  movsd  D576(%rip),%xmm0
  movsd  %xmm0,0x148(%rsp)
  movsd  0x140(%rsp),%xmm1
  movsd  0x148(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L179
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L179
  movsd  0x140(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2221(%rip),%xmm0
  jp     L179
  jne    L179
  movsd  0x148(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L179
  jne    L179
  movsd  0x140(%rsp),%xmm0
  movsd  0x148(%rsp),%xmm1
  movsd  0x30(%rsp),%xmm2
  addsd  %xmm2,%xmm0
  movsd  %xmm0,0x150(%rsp)
  movsd  %xmm1,0x158(%rsp)
  movsd  0x150(%rsp),%xmm1
  movsd  0x158(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L1759
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L1759
  movsd  0x150(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2221(%rip),%xmm0
  jp     L1759
  jne    L1759
  movsd  0x158(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L1759
  jne    L1759
  movsd  D433(%rip),%xmm0
  movsd  %xmm0,0x38(%rsp)
  movsd  D1810(%rip),%xmm0
  movsd  %xmm0,0x160(%rsp)
  movsd  D1692(%rip),%xmm0
  movsd  %xmm0,0x168(%rsp)
  movsd  0x160(%rsp),%xmm1
  movsd  0x168(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L616
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L616
  movsd  0x160(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2221(%rip),%xmm0
  jp     L616
  jne    L616
  movsd  0x168(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2221(%rip),%xmm0
  jp     L616
  jne    L616
  movsd  0x160(%rsp),%xmm0
  movsd  0x168(%rsp),%xmm1
  movsd  0x38(%rsp),%xmm2
  addsd  %xmm2,%xmm0
  movsd  %xmm0,0x170(%rsp)
  movsd  %xmm1,0x178(%rsp)
  movsd  0x170(%rsp),%xmm1
  movsd  0x178(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L293
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L293
  movsd  0x170(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2221(%rip),%xmm0
  jp     L293
  jne    L293
  movsd  0x178(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2221(%rip),%xmm0
  jp     L293
  jne    L293
  movsd  D1963(%rip),%xmm0
  movsd  %xmm0,0x180(%rsp)
  movsd  D2231(%rip),%xmm0
  movsd  %xmm0,0x188(%rsp)
  movsd  0x180(%rsp),%xmm1
  movsd  0x188(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L77
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L77
  movsd  0x180(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L77
  jne    L77
  movsd  0x188(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L77
  jne    L77
  movq   $0x0,0x40(%rsp)
  movsd  0x180(%rsp),%xmm0
  movsd  0x188(%rsp),%xmm1
  movsd  0x40(%rsp),%xmm2
  addsd  %xmm2,%xmm0
  movsd  %xmm0,0x190(%rsp)
  movsd  %xmm1,0x198(%rsp)
  movsd  0x190(%rsp),%xmm1
  movsd  0x198(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L178
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L178
  movsd  0x190(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L178
  jne    L178
  movsd  0x198(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L178
  jne    L178
  movsd  D1963(%rip),%xmm0
  movsd  %xmm0,0x1a0(%rsp)
  movsd  D2231(%rip),%xmm0
  movsd  %xmm0,0x1a8(%rsp)
  movsd  0x1a0(%rsp),%xmm1
  movsd  0x1a8(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L430
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L430
  movsd  0x1a0(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L430
  jne    L430
  movsd  0x1a8(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L430
  jne    L430
  movsd  D433(%rip),%xmm0
  movsd  %xmm0,0x48(%rsp)
  movsd  0x1a0(%rsp),%xmm0
  movsd  0x1a8(%rsp),%xmm1
  movsd  0x48(%rsp),%xmm2
  addsd  %xmm2,%xmm0
  movsd  %xmm0,0x1b0(%rsp)
  movsd  %xmm1,0x1b8(%rsp)
  movsd  0x1b0(%rsp),%xmm1
  movsd  0x1b8(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L349
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L349
  movsd  0x1b0(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L349
  jne    L349
  movsd  0x1b8(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L349
  jne    L349
  movsd  D261(%rip),%xmm0
  movsd  %xmm0,0x1c0(%rsp)
  movsd  D1184(%rip),%xmm0
  movsd  %xmm0,0x1c8(%rsp)
  movsd  0x1c0(%rsp),%xmm1
  movsd  0x1c8(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L1368
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L1368
  movsd  0x1c0(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L1368
  jne    L1368
  movsd  0x1c8(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2221(%rip),%xmm0
  jp     L1368
  jne    L1368
  movq   $0x0,0x50(%rsp)
  movsd  0x1c0(%rsp),%xmm0
  movsd  0x1c8(%rsp),%xmm1
  movsd  0x50(%rsp),%xmm2
  addsd  %xmm2,%xmm0
  movsd  %xmm0,0x1d0(%rsp)
  movsd  %xmm1,0x1d8(%rsp)
  movsd  0x1d0(%rsp),%xmm1
  movsd  0x1d8(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L54
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L54
  movsd  0x1d0(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L54
  jne    L54
  movsd  0x1d8(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2221(%rip),%xmm0
  jp     L54
  jne    L54
  movsd  D261(%rip),%xmm0
  movsd  %xmm0,0x1e0(%rsp)
  movsd  D1184(%rip),%xmm0
  movsd  %xmm0,0x1e8(%rsp)
  movsd  0x1e0(%rsp),%xmm1
  movsd  0x1e8(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L1052
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L1052
  movsd  0x1e0(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L1052
  jne    L1052
  movsd  0x1e8(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2221(%rip),%xmm0
  jp     L1052
  jne    L1052
  movsd  D433(%rip),%xmm0
  movsd  %xmm0,0x58(%rsp)
  movsd  0x1e0(%rsp),%xmm0
  movsd  0x1e8(%rsp),%xmm1
  movsd  0x58(%rsp),%xmm2
  addsd  %xmm2,%xmm0
  movsd  %xmm0,0x1f0(%rsp)
  movsd  %xmm1,0x1f8(%rsp)
  movsd  0x1f0(%rsp),%xmm1
  movsd  0x1f8(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L313
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L313
  movsd  0x1f0(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L313
  jne    L313
  movsd  0x1f8(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2221(%rip),%xmm0
  jp     L313
  jne    L313
  movsd  D47(%rip),%xmm0
  movsd  %xmm0,0x200(%rsp)
  movsd  D576(%rip),%xmm0
  movsd  %xmm0,0x208(%rsp)
  movsd  0x200(%rsp),%xmm1
  movsd  0x208(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L1468
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L1468
  movsd  0x200(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2221(%rip),%xmm0
  jp     L1468
  jne    L1468
  movsd  0x208(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L1468
  jne    L1468
  movq   $0x0,0x60(%rsp)
  movsd  0x200(%rsp),%xmm0
  movsd  0x208(%rsp),%xmm1
  movsd  0x60(%rsp),%xmm2
  addsd  %xmm2,%xmm0
  movsd  %xmm0,0x210(%rsp)
  movsd  %xmm1,0x218(%rsp)
  movsd  0x210(%rsp),%xmm1
  movsd  0x218(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L958
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L958
  movsd  0x210(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L958
  jne    L958
  movsd  0x218(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L958
  jne    L958
  movsd  D47(%rip),%xmm0
  movsd  %xmm0,0x220(%rsp)
  movsd  D576(%rip),%xmm0
  movsd  %xmm0,0x228(%rsp)
  movsd  0x220(%rsp),%xmm1
  movsd  0x228(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L1443
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L1443
  movsd  0x220(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2221(%rip),%xmm0
  jp     L1443
  jne    L1443
  movsd  0x228(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L1443
  jne    L1443
  movsd  D433(%rip),%xmm0
  movsd  %xmm0,0x68(%rsp)
  movsd  0x220(%rsp),%xmm0
  movsd  0x228(%rsp),%xmm1
  movsd  0x68(%rsp),%xmm2
  addsd  %xmm2,%xmm0
  movsd  %xmm0,0x230(%rsp)
  movsd  %xmm1,0x238(%rsp)
  movsd  0x230(%rsp),%xmm1
  movsd  0x238(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L1709
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L1709
  movsd  0x230(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2221(%rip),%xmm0
  jp     L1709
  jne    L1709
  movsd  0x238(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L1709
  jne    L1709
  movsd  D1810(%rip),%xmm0
  movsd  %xmm0,0x240(%rsp)
  movsd  D1692(%rip),%xmm0
  movsd  %xmm0,0x248(%rsp)
  movsd  0x240(%rsp),%xmm1
  movsd  0x248(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L805
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L805
  movsd  0x240(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2221(%rip),%xmm0
  jp     L805
  jne    L805
  movsd  0x248(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2221(%rip),%xmm0
  jp     L805
  jne    L805
  movq   $0x0,0x70(%rsp)
  movsd  0x240(%rsp),%xmm0
  movsd  0x248(%rsp),%xmm1
  movsd  0x70(%rsp),%xmm2
  addsd  %xmm2,%xmm0
  movsd  %xmm0,0x250(%rsp)
  movsd  %xmm1,0x258(%rsp)
  movsd  0x250(%rsp),%xmm1
  movsd  0x258(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L492
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L492
  movsd  0x250(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2045(%rip),%xmm0
  jp     L492
  jne    L492
  movsd  0x258(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2221(%rip),%xmm0
  jp     L492
  jne    L492
  movsd  D1810(%rip),%xmm0
  movsd  %xmm0,0x260(%rsp)
  movsd  D1692(%rip),%xmm0
  movsd  %xmm0,0x268(%rsp)
  movsd  0x260(%rsp),%xmm1
  movsd  0x268(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L1775
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L1775
  movsd  0x260(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2221(%rip),%xmm0
  jp     L1775
  jne    L1775
  movsd  0x268(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2221(%rip),%xmm0
  jp     L1775
  jne    L1775
  movsd  D433(%rip),%xmm0
  movsd  %xmm0,0x78(%rsp)
  movsd  0x260(%rsp),%xmm0
  movsd  0x268(%rsp),%xmm1
  movsd  0x78(%rsp),%xmm2
  addsd  %xmm2,%xmm0
  movsd  %xmm0,0x270(%rsp)
  movsd  %xmm1,0x278(%rsp)
  movsd  0x270(%rsp),%xmm1
  movsd  0x278(%rsp),%xmm0
  ucomisd D1448(%rip),%xmm1
  setp   %al
  mov    $0x1,%edx
  cmovne %edx,%eax
  test   %al,%al
  jne    L357
  ucomisd D1448(%rip),%xmm0
  setp   %al
  cmovne %edx,%eax
  test   %al,%al
  jne    L357
  movsd  0x270(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2221(%rip),%xmm0
  jp     L357
  jne    L357
  movsd  0x278(%rsp),%xmm0
  andpd  D433(%rip),%xmm0
  orpd   D2045(%rip),%xmm0
  ucomisd D2221(%rip),%xmm0
  jp     L357
  jne    L357
  add    $0x288,%rsp
  ret
L1613:
  call   <abort@plt>
L755:
  call   <abort@plt>
L734:
  call   <abort@plt>
L743:
  call   <abort@plt>
L702:
  call   <abort@plt>
L314:
  call   <abort@plt>
L10:
  call   <abort@plt>
L333:
  call   <abort@plt>
L896:
  call   <abort@plt>
L1406:
  call   <abort@plt>
L1360:
  call   <abort@plt>
L861:
  call   <abort@plt>
L179:
  call   <abort@plt>
L1759:
  call   <abort@plt>
L616:
  call   <abort@plt>
L293:
  call   <abort@plt>
L77:
  call   <abort@plt>
L178:
  call   <abort@plt>
L430:
  call   <abort@plt>
L349:
  call   <abort@plt>
L1368:
  call   <abort@plt>
L54:
  call   <abort@plt>
L1052:
  call   <abort@plt>
L313:
  call   <abort@plt>
L1468:
  call   <abort@plt>
L958:
  call   <abort@plt>
L1443:
  call   <abort@plt>
L1709:
  call   <abort@plt>
L805:
  call   <abort@plt>
L492:
  call   <abort@plt>
L1775:
  call   <abort@plt>
L357:
  call   <abort@plt>
```

tool_calls: name: disassemble_data
arguments: label: D1963
datatype: f64
name: disassemble_data
arguments: label: D2231
datatype: f64
name: disassemble_data
arguments: label: D1448
datatype: f64
name: disassemble_data
arguments: label: D433
datatype: byte[16]
name: disassemble_data
arguments: label: D2045
datatype: f64[2]
name: disassemble_data
arguments: label: D261
datatype: f64
name: disassemble_data
arguments: label: D1184
datatype: byte[8]
name: disassemble_data
arguments: label: D2221
datatype: byte[8]
name: disassemble_data
arguments: label: D47
datatype: byte[8]
name: disassemble_data
arguments: label: D576
datatype: f64
name: disassemble_data
arguments: label: D1810
datatype: byte[8]
name: disassemble_data
arguments: label: D1692
datatype: byte[8]

tool: D1963: 0

tool: D2231: 0

tool: D1448: 0

tool: {"D433": [0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]}

tool: {"D2045": [1.0,0.0]}

tool: D261: 0

tool: {"D1184": [0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80]}

tool: {"D2221": [0x00,0x00,0x00,0x00,0x00,0x00,0xf0,0xbf]}

tool: {"D47": [0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80]}

tool: D576: 0

tool: {"D1810": [0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80]}

tool: {"D1692": [0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80]}

assistant: ```c
void check_add_double(void) {
  do {
    do {
      double a1;
      _Complex double b1, c1;
      volatile double a2;
      volatile _Complex double b2, c2;
      a1 = +0.0;
      b1 = (+1 == 1 ? +1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : +1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((b1) != 0 || __builtin_copysign(1.0, __real__(b1)) != +1.0 || __builtin_copysign(1.0, __imag__(b1)) != +1.0)
          abort();
      } while (0);
      c1 = a1 + b1;
      do {
        if ((c1) != 0 || __builtin_copysign(1.0, __real__(c1)) != +1.0 || __builtin_copysign(1.0, __imag__(c1)) != +1.0)
          abort();
      } while (0);
      a2 = +0.0;
      b2 = (+1 == 1 ? +1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : +1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((b2) != 0 || __builtin_copysign(1.0, __real__(b2)) != +1.0 || __builtin_copysign(1.0, __imag__(b2)) != +1.0)
          abort();
      } while (0);
      c2 = a2 + b2;
      do {
        if ((c2) != 0 || __builtin_copysign(1.0, __real__(c2)) != +1.0 || __builtin_copysign(1.0, __imag__(c2)) != +1.0)
          abort();
      } while (0);
    } while (0);
    do {
      double a1;
      _Complex double b1, c1;
      volatile double a2;
      volatile _Complex double b2, c2;
      a1 = +0.0;
      b1 = (+1 == 1 ? -1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : -1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((b1) != 0 || __builtin_copysign(1.0, __real__(b1)) != +1.0 || __builtin_copysign(1.0, __imag__(b1)) != -1.0)
          abort();
      } while (0);
      c1 = a1 + b1;
      do {
        if ((c1) != 0 || __builtin_copysign(1.0, __real__(c1)) != +1.0 || __builtin_copysign(1.0, __imag__(c1)) != -1.0)
          abort();
      } while (0);
      a2 = +0.0;
      b2 = (+1 == 1 ? -1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : -1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((b2) != 0 || __builtin_copysign(1.0, __real__(b2)) != +1.0 || __builtin_copysign(1.0, __imag__(b2)) != -1.0)
          abort();
      } while (0);
      c2 = a2 + b2;
      do {
        if ((c2) != 0 || __builtin_copysign(1.0, __real__(c2)) != +1.0 || __builtin_copysign(1.0, __imag__(c2)) != -1.0)
          abort();
      } while (0);
    } while (0);
    do {
      double a1;
      _Complex double b1, c1;
      volatile double a2;
      volatile _Complex double b2, c2;
      a1 = +0.0;
      b1 = (-1 == 1 ? +1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : +1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((b1) != 0 || __builtin_copysign(1.0, __real__(b1)) != -1.0 || __builtin_copysign(1.0, __imag__(b1)) != +1.0)
          abort();
      } while (0);
      c1 = a1 + b1;
      do {
        if ((c1) != 0 || __builtin_copysign(1.0, __real__(c1)) != +1.0 || __builtin_copysign(1.0, __imag__(c1)) != +1.0)
          abort();
      } while (0);
      a2 = +0.0;
      b2 = (-1 == 1 ? +1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : +1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((b2) != 0 || __builtin_copysign(1.0, __real__(b2)) != -1.0 || __builtin_copysign(1.0, __imag__(b2)) != +1.0)
          abort();
      } while (0);
      c2 = a2 + b2;
      do {
        if ((c2) != 0 || __builtin_copysign(1.0, __real__(c2)) != +1.0 || __builtin_copysign(1.0, __imag__(c2)) != +1.0)
          abort();
      } while (0);
    } while (0);
    do {
      double a1;
      _Complex double b1, c1;
      volatile double a2;
      volatile _Complex double b2, c2;
      a1 = +0.0;
      b1 = (-1 == 1 ? -1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : -1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((b1) != 0 || __builtin_copysign(1.0, __real__(b1)) != -1.0 || __builtin_copysign(1.0, __imag__(b1)) != -1.0)
          abort();
      } while (0);
      c1 = a1 + b1;
      do {
        if ((c1) != 0 || __builtin_copysign(1.0, __real__(c1)) != +1.0 || __builtin_copysign(1.0, __imag__(c1)) != -1.0)
          abort();
      } while (0);
      a2 = +0.0;
      b2 = (-1 == 1 ? -1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : -1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((b2) != 0 || __builtin_copysign(1.0, __real__(b2)) != -1.0 || __builtin_copysign(1.0, __imag__(b2)) != -1.0)
          abort();
      } while (0);
      c2 = a2 + b2;
      do {
        if ((c2) != 0 || __builtin_copysign(1.0, __real__(c2)) != +1.0 || __builtin_copysign(1.0, __imag__(c2)) != -1.0)
          abort();
      } while (0);
    } while (0);
    do {
      double a1;
      _Complex double b1, c1;
      volatile double a2;
      volatile _Complex double b2, c2;
      a1 = -0.0;
      b1 = (+1 == 1 ? +1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : +1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((b1) != 0 || __builtin_copysign(1.0, __real__(b1)) != +1.0 || __builtin_copysign(1.0, __imag__(b1)) != +1.0)
          abort();
      } while (0);
      c1 = a1 + b1;
      do {
        if ((c1) != 0 || __builtin_copysign(1.0, __real__(c1)) != +1.0 || __builtin_copysign(1.0, __imag__(c1)) != +1.0)
          abort();
      } while (0);
      a2 = -0.0;
      b2 = (+1 == 1 ? +1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : +1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((b2) != 0 || __builtin_copysign(1.0, __real__(b2)) != +1.0 || __builtin_copysign(1.0, __imag__(b2)) != +1.0)
          abort();
      } while (0);
      c2 = a2 + b2;
      do {
        if ((c2) != 0 || __builtin_copysign(1.0, __real__(c2)) != +1.0 || __builtin_copysign(1.0, __imag__(c2)) != +1.0)
          abort();
      } while (0);
    } while (0);
    do {
      double a1;
      _Complex double b1, c1;
      volatile double a2;
      volatile _Complex double b2, c2;
      a1 = -0.0;
      b1 = (+1 == 1 ? -1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : -1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((b1) != 0 || __builtin_copysign(1.0, __real__(b1)) != +1.0 || __builtin_copysign(1.0, __imag__(b1)) != -1.0)
          abort();
      } while (0);
      c1 = a1 + b1;
      do {
        if ((c1) != 0 || __builtin_copysign(1.0, __real__(c1)) != +1.0 || __builtin_copysign(1.0, __imag__(c1)) != -1.0)
          abort();
      } while (0);
      a2 = -0.0;
      b2 = (+1 == 1 ? -1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : -1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((b2) != 0 || __builtin_copysign(1.0, __real__(b2)) != +1.0 || __builtin_copysign(1.0, __imag__(b2)) != -1.0)
          abort();
      } while (0);
      c2 = a2 + b2;
      do {
        if ((c2) != 0 || __builtin_copysign(1.0, __real__(c2)) != +1.0 || __builtin_copysign(1.0, __imag__(c2)) != -1.0)
          abort();
      } while (0);
    } while (0);
    do {
      double a1;
      _Complex double b1, c1;
      volatile double a2;
      volatile _Complex double b2, c2;
      a1 = -0.0;
      b1 = (-1 == 1 ? +1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : +1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((b1) != 0 || __builtin_copysign(1.0, __real__(b1)) != -1.0 || __builtin_copysign(1.0, __imag__(b1)) != +1.0)
          abort();
      } while (0);
      c1 = a1 + b1;
      do {
        if ((c1) != 0 || __builtin_copysign(1.0, __real__(c1)) != -1.0 || __builtin_copysign(1.0, __imag__(c1)) != +1.0)
          abort();
      } while (0);
      a2 = -0.0;
      b2 = (-1 == 1 ? +1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : +1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((b2) != 0 || __builtin_copysign(1.0, __real__(b2)) != -1.0 || __builtin_copysign(1.0, __imag__(b2)) != +1.0)
          abort();
      } while (0);
      c2 = a2 + b2;
      do {
        if ((c2) != 0 || __builtin_copysign(1.0, __real__(c2)) != -1.0 || __builtin_copysign(1.0, __imag__(c2)) != +1.0)
          abort();
      } while (0);
    } while (0);
    do {
      double a1;
      _Complex double b1, c1;
      volatile double a2;
      volatile _Complex double b2, c2;
      a1 = -0.0;
      b1 = (-1 == 1 ? -1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : -1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((b1) != 0 || __builtin_copysign(1.0, __real__(b1)) != -1.0 || __builtin_copysign(1.0, __imag__(b1)) != -1.0)
          abort();
      } while (0);
      c1 = a1 + b1;
      do {
        if ((c1) != 0 || __builtin_copysign(1.0, __real__(c1)) != -1.0 || __builtin_copysign(1.0, __imag__(c1)) != -1.0)
          abort();
      } while (0);
      a2 = -0.0;
      b2 = (-1 == 1 ? -1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : -1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((b2) != 0 || __builtin_copysign(1.0, __real__(b2)) != -1.0 || __builtin_copysign(1.0, __imag__(b2)) != -1.0)
          abort();
      } while (0);
      c2 = a2 + b2;
      do {
        if ((c2) != 0 || __builtin_copysign(1.0, __real__(c2)) != -1.0 || __builtin_copysign(1.0, __imag__(c2)) != -1.0)
          abort();
      } while (0);
    } while (0);
    do {
      _Complex double a1, c1;
      double b1;
      volatile _Complex double a2, c2;
      volatile double b2;
      a1 = (+1 == 1 ? +1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : +1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((a1) != 0 || __builtin_copysign(1.0, __real__(a1)) != +1.0 || __builtin_copysign(1.0, __imag__(a1)) != +1.0)
          abort();
      } while (0);
      b1 = +0.0;
      c1 = a1 + b1;
      do {
        if ((c1) != 0 || __builtin_copysign(1.0, __real__(c1)) != +1.0 || __builtin_copysign(1.0, __imag__(c1)) != +1.0)
          abort();
      } while (0);
      a2 = (+1 == 1 ? +1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : +1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((a2) != 0 || __builtin_copysign(1.0, __real__(a2)) != +1.0 || __builtin_copysign(1.0, __imag__(a2)) != +1.0)
          abort();
      } while (0);
      b2 = +0.0;
      c2 = a2 + b2;
      do {
        if ((c2) != 0 || __builtin_copysign(1.0, __real__(c2)) != +1.0 || __builtin_copysign(1.0, __imag__(c2)) != +1.0)
          abort();
      } while (0);
    } while (0);
    do {
      _Complex double a1, c1;
      double b1;
      volatile _Complex double a2, c2;
      volatile double b2;
      a1 = (+1 == 1 ? +1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : +1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((a1) != 0 || __builtin_copysign(1.0, __real__(a1)) != +1.0 || __builtin_copysign(1.0, __imag__(a1)) != +1.0)
          abort();
      } while (0);
      b1 = -0.0;
      c1 = a1 + b1;
      do {
        if ((c1) != 0 || __builtin_copysign(1.0, __real__(c1)) != +1.0 || __builtin_copysign(1.0, __imag__(c1)) != +1.0)
          abort();
      } while (0);
      a2 = (+1 == 1 ? +1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : +1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((a2) != 0 || __builtin_copysign(1.0, __real__(a2)) != +1.0 || __builtin_copysign(1.0, __imag__(a2)) != +1.0)
          abort();
      } while (0);
      b2 = -0.0;
      c2 = a2 + b2;
      do {
        if ((c2) != 0 || __builtin_copysign(1.0, __real__(c2)) != +1.0 || __builtin_copysign(1.0, __imag__(c2)) != +1.0)
          abort();
      } while (0);
    } while (0);
    do {
      _Complex double a1, c1;
      double b1;
      volatile _Complex double a2, c2;
      volatile double b2;
      a1 = (+1 == 1 ? -1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : -1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((a1) != 0 || __builtin_copysign(1.0, __real__(a1)) != +1.0 || __builtin_copysign(1.0, __imag__(a1)) != -1.0)
          abort();
      } while (0);
      b1 = +0.0;
      c1 = a1 + b1;
      do {
        if ((c1) != 0 || __builtin_copysign(1.0, __real__(c1)) != +1.0 || __builtin_copysign(1.0, __imag__(c1)) != -1.0)
          abort();
      } while (0);
      a2 = (+1 == 1 ? -1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : -1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((a2) != 0 || __builtin_copysign(1.0, __real__(a2)) != +1.0 || __builtin_copysign(1.0, __imag__(a2)) != -1.0)
          abort();
      } while (0);
      b2 = +0.0;
      c2 = a2 + b2;
      do {
        if ((c2) != 0 || __builtin_copysign(1.0, __real__(c2)) != +1.0 || __builtin_copysign(1.0, __imag__(c2)) != -1.0)
          abort();
      } while (0);
    } while (0);
    do {
      _Complex double a1, c1;
      double b1;
      volatile _Complex double a2, c2;
      volatile double b2;
      a1 = (+1 == 1 ? -1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : -1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((a1) != 0 || __builtin_copysign(1.0, __real__(a1)) != +1.0 || __builtin_copysign(1.0, __imag__(a1)) != -1.0)
          abort();
      } while (0);
      b1 = -0.0;
      c1 = a1 + b1;
      do {
        if ((c1) != 0 || __builtin_copysign(1.0, __real__(c1)) != +1.0 || __builtin_copysign(1.0, __imag__(c1)) != -1.0)
          abort();
      } while (0);
      a2 = (+1 == 1 ? -1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : -1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((a2) != 0 || __builtin_copysign(1.0, __real__(a2)) != +1.0 || __builtin_copysign(1.0, __imag__(a2)) != -1.0)
          abort();
      } while (0);
      b2 = -0.0;
      c2 = a2 + b2;
      do {
        if ((c2) != 0 || __builtin_copysign(1.0, __real__(c2)) != +1.0 || __builtin_copysign(1.0, __imag__(c2)) != -1.0)
          abort();
      } while (0);
    } while (0);
    do {
      _Complex double a1, c1;
      double b1;
      volatile _Complex double a2, c2;
      volatile double b2;
      a1 = (-1 == 1 ? +1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : +1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((a1) != 0 || __builtin_copysign(1.0, __real__(a1)) != -1.0 || __builtin_copysign(1.0, __imag__(a1)) != +1.0)
          abort();
      } while (0);
      b1 = +0.0;
      c1 = a1 + b1;
      do {
        if ((c1) != 0 || __builtin_copysign(1.0, __real__(c1)) != +1.0 || __builtin_copysign(1.0, __imag__(c1)) != +1.0)
          abort();
      } while (0);
      a2 = (-1 == 1 ? +1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : +1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((a2) != 0 || __builtin_copysign(1.0, __real__(a2)) != -1.0 || __builtin_copysign(1.0, __imag__(a2)) != +1.0)
          abort();
      } while (0);
      b2 = +0.0;
      c2 = a2 + b2;
      do {
        if ((c2) != 0 || __builtin_copysign(1.0, __real__(c2)) != +1.0 || __builtin_copysign(1.0, __imag__(c2)) != +1.0)
          abort();
      } while (0);
    } while (0);
    do {
      _Complex double a1, c1;
      double b1;
      volatile _Complex double a2, c2;
      volatile double b2;
      a1 = (-1 == 1 ? +1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : +1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((a1) != 0 || __builtin_copysign(1.0, __real__(a1)) != -1.0 || __builtin_copysign(1.0, __imag__(a1)) != +1.0)
          abort();
      } while (0);
      b1 = -0.0;
      c1 = a1 + b1;
      do {
        if ((c1) != 0 || __builtin_copysign(1.0, __real__(c1)) != -1.0 || __builtin_copysign(1.0, __imag__(c1)) != +1.0)
          abort();
      } while (0);
      a2 = (-1 == 1 ? +1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : +1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((a2) != 0 || __builtin_copysign(1.0, __real__(a2)) != -1.0 || __builtin_copysign(1.0, __imag__(a2)) != +1.0)
          abort();
      } while (0);
      b2 = -0.0;
      c2 = a2 + b2;
      do {
        if ((c2) != 0 || __builtin_copysign(1.0, __real__(c2)) != -1.0 || __builtin_copysign(1.0, __imag__(c2)) != +1.0)
          abort();
      } while (0);
    } while (0);
    do {
      _Complex double a1, c1;
      double b1;
      volatile _Complex double a2, c2;
      volatile double b2;
      a1 = (-1 == 1 ? -1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : -1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((a1) != 0 || __builtin_copysign(1.0, __real__(a1)) != -1.0 || __builtin_copysign(1.0, __imag__(a1)) != -1.0)
          abort();
      } while (0);
      b1 = +0.0;
      c1 = a1 + b1;
      do {
        if ((c1) != 0 || __builtin_copysign(1.0, __real__(c1)) != +1.0 || __builtin_copysign(1.0, __imag__(c1)) != -1.0)
          abort();
      } while (0);
      a2 = (-1 == 1 ? -1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : -1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((a2) != 0 || __builtin_copysign(1.0, __real__(a2)) != -1.0 || __builtin_copysign(1.0, __imag__(a2)) != -1.0)
          abort();
      } while (0);
      b2 = +0.0;
      c2 = a2 + b2;
      do {
        if ((c2) != 0 || __builtin_copysign(1.0, __real__(c2)) != +1.0 || __builtin_copysign(1.0, __imag__(c2)) != -1.0)
          abort();
      } while (0);
    } while (0);
    do {
      _Complex double a1, c1;
      double b1;
      volatile _Complex double a2, c2;
      volatile double b2;
      a1 = (-1 == 1 ? -1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : -1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((a1) != 0 || __builtin_copysign(1.0, __real__(a1)) != -1.0 || __builtin_copysign(1.0, __imag__(a1)) != -1.0)
          abort();
      } while (0);
      b1 = -0.0;
      c1 = a1 + b1;
      do {
        if ((c1) != 0 || __builtin_copysign(1.0, __real__(c1)) != -1.0 || __builtin_copysign(1.0, __imag__(c1)) != -1.0)
          abort();
      } while (0);
      a2 = (-1 == 1 ? -1 == 1 ? 0.0 + 0.0i : 0.0 - 0.0i : -1 == 1 ? -(0.0 - 0.0i) : -(0.0 + 0.0i));
      do {
        if ((a2) != 0 || __builtin_copysign(1.0, __real__(a2)) != -1.0 || __builtin_copysign(1.0, __imag__(a2)) != -1.0)
          abort();
      } while (0);
      b2 = -0.0;
      c2 = a2 + b2;
      do {
        if ((c2) != 0 || __builtin_copysign(1.0, __real__(c2)) != -1.0 || __builtin_copysign(1.0, __imag__(c2)) != -1.0)
          abort();
      } while (0);
    } while (0);
  } while (0);
}
```