user: 提供的汇编代码用C语言表示会是什么样子：

```asm
<test_add>:
  endbr64
  push   %r15
  mov    %rsi,%r10
  mov    %r8,%r15
  mov    %rcx,%rsi
  push   %r14
  push   %r13
  push   %r12
  push   %rbp
  push   %rbx
  mov    (%rdi),%rax
  mov    0x40(%rsp),%r14
  mov    %rdx,-0x10(%rsp)
  test   %rax,%rax
  je     L428
  movabs $0x400000000,%r13
  pxor   %xmm0,%xmm0
  xor    %ecx,%ecx
  movabs $0x800000000,%r12
  movss  %xmm0,-0x14(%rsp)
  movaps %xmm0,%xmm3
  movaps %xmm0,%xmm4
  movaps %xmm0,%xmm5
  movss  %xmm0,-0x18(%rsp)
  movaps %xmm0,%xmm6
  movaps %xmm0,%xmm7
  movaps %xmm0,%xmm8
  movss  %xmm0,-0x1c(%rsp)
  movaps %xmm0,%xmm9
  movaps %xmm0,%xmm10
  movaps %xmm0,%xmm11
  movss  %xmm0,-0x20(%rsp)
  movaps %xmm0,%xmm12
  movaps %xmm0,%xmm13
  movaps %xmm0,%xmm2
  movss  %xmm0,-0x24(%rsp)
  movaps %xmm0,%xmm14
  movaps %xmm0,%xmm15
  movabs $0x1000000000,%rbp
  movss  %xmm0,-0x28(%rsp)
  movabs $0x2000000000,%rbx
  movabs $0x4000000000,%r11
  movabs $0x8000000000,%r8
  movss  %xmm0,-0x2c(%rsp)
  movss  %xmm0,-0x30(%rsp)
  movss  %xmm0,-0x34(%rsp)
  movss  %xmm0,-0x38(%rsp)
  movss  %xmm0,-0x3c(%rsp)
  movss  %xmm0,-0x40(%rsp)
  movss  %xmm0,-0x44(%rsp)
  movss  %xmm0,-0x48(%rsp)
  movss  %xmm0,-0x4c(%rsp)
  movss  %xmm0,-0x50(%rsp)
  movss  %xmm0,-0x54(%rsp)
  movss  %xmm0,-0x58(%rsp)
  movss  %xmm0,-0x5c(%rsp)
  movss  %xmm0,-0x60(%rsp)
  movss  %xmm0,-0x64(%rsp)
  movss  %xmm0,-0x68(%rsp)
  movss  %xmm0,-0x6c(%rsp)
  movss  %xmm0,-0x70(%rsp)
  movss  %xmm0,-0x74(%rsp)
  movss  %xmm0,-0x8(%rsp)
  movss  %xmm0,-0x4(%rsp)
  nopl   0x0(%rax,%rax,1)
L1527:
  movss  (%r10,%rcx,1),%xmm0
  movd   %xmm0,%edx
  movd   %edx,%xmm0
  test   $0x1,%al
  je     L199
  addss  %xmm0,%xmm15
L199:
  test   $0x2,%al
  je     L592
  addss  %xmm0,%xmm2
L592:
  test   $0x4,%al
  je     L2022
  addss  %xmm0,%xmm14
L2022:
  test   $0x8,%al
  je     L97
  addss  %xmm0,%xmm13
L97:
  test   $0x10,%al
  je     L272
  addss  %xmm0,%xmm12
L272:
  test   $0x20,%al
  je     L380
  addss  %xmm0,%xmm11
L380:
  test   $0x40,%al
  je     L1659
  addss  %xmm0,%xmm10
L1659:
  test   $0x80,%al
  je     L1780
  addss  %xmm0,%xmm9
L1780:
  test   $0x1,%ah
  je     L757
  addss  %xmm0,%xmm8
L757:
  test   $0x2,%ah
  je     L371
  addss  %xmm0,%xmm7
L371:
  test   $0x4,%ah
  je     L1154
  addss  %xmm0,%xmm6
L1154:
  test   $0x8,%ah
  je     L1971
  addss  %xmm0,%xmm5
L1971:
  test   $0x10,%ah
  je     L1958
  addss  %xmm0,%xmm4
L1958:
  test   $0x20,%ah
  je     L462
  addss  %xmm0,%xmm3
L462:
  test   $0x40,%ah
  je     L1825
  movss  -0x74(%rsp),%xmm1
  addss  %xmm0,%xmm1
  movss  %xmm1,-0x74(%rsp)
L1825:
  test   $0x80,%ah
  je     L502
  movss  -0x70(%rsp),%xmm1
  addss  %xmm0,%xmm1
  movss  %xmm1,-0x70(%rsp)
L502:
  test   $0x10000,%eax
  je     L1039
  movss  -0x6c(%rsp),%xmm1
  addss  %xmm0,%xmm1
  movss  %xmm1,-0x6c(%rsp)
L1039:
  test   $0x20000,%eax
  je     L1378
  movss  -0x68(%rsp),%xmm1
  addss  %xmm0,%xmm1
  movss  %xmm1,-0x68(%rsp)
L1378:
  test   $0x40000,%eax
  je     L1648
  movss  -0x64(%rsp),%xmm1
  addss  %xmm0,%xmm1
  movss  %xmm1,-0x64(%rsp)
L1648:
  test   $0x80000,%eax
  je     L324
  movss  -0x60(%rsp),%xmm1
  addss  %xmm0,%xmm1
  movss  %xmm1,-0x60(%rsp)
L324:
  test   $0x100000,%eax
  je     L1337
  movss  -0x5c(%rsp),%xmm1
  addss  %xmm0,%xmm1
  movss  %xmm1,-0x5c(%rsp)
L1337:
  test   $0x200000,%eax
  je     L1558
  movss  -0x58(%rsp),%xmm1
  addss  %xmm0,%xmm1
  movss  %xmm1,-0x58(%rsp)
L1558:
  test   $0x400000,%eax
  je     L825
  movss  -0x54(%rsp),%xmm1
  addss  %xmm0,%xmm1
  movss  %xmm1,-0x54(%rsp)
L825:
  test   $0x800000,%eax
  je     L1792
  movss  -0x50(%rsp),%xmm1
  addss  %xmm0,%xmm1
  movss  %xmm1,-0x50(%rsp)
L1792:
  test   $0x1000000,%eax
  je     L157
  movss  -0x4c(%rsp),%xmm1
  addss  %xmm0,%xmm1
  movss  %xmm1,-0x4c(%rsp)
L157:
  test   $0x2000000,%eax
  je     L721
  movss  -0x48(%rsp),%xmm1
  addss  %xmm0,%xmm1
  movss  %xmm1,-0x48(%rsp)
L721:
  test   $0x4000000,%eax
  je     L106
  movss  -0x44(%rsp),%xmm1
  addss  %xmm0,%xmm1
  movss  %xmm1,-0x44(%rsp)
L106:
  test   $0x8000000,%eax
  je     L566
  movss  -0x40(%rsp),%xmm1
  addss  %xmm0,%xmm1
  movss  %xmm1,-0x40(%rsp)
L566:
  test   $0x10000000,%eax
  je     L872
  movss  -0x3c(%rsp),%xmm1
  addss  %xmm0,%xmm1
  movss  %xmm1,-0x3c(%rsp)
L872:
  test   $0x20000000,%eax
  je     L133
  movss  -0x38(%rsp),%xmm1
  addss  %xmm0,%xmm1
  movss  %xmm1,-0x38(%rsp)
L133:
  test   $0x40000000,%eax
  je     L1691
  movss  -0x34(%rsp),%xmm1
  addss  %xmm0,%xmm1
  movss  %xmm1,-0x34(%rsp)
L1691:
  test   $0x80000000,%eax
  je     L731
  movss  -0x30(%rsp),%xmm1
  addss  %xmm0,%xmm1
  movss  %xmm1,-0x30(%rsp)
L731:
  movabs $0x100000000,%rdx
  test   %rdx,%rax
  je     L552
  movss  -0x2c(%rsp),%xmm1
  addss  %xmm0,%xmm1
  movss  %xmm1,-0x2c(%rsp)
L552:
  movabs $0x200000000,%rdx
  test   %rdx,%rax
  je     L714
  movss  -0x28(%rsp),%xmm1
  addss  %xmm0,%xmm1
  movss  %xmm1,-0x28(%rsp)
L714:
  test   %r13,%rax
  je     L109
  movss  -0x24(%rsp),%xmm1
  addss  %xmm0,%xmm1
  movss  %xmm1,-0x24(%rsp)
L109:
  test   %r12,%rax
  je     L439
  movss  -0x20(%rsp),%xmm1
  addss  %xmm0,%xmm1
  movss  %xmm1,-0x20(%rsp)
L439:
  test   %rbp,%rax
  je     L441
  movss  -0x1c(%rsp),%xmm1
  addss  %xmm0,%xmm1
  movss  %xmm1,-0x1c(%rsp)
L441:
  test   %rbx,%rax
  je     L1528
  movss  -0x18(%rsp),%xmm1
  addss  %xmm0,%xmm1
  movss  %xmm1,-0x18(%rsp)
L1528:
  test   %r11,%rax
  je     L1206
  movss  -0x8(%rsp),%xmm1
  addss  %xmm0,%xmm1
  movss  %xmm1,-0x8(%rsp)
L1206:
  test   %r8,%rax
  je     L286
  addss  -0x14(%rsp),%xmm0
  movss  %xmm0,-0x14(%rsp)
L286:
  add    $0x4,%rcx
  mov    (%rdi,%rcx,2),%rax
  test   %rax,%rax
  jne    L1527
  movss  -0x4(%rsp),%xmm0
L1443:
  mov    -0x10(%rsp),%rdx
  mov    (%rdx),%rax
  test   %rax,%rax
  je     L1747
  mov    %r15,-0x10(%rsp)
  xor    %ecx,%ecx
  mov    %rdx,%r15
  movabs $0x100000000,%r13
  movabs $0x200000000,%r12
  movss  %xmm0,-0x4(%rsp)
  movabs $0x400000000,%rbp
  movabs $0x800000000,%rbx
  movabs $0x1000000000,%r11
  movabs $0x2000000000,%r10
  movabs $0x4000000000,%r8
  movabs $0x8000000000,%rdi
  xchg   %ax,%ax
L2096:
  movss  (%rsi,%rcx,1),%xmm0
  movd   %xmm0,%edx
  movd   %edx,%xmm0
  test   $0x1,%al
  je     L822
  subss  %xmm0,%xmm15
L822:
  test   $0x2,%al
  je     L1585
  subss  %xmm0,%xmm2
L1585:
  test   $0x4,%al
  je     L353
  subss  %xmm0,%xmm14
L353:
  test   $0x8,%al
  je     L194
  subss  %xmm0,%xmm13
L194:
  test   $0x10,%al
  je     L957
  subss  %xmm0,%xmm12
L957:
  test   $0x20,%al
  je     L663
  subss  %xmm0,%xmm11
L663:
  test   $0x40,%al
  je     L1306
  subss  %xmm0,%xmm10
L1306:
  test   $0x80,%al
  je     L716
  subss  %xmm0,%xmm9
L716:
  test   $0x1,%ah
  je     L1960
  subss  %xmm0,%xmm8
L1960:
  test   $0x2,%ah
  je     L1096
  subss  %xmm0,%xmm7
L1096:
  test   $0x4,%ah
  je     L1810
  subss  %xmm0,%xmm6
L1810:
  test   $0x8,%ah
  je     L1842
  subss  %xmm0,%xmm5
L1842:
  test   $0x10,%ah
  je     L1969
  subss  %xmm0,%xmm4
L1969:
  test   $0x20,%ah
  je     L751
  subss  %xmm0,%xmm3
L751:
  test   $0x40,%ah
  je     L1189
  movss  -0x74(%rsp),%xmm1
  subss  %xmm0,%xmm1
  movss  %xmm1,-0x74(%rsp)
L1189:
  test   $0x80,%ah
  je     L1933
  movss  -0x70(%rsp),%xmm1
  subss  %xmm0,%xmm1
  movss  %xmm1,-0x70(%rsp)
L1933:
  test   $0x10000,%eax
  je     L188
  movss  -0x6c(%rsp),%xmm1
  subss  %xmm0,%xmm1
  movss  %xmm1,-0x6c(%rsp)
L188:
  test   $0x20000,%eax
  je     L1285
  movss  -0x68(%rsp),%xmm1
  subss  %xmm0,%xmm1
  movss  %xmm1,-0x68(%rsp)
L1285:
  test   $0x40000,%eax
  je     L1598
  movss  -0x64(%rsp),%xmm1
  subss  %xmm0,%xmm1
  movss  %xmm1,-0x64(%rsp)
L1598:
  test   $0x80000,%eax
  je     L244
  movss  -0x60(%rsp),%xmm1
  subss  %xmm0,%xmm1
  movss  %xmm1,-0x60(%rsp)
L244:
  test   $0x100000,%eax
  je     L313
  movss  -0x5c(%rsp),%xmm1
  subss  %xmm0,%xmm1
  movss  %xmm1,-0x5c(%rsp)
L313:
  test   $0x200000,%eax
  je     L1896
  movss  -0x58(%rsp),%xmm1
  subss  %xmm0,%xmm1
  movss  %xmm1,-0x58(%rsp)
L1896:
  test   $0x400000,%eax
  je     L523
  movss  -0x54(%rsp),%xmm1
  subss  %xmm0,%xmm1
  movss  %xmm1,-0x54(%rsp)
L523:
  test   $0x800000,%eax
  je     L1599
  movss  -0x50(%rsp),%xmm1
  subss  %xmm0,%xmm1
  movss  %xmm1,-0x50(%rsp)
L1599:
  test   $0x1000000,%eax
  je     L1912
  movss  -0x4c(%rsp),%xmm1
  subss  %xmm0,%xmm1
  movss  %xmm1,-0x4c(%rsp)
L1912:
  test   $0x2000000,%eax
  je     L423
  movss  -0x48(%rsp),%xmm1
  subss  %xmm0,%xmm1
  movss  %xmm1,-0x48(%rsp)
L423:
  test   $0x4000000,%eax
  je     L1110
  movss  -0x44(%rsp),%xmm1
  subss  %xmm0,%xmm1
  movss  %xmm1,-0x44(%rsp)
L1110:
  test   $0x8000000,%eax
  je     L15
  movss  -0x40(%rsp),%xmm1
  subss  %xmm0,%xmm1
  movss  %xmm1,-0x40(%rsp)
L15:
  test   $0x10000000,%eax
  je     L530
  movss  -0x3c(%rsp),%xmm1
  subss  %xmm0,%xmm1
  movss  %xmm1,-0x3c(%rsp)
L530:
  test   $0x20000000,%eax
  je     L874
  movss  -0x38(%rsp),%xmm1
  subss  %xmm0,%xmm1
  movss  %xmm1,-0x38(%rsp)
L874:
  test   $0x40000000,%eax
  je     L1600
  movss  -0x34(%rsp),%xmm1
  subss  %xmm0,%xmm1
  movss  %xmm1,-0x34(%rsp)
L1600:
  test   $0x80000000,%eax
  je     L1451
  movss  -0x30(%rsp),%xmm1
  subss  %xmm0,%xmm1
  movss  %xmm1,-0x30(%rsp)
L1451:
  test   %r13,%rax
  je     L1398
  movss  -0x2c(%rsp),%xmm1
  subss  %xmm0,%xmm1
  movss  %xmm1,-0x2c(%rsp)
L1398:
  test   %r12,%rax
  je     L1170
  movss  -0x28(%rsp),%xmm1
  subss  %xmm0,%xmm1
  movss  %xmm1,-0x28(%rsp)
L1170:
  test   %rbp,%rax
  je     L1762
  movss  -0x24(%rsp),%xmm1
  subss  %xmm0,%xmm1
  movss  %xmm1,-0x24(%rsp)
L1762:
  test   %rbx,%rax
  je     L1415
  movss  -0x20(%rsp),%xmm1
  subss  %xmm0,%xmm1
  movss  %xmm1,-0x20(%rsp)
L1415:
  test   %r11,%rax
  je     L1120
  movss  -0x1c(%rsp),%xmm1
  subss  %xmm0,%xmm1
  movss  %xmm1,-0x1c(%rsp)
L1120:
  test   %r10,%rax
  je     L1796
  movss  -0x18(%rsp),%xmm1
  subss  %xmm0,%xmm1
  movss  %xmm1,-0x18(%rsp)
L1796:
  test   %r8,%rax
  je     L979
  movss  -0x8(%rsp),%xmm1
  subss  %xmm0,%xmm1
  movss  %xmm1,-0x8(%rsp)
L979:
  test   %rdi,%rax
  je     L1439
  movss  -0x14(%rsp),%xmm1
  subss  %xmm0,%xmm1
  movss  %xmm1,-0x14(%rsp)
L1439:
  add    $0x4,%rcx
  mov    (%r15,%rcx,2),%rax
  test   %rax,%rax
  jne    L2096
  mov    -0x10(%rsp),%r15
  movss  -0x4(%rsp),%xmm0
L1747:
  mov    (%r15),%rax
  test   %rax,%rax
  je     L691
  xor    %ecx,%ecx
  movss  %xmm0,-0x10(%rsp)
  movabs $0x100000000,%r12
  movabs $0x200000000,%rbp
  movabs $0x400000000,%rbx
  movabs $0x800000000,%r11
  movabs $0x1000000000,%r10
  movabs $0x2000000000,%r8
  movabs $0x4000000000,%rdi
  movabs $0x8000000000,%rsi
  nopl   (%rax)
L1750:
  movss  (%r9,%rcx,1),%xmm0
  movd   %xmm0,%edx
  movd   %edx,%xmm0
  test   $0x1,%al
  je     L1216
  mulss  %xmm0,%xmm15
L1216:
  test   $0x2,%al
  je     L165
  mulss  %xmm0,%xmm2
L165:
  test   $0x4,%al
  je     L185
  mulss  %xmm0,%xmm14
L185:
  test   $0x8,%al
  je     L1947
  mulss  %xmm0,%xmm13
L1947:
  test   $0x10,%al
  je     L934
  mulss  %xmm0,%xmm12
L934:
  test   $0x20,%al
  je     L1622
  mulss  %xmm0,%xmm11
L1622:
  test   $0x40,%al
  je     L713
  mulss  %xmm0,%xmm10
L713:
  test   $0x80,%al
  je     L895
  mulss  %xmm0,%xmm9
L895:
  test   $0x1,%ah
  je     L1846
  mulss  %xmm0,%xmm8
L1846:
  test   $0x2,%ah
  je     L1243
  mulss  %xmm0,%xmm7
L1243:
  test   $0x4,%ah
  je     L444
  mulss  %xmm0,%xmm6
L444:
  test   $0x8,%ah
  je     L1181
  mulss  %xmm0,%xmm5
L1181:
  test   $0x10,%ah
  je     L1185
  mulss  %xmm0,%xmm4
L1185:
  test   $0x20,%ah
  je     L2063
  mulss  %xmm0,%xmm3
L2063:
  test   $0x40,%ah
  je     L1972
  movss  -0x74(%rsp),%xmm1
  mulss  %xmm0,%xmm1
  movss  %xmm1,-0x74(%rsp)
L1972:
  test   $0x80,%ah
  je     L2045
  movss  -0x70(%rsp),%xmm1
  mulss  %xmm0,%xmm1
  movss  %xmm1,-0x70(%rsp)
L2045:
  test   $0x10000,%eax
  je     L1136
  movss  -0x6c(%rsp),%xmm1
  mulss  %xmm0,%xmm1
  movss  %xmm1,-0x6c(%rsp)
L1136:
  test   $0x20000,%eax
  je     L1213
  movss  -0x68(%rsp),%xmm1
  mulss  %xmm0,%xmm1
  movss  %xmm1,-0x68(%rsp)
L1213:
  test   $0x40000,%eax
  je     L1151
  movss  -0x64(%rsp),%xmm1
  mulss  %xmm0,%xmm1
  movss  %xmm1,-0x64(%rsp)
L1151:
  test   $0x80000,%eax
  je     L381
  movss  -0x60(%rsp),%xmm1
  mulss  %xmm0,%xmm1
  movss  %xmm1,-0x60(%rsp)
L381:
  test   $0x100000,%eax
  je     L187
  movss  -0x5c(%rsp),%xmm1
  mulss  %xmm0,%xmm1
  movss  %xmm1,-0x5c(%rsp)
L187:
  test   $0x200000,%eax
  je     L285
  movss  -0x58(%rsp),%xmm1
  mulss  %xmm0,%xmm1
  movss  %xmm1,-0x58(%rsp)
L285:
  test   $0x400000,%eax
  je     L551
  movss  -0x54(%rsp),%xmm1
  mulss  %xmm0,%xmm1
  movss  %xmm1,-0x54(%rsp)
L551:
  test   $0x800000,%eax
  je     L1822
  movss  -0x50(%rsp),%xmm1
  mulss  %xmm0,%xmm1
  movss  %xmm1,-0x50(%rsp)
L1822:
  test   $0x1000000,%eax
  je     L1671
  movss  -0x4c(%rsp),%xmm1
  mulss  %xmm0,%xmm1
  movss  %xmm1,-0x4c(%rsp)
L1671:
  test   $0x2000000,%eax
  je     L529
  movss  -0x48(%rsp),%xmm1
  mulss  %xmm0,%xmm1
  movss  %xmm1,-0x48(%rsp)
L529:
  test   $0x4000000,%eax
  je     L210
  movss  -0x44(%rsp),%xmm1
  mulss  %xmm0,%xmm1
  movss  %xmm1,-0x44(%rsp)
L210:
  test   $0x8000000,%eax
  je     L1757
  movss  -0x40(%rsp),%xmm1
  mulss  %xmm0,%xmm1
  movss  %xmm1,-0x40(%rsp)
L1757:
  test   $0x10000000,%eax
  je     L900
  movss  -0x3c(%rsp),%xmm1
  mulss  %xmm0,%xmm1
  movss  %xmm1,-0x3c(%rsp)
L900:
  test   $0x20000000,%eax
  je     L1544
  movss  -0x38(%rsp),%xmm1
  mulss  %xmm0,%xmm1
  movss  %xmm1,-0x38(%rsp)
L1544:
  test   $0x40000000,%eax
  je     L98
  movss  -0x34(%rsp),%xmm1
  mulss  %xmm0,%xmm1
  movss  %xmm1,-0x34(%rsp)
L98:
  test   $0x80000000,%eax
  je     L289
  movss  -0x30(%rsp),%xmm1
  mulss  %xmm0,%xmm1
  movss  %xmm1,-0x30(%rsp)
L289:
  test   %r12,%rax
  je     L579
  movss  -0x2c(%rsp),%xmm1
  mulss  %xmm0,%xmm1
  movss  %xmm1,-0x2c(%rsp)
L579:
  test   %rbp,%rax
  je     L1901
  movss  -0x28(%rsp),%xmm1
  mulss  %xmm0,%xmm1
  movss  %xmm1,-0x28(%rsp)
L1901:
  test   %rbx,%rax
  je     L668
  movss  -0x24(%rsp),%xmm1
  mulss  %xmm0,%xmm1
  movss  %xmm1,-0x24(%rsp)
L668:
  test   %r11,%rax
  je     L763
  movss  -0x20(%rsp),%xmm1
  mulss  %xmm0,%xmm1
  movss  %xmm1,-0x20(%rsp)
L763:
  test   %r10,%rax
  je     L412
  movss  -0x1c(%rsp),%xmm1
  mulss  %xmm0,%xmm1
  movss  %xmm1,-0x1c(%rsp)
L412:
  test   %r8,%rax
  je     L1531
  movss  -0x18(%rsp),%xmm1
  mulss  %xmm0,%xmm1
  movss  %xmm1,-0x18(%rsp)
L1531:
  test   %rdi,%rax
  je     L196
  movss  -0x8(%rsp),%xmm1
  mulss  %xmm0,%xmm1
  movss  %xmm1,-0x8(%rsp)
L196:
  test   %rsi,%rax
  je     L980
  mulss  -0x14(%rsp),%xmm0
  movss  %xmm0,-0x14(%rsp)
L980:
  add    $0x4,%rcx
  mov    (%r15,%rcx,2),%rax
  test   %rax,%rax
  jne    L1750
  movss  -0x10(%rsp),%xmm0
L691:
  mov    0x38(%rsp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L334
  mov    0x38(%rsp),%r12
  xor    %ecx,%ecx
  movabs $0x100000000,%rbp
  movabs $0x200000000,%rbx
  movabs $0x400000000,%r11
  movss  %xmm0,-0x10(%rsp)
  movabs $0x800000000,%r10
  movabs $0x1000000000,%r9
  movabs $0x2000000000,%r8
  movabs $0x4000000000,%rdi
  movabs $0x8000000000,%rsi
  nop
L1134:
  movss  (%r14,%rcx,1),%xmm0
  movd   %xmm0,%edx
  movd   %edx,%xmm0
  test   $0x1,%al
  je     L681
  divss  %xmm0,%xmm15
L681:
  test   $0x2,%al
  je     L1012
  divss  %xmm0,%xmm2
L1012:
  test   $0x4,%al
  je     L1449
  divss  %xmm0,%xmm14
L1449:
  test   $0x8,%al
  je     L2029
  divss  %xmm0,%xmm13
L2029:
  test   $0x10,%al
  je     L227
  divss  %xmm0,%xmm12
L227:
  test   $0x20,%al
  je     L1674
  divss  %xmm0,%xmm11
L1674:
  test   $0x40,%al
  je     L1696
  divss  %xmm0,%xmm10
L1696:
  test   $0x80,%al
  je     L919
  divss  %xmm0,%xmm9
L919:
  test   $0x1,%ah
  je     L600
  divss  %xmm0,%xmm8
L600:
  test   $0x2,%ah
  je     L1957
  divss  %xmm0,%xmm7
L1957:
  test   $0x4,%ah
  je     L1214
  divss  %xmm0,%xmm6
L1214:
  test   $0x8,%ah
  je     L1782
  divss  %xmm0,%xmm5
L1782:
  test   $0x10,%ah
  je     L1363
  divss  %xmm0,%xmm4
L1363:
  test   $0x20,%ah
  je     L1360
  divss  %xmm0,%xmm3
L1360:
  test   $0x40,%ah
  je     L965
  movss  -0x74(%rsp),%xmm1
  divss  %xmm0,%xmm1
  movss  %xmm1,-0x74(%rsp)
L965:
  test   $0x80,%ah
  je     L563
  movss  -0x70(%rsp),%xmm1
  divss  %xmm0,%xmm1
  movss  %xmm1,-0x70(%rsp)
L563:
  test   $0x10000,%eax
  je     L280
  movss  -0x6c(%rsp),%xmm1
  divss  %xmm0,%xmm1
  movss  %xmm1,-0x6c(%rsp)
L280:
  test   $0x20000,%eax
  je     L882
  movss  -0x68(%rsp),%xmm1
  divss  %xmm0,%xmm1
  movss  %xmm1,-0x68(%rsp)
L882:
  test   $0x40000,%eax
  je     L635
  movss  -0x64(%rsp),%xmm1
  divss  %xmm0,%xmm1
  movss  %xmm1,-0x64(%rsp)
L635:
  test   $0x80000,%eax
  je     L317
  movss  -0x60(%rsp),%xmm1
  divss  %xmm0,%xmm1
  movss  %xmm1,-0x60(%rsp)
L317:
  test   $0x100000,%eax
  je     L132
  movss  -0x5c(%rsp),%xmm1
  divss  %xmm0,%xmm1
  movss  %xmm1,-0x5c(%rsp)
L132:
  test   $0x200000,%eax
  je     L1396
  movss  -0x58(%rsp),%xmm1
  divss  %xmm0,%xmm1
  movss  %xmm1,-0x58(%rsp)
L1396:
  test   $0x400000,%eax
  je     L1334
  movss  -0x54(%rsp),%xmm1
  divss  %xmm0,%xmm1
  movss  %xmm1,-0x54(%rsp)
L1334:
  test   $0x800000,%eax
  je     L792
  movss  -0x50(%rsp),%xmm1
  divss  %xmm0,%xmm1
  movss  %xmm1,-0x50(%rsp)
L792:
  test   $0x1000000,%eax
  je     L1162
  movss  -0x4c(%rsp),%xmm1
  divss  %xmm0,%xmm1
  movss  %xmm1,-0x4c(%rsp)
L1162:
  test   $0x2000000,%eax
  je     L1232
  movss  -0x48(%rsp),%xmm1
  divss  %xmm0,%xmm1
  movss  %xmm1,-0x48(%rsp)
L1232:
  test   $0x4000000,%eax
  je     L186
  movss  -0x44(%rsp),%xmm1
  divss  %xmm0,%xmm1
  movss  %xmm1,-0x44(%rsp)
L186:
  test   $0x8000000,%eax
  je     L206
  movss  -0x40(%rsp),%xmm1
  divss  %xmm0,%xmm1
  movss  %xmm1,-0x40(%rsp)
L206:
  test   $0x10000000,%eax
  je     L63
  movss  -0x3c(%rsp),%xmm1
  divss  %xmm0,%xmm1
  movss  %xmm1,-0x3c(%rsp)
L63:
  test   $0x20000000,%eax
  je     L91
  movss  -0x38(%rsp),%xmm1
  divss  %xmm0,%xmm1
  movss  %xmm1,-0x38(%rsp)
L91:
  test   $0x40000000,%eax
  je     L238
  movss  -0x34(%rsp),%xmm1
  divss  %xmm0,%xmm1
  movss  %xmm1,-0x34(%rsp)
L238:
  test   $0x80000000,%eax
  je     L972
  movss  -0x30(%rsp),%xmm1
  divss  %xmm0,%xmm1
  movss  %xmm1,-0x30(%rsp)
L972:
  test   %rbp,%rax
  je     L175
  movss  -0x2c(%rsp),%xmm1
  divss  %xmm0,%xmm1
  movss  %xmm1,-0x2c(%rsp)
L175:
  test   %rbx,%rax
  je     L1204
  movss  -0x28(%rsp),%xmm1
  divss  %xmm0,%xmm1
  movss  %xmm1,-0x28(%rsp)
L1204:
  test   %r11,%rax
  je     L1295
  movss  -0x24(%rsp),%xmm1
  divss  %xmm0,%xmm1
  movss  %xmm1,-0x24(%rsp)
L1295:
  test   %r10,%rax
  je     L860
  movss  -0x20(%rsp),%xmm1
  divss  %xmm0,%xmm1
  movss  %xmm1,-0x20(%rsp)
L860:
  test   %r9,%rax
  je     L1717
  movss  -0x1c(%rsp),%xmm1
  divss  %xmm0,%xmm1
  movss  %xmm1,-0x1c(%rsp)
L1717:
  test   %r8,%rax
  je     L1475
  movss  -0x18(%rsp),%xmm1
  divss  %xmm0,%xmm1
  movss  %xmm1,-0x18(%rsp)
L1475:
  test   %rdi,%rax
  je     L1323
  movss  -0x8(%rsp),%xmm1
  divss  %xmm0,%xmm1
  movss  %xmm1,-0x8(%rsp)
L1323:
  test   %rsi,%rax
  je     L1446
  movss  -0x14(%rsp),%xmm1
  divss  %xmm0,%xmm1
  movss  %xmm1,-0x14(%rsp)
L1446:
  add    $0x4,%rcx
  mov    (%r12,%rcx,2),%rax
  test   %rax,%rax
  jne    L1134
  movss  -0x10(%rsp),%xmm0
L334:
  mov    0x48(%rsp),%rax
  mov    (%rax),%rax
  test   %rax,%rax
  je     L800
  mov    0x48(%rsp),%r13
  mov    0x50(%rsp),%r14
  xor    %esi,%esi
  xor    %ecx,%ecx
  movabs $0x100000000,%r12
  movabs $0x200000000,%rbp
  movabs $0x400000000,%rbx
  movabs $0x800000000,%r11
  movabs $0x1000000000,%r10
  movabs $0x2000000000,%r9
  movabs $0x4000000000,%r8
  movabs $0x8000000000,%rdi
  nopl   0x0(%rax)
L1075:
  xor    %edx,%edx
  test   $0x1,%al
  je     L379
  xor    %edx,%edx
  ucomiss %xmm0,%xmm15
  setnp  %dl
  cmovne %ecx,%edx
L379:
  test   $0x2,%al
  je     L2044
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm2
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L2044:
  test   $0x4,%al
  je     L1326
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm14
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L1326:
  test   $0x8,%al
  je     L1771
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm13
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L1771:
  test   $0x10,%al
  je     L1867
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm12
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L1867:
  test   $0x20,%al
  je     L2067
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm11
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L2067:
  test   $0x40,%al
  je     L398
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm10
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L398:
  test   $0x80,%al
  je     L1849
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm9
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L1849:
  test   $0x1,%ah
  je     L105
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm8
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L105:
  test   $0x2,%ah
  je     L1002
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm7
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L1002:
  test   $0x4,%ah
  je     L5
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm6
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L5:
  test   $0x8,%ah
  je     L1516
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm5
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L1516:
  test   $0x10,%ah
  je     L60
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm4
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L60:
  test   $0x20,%ah
  je     L87
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm3
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L87:
  test   $0x40,%ah
  je     L544
  movss  -0x74(%rsp),%xmm1
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm1
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L544:
  test   $0x80,%ah
  je     L496
  movss  -0x70(%rsp),%xmm1
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm1
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L496:
  test   $0x10000,%eax
  je     L623
  movss  -0x6c(%rsp),%xmm1
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm1
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L623:
  test   $0x20000,%eax
  je     L1676
  movss  -0x68(%rsp),%xmm1
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm1
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L1676:
  test   $0x40000,%eax
  je     L284
  movss  -0x64(%rsp),%xmm1
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm1
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L284:
  test   $0x80000,%eax
  je     L1778
  movss  -0x60(%rsp),%xmm1
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm1
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L1778:
  test   $0x100000,%eax
  je     L1777
  movss  -0x5c(%rsp),%xmm1
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm1
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L1777:
  test   $0x200000,%eax
  je     L1826
  movss  -0x58(%rsp),%xmm1
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm1
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L1826:
  test   $0x400000,%eax
  je     L2036
  movss  -0x54(%rsp),%xmm1
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm1
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L2036:
  test   $0x800000,%eax
  je     L1016
  movss  -0x50(%rsp),%xmm1
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm1
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L1016:
  test   $0x1000000,%eax
  je     L911
  movss  -0x4c(%rsp),%xmm1
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm1
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L911:
  test   $0x2000000,%eax
  je     L717
  movss  -0x48(%rsp),%xmm1
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm1
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L717:
  test   $0x4000000,%eax
  je     L28
  movss  -0x44(%rsp),%xmm1
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm1
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L28:
  test   $0x8000000,%eax
  je     L456
  movss  -0x40(%rsp),%xmm1
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm1
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L456:
  test   $0x10000000,%eax
  je     L1689
  movss  -0x3c(%rsp),%xmm1
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm1
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L1689:
  test   $0x20000000,%eax
  je     L435
  movss  -0x38(%rsp),%xmm1
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm1
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L435:
  test   $0x40000000,%eax
  je     L2090
  movss  -0x34(%rsp),%xmm1
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm1
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L2090:
  test   $0x80000000,%eax
  je     L340
  movss  -0x30(%rsp),%xmm1
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm1
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L340:
  test   %r12,%rax
  je     L1608
  movss  -0x2c(%rsp),%xmm1
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm1
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L1608:
  test   %rbp,%rax
  je     L1438
  movss  -0x28(%rsp),%xmm1
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm1
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L1438:
  test   %rbx,%rax
  je     L1380
  movss  -0x24(%rsp),%xmm1
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm1
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L1380:
  test   %r11,%rax
  je     L1399
  movss  -0x20(%rsp),%xmm1
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm1
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L1399:
  test   %r10,%rax
  je     L1348
  movss  -0x1c(%rsp),%xmm1
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm1
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L1348:
  test   %r9,%rax
  je     L1875
  movss  -0x18(%rsp),%xmm1
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm1
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L1875:
  test   %r8,%rax
  je     L1567
  movss  -0x8(%rsp),%xmm1
  xor    %r15d,%r15d
  ucomiss %xmm0,%xmm1
  setnp  %r15b
  cmovne %ecx,%r15d
  or     %r15d,%edx
L1567:
  test   %rdi,%rax
  je     L1618
  movss  -0x14(%rsp),%xmm1
  xor    %eax,%eax
  ucomiss %xmm0,%xmm1
  setnp  %al
  cmovne %ecx,%eax
  or     %edx,%eax
  mov    %eax,(%r14,%rsi,1)
  add    $0x4,%rsi
  mov    0x0(%r13,%rsi,2),%rax
  test   %rax,%rax
  jne    L1075
L800:
  addss  %xmm15,%xmm2
  movss  -0x48(%rsp),%xmm0
  addss  %xmm14,%xmm2
  addss  %xmm13,%xmm2
  addss  %xmm12,%xmm2
  addss  %xmm11,%xmm2
  addss  %xmm10,%xmm2
  addss  %xmm9,%xmm2
  addss  %xmm8,%xmm2
  addss  %xmm7,%xmm2
  addss  %xmm6,%xmm2
  addss  %xmm5,%xmm2
  addss  %xmm4,%xmm2
  addss  %xmm3,%xmm2
  addss  -0x74(%rsp),%xmm2
  addss  -0x70(%rsp),%xmm2
  addss  -0x6c(%rsp),%xmm2
  addss  -0x68(%rsp),%xmm2
  addss  -0x64(%rsp),%xmm2
  addss  -0x60(%rsp),%xmm2
  addss  -0x5c(%rsp),%xmm2
  addss  -0x58(%rsp),%xmm2
  addss  -0x54(%rsp),%xmm2
  addss  -0x50(%rsp),%xmm2
  addss  -0x4c(%rsp),%xmm2
  addss  %xmm2,%xmm0
  addss  -0x44(%rsp),%xmm0
  addss  -0x40(%rsp),%xmm0
  addss  -0x3c(%rsp),%xmm0
  addss  -0x38(%rsp),%xmm0
  addss  -0x34(%rsp),%xmm0
  addss  -0x30(%rsp),%xmm0
  addss  -0x2c(%rsp),%xmm0
  addss  -0x28(%rsp),%xmm0
  addss  -0x24(%rsp),%xmm0
  addss  -0x20(%rsp),%xmm0
  addss  -0x1c(%rsp),%xmm0
  addss  -0x18(%rsp),%xmm0
  addss  -0x8(%rsp),%xmm0
  addss  -0x14(%rsp),%xmm0
  pop    %rbx
  pop    %rbp
  pop    %r12
  pop    %r13
  pop    %r14
  pop    %r15
  ret
  nopl   (%rax)
L1618:
  mov    %edx,(%r14,%rsi,1)
  add    $0x4,%rsi
  mov    0x0(%r13,%rsi,2),%rax
  test   %rax,%rax
  jne    L1075
  jmp    L800
  nopl   0x0(%rax,%rax,1)
L428:
  pxor   %xmm0,%xmm0
  movss  %xmm0,-0x14(%rsp)
  movaps %xmm0,%xmm3
  movaps %xmm0,%xmm4
  movaps %xmm0,%xmm5
  movss  %xmm0,-0x8(%rsp)
  movaps %xmm0,%xmm6
  movaps %xmm0,%xmm7
  movaps %xmm0,%xmm8
  movss  %xmm0,-0x18(%rsp)
  movaps %xmm0,%xmm9
  movaps %xmm0,%xmm10
  movaps %xmm0,%xmm11
  movss  %xmm0,-0x1c(%rsp)
  movaps %xmm0,%xmm12
  movaps %xmm0,%xmm13
  movaps %xmm0,%xmm2
  movss  %xmm0,-0x20(%rsp)
  movaps %xmm0,%xmm14
  movaps %xmm0,%xmm15
  movss  %xmm0,-0x24(%rsp)
  movss  %xmm0,-0x28(%rsp)
  movss  %xmm0,-0x2c(%rsp)
  movss  %xmm0,-0x30(%rsp)
  movss  %xmm0,-0x34(%rsp)
  movss  %xmm0,-0x38(%rsp)
  movss  %xmm0,-0x3c(%rsp)
  movss  %xmm0,-0x40(%rsp)
  movss  %xmm0,-0x44(%rsp)
  movss  %xmm0,-0x48(%rsp)
  movss  %xmm0,-0x4c(%rsp)
  movss  %xmm0,-0x50(%rsp)
  movss  %xmm0,-0x54(%rsp)
  movss  %xmm0,-0x58(%rsp)
  movss  %xmm0,-0x5c(%rsp)
  movss  %xmm0,-0x60(%rsp)
  movss  %xmm0,-0x64(%rsp)
  movss  %xmm0,-0x68(%rsp)
  movss  %xmm0,-0x6c(%rsp)
  movss  %xmm0,-0x70(%rsp)
  movss  %xmm0,-0x74(%rsp)
  jmp    L1443
```

assistant: ```c
float test_add(const unsigned long long *add_mask, const float *add_values, const unsigned long long *sub_mask, const float *sub_values, const unsigned long long *mul_mask, const float *mul_values, const unsigned long long *div_mask, const float *div_values, const unsigned long long *eq0_mask, int *eq0_ptr) {
  float value;
  float value00 = ((float)0.0);
  float value01 = ((float)0.0);
  float value02 = ((float)0.0);
  float value03 = ((float)0.0);
  float value04 = ((float)0.0);
  float value05 = ((float)0.0);
  float value06 = ((float)0.0);
  float value07 = ((float)0.0);
  float value08 = ((float)0.0);
  float value09 = ((float)0.0);
  float value10 = ((float)0.0);
  float value11 = ((float)0.0);
  float value12 = ((float)0.0);
  float value13 = ((float)0.0);
  float value14 = ((float)0.0);
  float value15 = ((float)0.0);
  float value16 = ((float)0.0);
  float value17 = ((float)0.0);
  float value18 = ((float)0.0);
  float value19 = ((float)0.0);
  float value20 = ((float)0.0);
  float value21 = ((float)0.0);
  float value22 = ((float)0.0);
  float value23 = ((float)0.0);
  float value24 = ((float)0.0);
  float value25 = ((float)0.0);
  float value26 = ((float)0.0);
  float value27 = ((float)0.0);
  float value28 = ((float)0.0);
  float value29 = ((float)0.0);
  float value30 = ((float)0.0);
  float value31 = ((float)0.0);
  float value32 = ((float)0.0);
  float value33 = ((float)0.0);
  float value34 = ((float)0.0);
  float value35 = ((float)0.0);
  float value36 = ((float)0.0);
  float value37 = ((float)0.0);
  float value38 = ((float)0.0);
  float value39 = ((float)0.0);
  unsigned long long mask;
  int eq0;
  while ((mask = *add_mask++) != 0) {
    value = *add_values++;
    __asm__(" #reg %0" : "+d"(value));
    if ((mask & (((unsigned long long)1) << 0)) != 0)
      value00 += value;
    if ((mask & (((unsigned long long)1) << 1)) != 0)
      value01 += value;
    if ((mask & (((unsigned long long)1) << 2)) != 0)
      value02 += value;
    if ((mask & (((unsigned long long)1) << 3)) != 0)
      value03 += value;
    if ((mask & (((unsigned long long)1) << 4)) != 0)
      value04 += value;
    if ((mask & (((unsigned long long)1) << 5)) != 0)
      value05 += value;
    if ((mask & (((unsigned long long)1) << 6)) != 0)
      value06 += value;
    if ((mask & (((unsigned long long)1) << 7)) != 0)
      value07 += value;
    if ((mask & (((unsigned long long)1) << 8)) != 0)
      value08 += value;
    if ((mask & (((unsigned long long)1) << 9)) != 0)
      value09 += value;
    if ((mask & (((unsigned long long)1) << 10)) != 0)
      value10 += value;
    if ((mask & (((unsigned long long)1) << 11)) != 0)
      value11 += value;
    if ((mask & (((unsigned long long)1) << 12)) != 0)
      value12 += value;
    if ((mask & (((unsigned long long)1) << 13)) != 0)
      value13 += value;
    if ((mask & (((unsigned long long)1) << 14)) != 0)
      value14 += value;
    if ((mask & (((unsigned long long)1) << 15)) != 0)
      value15 += value;
    if ((mask & (((unsigned long long)1) << 16)) != 0)
      value16 += value;
    if ((mask & (((unsigned long long)1) << 17)) != 0)
      value17 += value;
    if ((mask & (((unsigned long long)1) << 18)) != 0)
      value18 += value;
    if ((mask & (((unsigned long long)1) << 19)) != 0)
      value19 += value;
    if ((mask & (((unsigned long long)1) << 20)) != 0)
      value20 += value;
    if ((mask & (((unsigned long long)1) << 21)) != 0)
      value21 += value;
    if ((mask & (((unsigned long long)1) << 22)) != 0)
      value22 += value;
    if ((mask & (((unsigned long long)1) << 23)) != 0)
      value23 += value;
    if ((mask & (((unsigned long long)1) << 24)) != 0)
      value24 += value;
    if ((mask & (((unsigned long long)1) << 25)) != 0)
      value25 += value;
    if ((mask & (((unsigned long long)1) << 26)) != 0)
      value26 += value;
    if ((mask & (((unsigned long long)1) << 27)) != 0)
      value27 += value;
    if ((mask & (((unsigned long long)1) << 28)) != 0)
      value28 += value;
    if ((mask & (((unsigned long long)1) << 29)) != 0)
      value29 += value;
    if ((mask & (((unsigned long long)1) << 30)) != 0)
      value30 += value;
    if ((mask & (((unsigned long long)1) << 31)) != 0)
      value31 += value;
    if ((mask & (((unsigned long long)1) << 32)) != 0)
      value32 += value;
    if ((mask & (((unsigned long long)1) << 33)) != 0)
      value33 += value;
    if ((mask & (((unsigned long long)1) << 34)) != 0)
      value34 += value;
    if ((mask & (((unsigned long long)1) << 35)) != 0)
      value35 += value;
    if ((mask & (((unsigned long long)1) << 36)) != 0)
      value36 += value;
    if ((mask & (((unsigned long long)1) << 37)) != 0)
      value37 += value;
    if ((mask & (((unsigned long long)1) << 38)) != 0)
      value38 += value;
    if ((mask & (((unsigned long long)1) << 39)) != 0)
      value39 += value;
  }
  while ((mask = *sub_mask++) != 0) {
    value = *sub_values++;
    __asm__(" #reg %0" : "+d"(value));
    if ((mask & (((unsigned long long)1) << 0)) != 0)
      value00 -= value;
    if ((mask & (((unsigned long long)1) << 1)) != 0)
      value01 -= value;
    if ((mask & (((unsigned long long)1) << 2)) != 0)
      value02 -= value;
    if ((mask & (((unsigned long long)1) << 3)) != 0)
      value03 -= value;
    if ((mask & (((unsigned long long)1) << 4)) != 0)
      value04 -= value;
    if ((mask & (((unsigned long long)1) << 5)) != 0)
      value05 -= value;
    if ((mask & (((unsigned long long)1) << 6)) != 0)
      value06 -= value;
    if ((mask & (((unsigned long long)1) << 7)) != 0)
      value07 -= value;
    if ((mask & (((unsigned long long)1) << 8)) != 0)
      value08 -= value;
    if ((mask & (((unsigned long long)1) << 9)) != 0)
      value09 -= value;
    if ((mask & (((unsigned long long)1) << 10)) != 0)
      value10 -= value;
    if ((mask & (((unsigned long long)1) << 11)) != 0)
      value11 -= value;
    if ((mask & (((unsigned long long)1) << 12)) != 0)
      value12 -= value;
    if ((mask & (((unsigned long long)1) << 13)) != 0)
      value13 -= value;
    if ((mask & (((unsigned long long)1) << 14)) != 0)
      value14 -= value;
    if ((mask & (((unsigned long long)1) << 15)) != 0)
      value15 -= value;
    if ((mask & (((unsigned long long)1) << 16)) != 0)
      value16 -= value;
    if ((mask & (((unsigned long long)1) << 17)) != 0)
      value17 -= value;
    if ((mask & (((unsigned long long)1) << 18)) != 0)
      value18 -= value;
    if ((mask & (((unsigned long long)1) << 19)) != 0)
      value19 -= value;
    if ((mask & (((unsigned long long)1) << 20)) != 0)
      value20 -= value;
    if ((mask & (((unsigned long long)1) << 21)) != 0)
      value21 -= value;
    if ((mask & (((unsigned long long)1) << 22)) != 0)
      value22 -= value;
    if ((mask & (((unsigned long long)1) << 23)) != 0)
      value23 -= value;
    if ((mask & (((unsigned long long)1) << 24)) != 0)
      value24 -= value;
    if ((mask & (((unsigned long long)1) << 25)) != 0)
      value25 -= value;
    if ((mask & (((unsigned long long)1) << 26)) != 0)
      value26 -= value;
    if ((mask & (((unsigned long long)1) << 27)) != 0)
      value27 -= value;
    if ((mask & (((unsigned long long)1) << 28)) != 0)
      value28 -= value;
    if ((mask & (((unsigned long long)1) << 29)) != 0)
      value29 -= value;
    if ((mask & (((unsigned long long)1) << 30)) != 0)
      value30 -= value;
    if ((mask & (((unsigned long long)1) << 31)) != 0)
      value31 -= value;
    if ((mask & (((unsigned long long)1) << 32)) != 0)
      value32 -= value;
    if ((mask & (((unsigned long long)1) << 33)) != 0)
      value33 -= value;
    if ((mask & (((unsigned long long)1) << 34)) != 0)
      value34 -= value;
    if ((mask & (((unsigned long long)1) << 35)) != 0)
      value35 -= value;
    if ((mask & (((unsigned long long)1) << 36)) != 0)
      value36 -= value;
    if ((mask & (((unsigned long long)1) << 37)) != 0)
      value37 -= value;
    if ((mask & (((unsigned long long)1) << 38)) != 0)
      value38 -= value;
    if ((mask & (((unsigned long long)1) << 39)) != 0)
      value39 -= value;
  }
  while ((mask = *mul_mask++) != 0) {
    value = *mul_values++;
    __asm__(" #reg %0" : "+d"(value));
    if ((mask & (((unsigned long long)1) << 0)) != 0)
      value00 *= value;
    if ((mask & (((unsigned long long)1) << 1)) != 0)
      value01 *= value;
    if ((mask & (((unsigned long long)1) << 2)) != 0)
      value02 *= value;
    if ((mask & (((unsigned long long)1) << 3)) != 0)
      value03 *= value;
    if ((mask & (((unsigned long long)1) << 4)) != 0)
      value04 *= value;
    if ((mask & (((unsigned long long)1) << 5)) != 0)
      value05 *= value;
    if ((mask & (((unsigned long long)1) << 6)) != 0)
      value06 *= value;
    if ((mask & (((unsigned long long)1) << 7)) != 0)
      value07 *= value;
    if ((mask & (((unsigned long long)1) << 8)) != 0)
      value08 *= value;
    if ((mask & (((unsigned long long)1) << 9)) != 0)
      value09 *= value;
    if ((mask & (((unsigned long long)1) << 10)) != 0)
      value10 *= value;
    if ((mask & (((unsigned long long)1) << 11)) != 0)
      value11 *= value;
    if ((mask & (((unsigned long long)1) << 12)) != 0)
      value12 *= value;
    if ((mask & (((unsigned long long)1) << 13)) != 0)
      value13 *= value;
    if ((mask & (((unsigned long long)1) << 14)) != 0)
      value14 *= value;
    if ((mask & (((unsigned long long)1) << 15)) != 0)
      value15 *= value;
    if ((mask & (((unsigned long long)1) << 16)) != 0)
      value16 *= value;
    if ((mask & (((unsigned long long)1) << 17)) != 0)
      value17 *= value;
    if ((mask & (((unsigned long long)1) << 18)) != 0)
      value18 *= value;
    if ((mask & (((unsigned long long)1) << 19)) != 0)
      value19 *= value;
    if ((mask & (((unsigned long long)1) << 20)) != 0)
      value20 *= value;
    if ((mask & (((unsigned long long)1) << 21)) != 0)
      value21 *= value;
    if ((mask & (((unsigned long long)1) << 22)) != 0)
      value22 *= value;
    if ((mask & (((unsigned long long)1) << 23)) != 0)
      value23 *= value;
    if ((mask & (((unsigned long long)1) << 24)) != 0)
      value24 *= value;
    if ((mask & (((unsigned long long)1) << 25)) != 0)
      value25 *= value;
    if ((mask & (((unsigned long long)1) << 26)) != 0)
      value26 *= value;
    if ((mask & (((unsigned long long)1) << 27)) != 0)
      value27 *= value;
    if ((mask & (((unsigned long long)1) << 28)) != 0)
      value28 *= value;
    if ((mask & (((unsigned long long)1) << 29)) != 0)
      value29 *= value;
    if ((mask & (((unsigned long long)1) << 30)) != 0)
      value30 *= value;
    if ((mask & (((unsigned long long)1) << 31)) != 0)
      value31 *= value;
    if ((mask & (((unsigned long long)1) << 32)) != 0)
      value32 *= value;
    if ((mask & (((unsigned long long)1) << 33)) != 0)
      value33 *= value;
    if ((mask & (((unsigned long long)1) << 34)) != 0)
      value34 *= value;
    if ((mask & (((unsigned long long)1) << 35)) != 0)
      value35 *= value;
    if ((mask & (((unsigned long long)1) << 36)) != 0)
      value36 *= value;
    if ((mask & (((unsigned long long)1) << 37)) != 0)
      value37 *= value;
    if ((mask & (((unsigned long long)1) << 38)) != 0)
      value38 *= value;
    if ((mask & (((unsigned long long)1) << 39)) != 0)
      value39 *= value;
  }
  while ((mask = *div_mask++) != 0) {
    value = *div_values++;
    __asm__(" #reg %0" : "+d"(value));
    if ((mask & (((unsigned long long)1) << 0)) != 0)
      value00 /= value;
    if ((mask & (((unsigned long long)1) << 1)) != 0)
      value01 /= value;
    if ((mask & (((unsigned long long)1) << 2)) != 0)
      value02 /= value;
    if ((mask & (((unsigned long long)1) << 3)) != 0)
      value03 /= value;
    if ((mask & (((unsigned long long)1) << 4)) != 0)
      value04 /= value;
    if ((mask & (((unsigned long long)1) << 5)) != 0)
      value05 /= value;
    if ((mask & (((unsigned long long)1) << 6)) != 0)
      value06 /= value;
    if ((mask & (((unsigned long long)1) << 7)) != 0)
      value07 /= value;
    if ((mask & (((unsigned long long)1) << 8)) != 0)
      value08 /= value;
    if ((mask & (((unsigned long long)1) << 9)) != 0)
      value09 /= value;
    if ((mask & (((unsigned long long)1) << 10)) != 0)
      value10 /= value;
    if ((mask & (((unsigned long long)1) << 11)) != 0)
      value11 /= value;
    if ((mask & (((unsigned long long)1) << 12)) != 0)
      value12 /= value;
    if ((mask & (((unsigned long long)1) << 13)) != 0)
      value13 /= value;
    if ((mask & (((unsigned long long)1) << 14)) != 0)
      value14 /= value;
    if ((mask & (((unsigned long long)1) << 15)) != 0)
      value15 /= value;
    if ((mask & (((unsigned long long)1) << 16)) != 0)
      value16 /= value;
    if ((mask & (((unsigned long long)1) << 17)) != 0)
      value17 /= value;
    if ((mask & (((unsigned long long)1) << 18)) != 0)
      value18 /= value;
    if ((mask & (((unsigned long long)1) << 19)) != 0)
      value19 /= value;
    if ((mask & (((unsigned long long)1) << 20)) != 0)
      value20 /= value;
    if ((mask & (((unsigned long long)1) << 21)) != 0)
      value21 /= value;
    if ((mask & (((unsigned long long)1) << 22)) != 0)
      value22 /= value;
    if ((mask & (((unsigned long long)1) << 23)) != 0)
      value23 /= value;
    if ((mask & (((unsigned long long)1) << 24)) != 0)
      value24 /= value;
    if ((mask & (((unsigned long long)1) << 25)) != 0)
      value25 /= value;
    if ((mask & (((unsigned long long)1) << 26)) != 0)
      value26 /= value;
    if ((mask & (((unsigned long long)1) << 27)) != 0)
      value27 /= value;
    if ((mask & (((unsigned long long)1) << 28)) != 0)
      value28 /= value;
    if ((mask & (((unsigned long long)1) << 29)) != 0)
      value29 /= value;
    if ((mask & (((unsigned long long)1) << 30)) != 0)
      value30 /= value;
    if ((mask & (((unsigned long long)1) << 31)) != 0)
      value31 /= value;
    if ((mask & (((unsigned long long)1) << 32)) != 0)
      value32 /= value;
    if ((mask & (((unsigned long long)1) << 33)) != 0)
      value33 /= value;
    if ((mask & (((unsigned long long)1) << 34)) != 0)
      value34 /= value;
    if ((mask & (((unsigned long long)1) << 35)) != 0)
      value35 /= value;
    if ((mask & (((unsigned long long)1) << 36)) != 0)
      value36 /= value;
    if ((mask & (((unsigned long long)1) << 37)) != 0)
      value37 /= value;
    if ((mask & (((unsigned long long)1) << 38)) != 0)
      value38 /= value;
    if ((mask & (((unsigned long long)1) << 39)) != 0)
      value39 /= value;
  }
  while ((mask = *eq0_mask++) != 0) {
    eq0 = 0;
    if ((mask & (((unsigned long long)1) << 0)) != 0)
      eq0 |= (value00 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 1)) != 0)
      eq0 |= (value01 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 2)) != 0)
      eq0 |= (value02 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 3)) != 0)
      eq0 |= (value03 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 4)) != 0)
      eq0 |= (value04 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 5)) != 0)
      eq0 |= (value05 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 6)) != 0)
      eq0 |= (value06 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 7)) != 0)
      eq0 |= (value07 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 8)) != 0)
      eq0 |= (value08 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 9)) != 0)
      eq0 |= (value09 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 10)) != 0)
      eq0 |= (value10 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 11)) != 0)
      eq0 |= (value11 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 12)) != 0)
      eq0 |= (value12 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 13)) != 0)
      eq0 |= (value13 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 14)) != 0)
      eq0 |= (value14 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 15)) != 0)
      eq0 |= (value15 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 16)) != 0)
      eq0 |= (value16 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 17)) != 0)
      eq0 |= (value17 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 18)) != 0)
      eq0 |= (value18 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 19)) != 0)
      eq0 |= (value19 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 20)) != 0)
      eq0 |= (value20 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 21)) != 0)
      eq0 |= (value21 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 22)) != 0)
      eq0 |= (value22 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 23)) != 0)
      eq0 |= (value23 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 24)) != 0)
      eq0 |= (value24 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 25)) != 0)
      eq0 |= (value25 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 26)) != 0)
      eq0 |= (value26 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 27)) != 0)
      eq0 |= (value27 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 28)) != 0)
      eq0 |= (value28 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 29)) != 0)
      eq0 |= (value29 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 30)) != 0)
      eq0 |= (value30 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 31)) != 0)
      eq0 |= (value31 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 32)) != 0)
      eq0 |= (value32 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 33)) != 0)
      eq0 |= (value33 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 34)) != 0)
      eq0 |= (value34 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 35)) != 0)
      eq0 |= (value35 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 36)) != 0)
      eq0 |= (value36 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 37)) != 0)
      eq0 |= (value37 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 38)) != 0)
      eq0 |= (value38 == ((float)0.0));
    if ((mask & (((unsigned long long)1) << 39)) != 0)
      eq0 |= (value39 == ((float)0.0));
    *eq0_ptr++ = eq0;
  }
  return (value00 + value01 + value02 + value03 + value04 + value05 + value06 + value07 + value08 + value09 + value10 + value11 + value12 + value13 + value14 + value15 + value16 + value17 + value18 + value19 + value20 + value21 + value22 + value23 + value24 + value25 + value26 + value27 + value28 + value29 + value30 + value31 + value32 + value33 + value34 + value35 + value36 + value37 + value38 + value39);
}
```