Advertisement
Guest User

Untitled

a guest
Jun 25th, 2017
51
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.76 KB | None | 0 0
  1. 0000000000008cb0 <sumDBIndicies>: /* sumDBIndicies total: 6891014 43.9737 */
  2.   3784  0.0241 :    8cb0:       mov    0x10(%rsp),%eax
  3.     60 3.8e-04 :    8cb4:       mov    0x8(%rsp),%rsi
  4.      5 3.2e-05 :    8cb9:       mov    0x18(%rsp),%r10
  5.   2957  0.0189 :    8cbe:       mov    0x20(%rsp),%r9
  6.     30 1.9e-04 :    8cc3:       mov    0x28(%rsp),%r8d
  7.     39 2.5e-04 :    8cc8:       xorpd  %xmm0,%xmm0
  8.                :    8ccc:       test   %eax,%eax
  9.      5 3.2e-05 :    8cce:       je     8cfa <sumDBIndicies+0x4a>
  10.    354  0.0023 :    8cd0:       xorpd  %xmm0,%xmm0
  11.                :    8cd4:       sub    $0x1,%eax
  12.      7 4.5e-05 :    8cd7:       lea    0x4(,%rax,4),%rcx
  13.                :    8cdf:       xor    %eax,%eax
  14.    381  0.0024 :    8ce1:       nopl   0x0(%rax)
  15. 137464  0.8772 :    8ce8:       movslq (%rsi,%rax,1),%rdx
  16.   1773  0.0113 :    8cec:       add    $0x4,%rax
  17.     31 2.0e-04 :    8cf0:       cmp    %rcx,%rax
  18.    362  0.0023 :    8cf3:       addsd  (%rdi,%rdx,8),%xmm0
  19. 894099  5.7055 :    8cf8:       jne    8ce8 <sumDBIndicies+0x38>
  20.   2530  0.0161 :    8cfa:       test   %r8d,%r8d
  21.                :    8cfd:       je     8d46 <sumDBIndicies+0x96>
  22.     56 3.6e-04 :    8cff:       sub    $0x1,%r8d
  23.      7 4.5e-05 :    8d03:       xor    %ecx,%ecx
  24.      1 6.4e-06 :    8d05:       lea    0x4(,%r8,4),%r8
  25.   2578  0.0165 :    8d0d:       nopl   (%rax)
  26.  90043  0.5746 :    8d10:       movslq (%r10,%rcx,1),%rdx
  27.   1502  0.0096 :    8d14:       movslq (%r9,%rcx,1),%rsi
  28.   1366  0.0087 :    8d18:       lea    (%rdi,%rdx,8),%rax
  29.   2492  0.0159 :    8d1c:       lea    (%rsi,%rdx,1),%rdx
  30.  89807  0.5731 :    8d20:       lea    (%rdi,%rdx,8),%rdx
  31.    488  0.0031 :    8d24:       cmp    %rdx,%rax
  32.      1 6.4e-06 :    8d27:       jae    8d3d <sumDBIndicies+0x8d>
  33.    246  0.0016 :    8d29:       nopl   0x0(%rax)
  34. 1239862  7.9119 :    8d30:      addsd  (%rax),%xmm0
  35. 4401702 28.0886 :    8d34:      add    $0x8,%rax
  36.  10106  0.0645 :    8d38:       cmp    %rdx,%rax
  37.   1329  0.0085 :    8d3b:       jb     8d30 <sumDBIndicies+0x80>
  38.    305  0.0019 :    8d3d:       add    $0x4,%rcx
  39.   2234  0.0143 :    8d41:       cmp    %r8,%rcx
  40.    138 8.8e-04 :    8d44:       jne    8d10 <sumDBIndicies+0x60>
  41.   2870  0.0183 :    8d46:       repz retq
  42.                :    8d48:       nopl   0x0(%rax,%rax,1)
  43.  
  44.  
  45.  
  46. double sumDBIndicies(double* input1, IndiciesInput indicies)
  47. {
  48.     double accumulate = 0;
  49.     for(unsigned int i = 0; i < indicies.nSingleIndicies; i++)
  50.     {
  51.         accumulate += input1[indicies.singleIndicies[i]];
  52.     }
  53.     for(unsigned int i = 0; i < indicies.nRanges; i++)
  54.     {
  55.         for(double* address = indicies.rangeStartPositions[i] + input1; address < indicies.rangeStartPositions[i] + input1 + indicies.rangeLengths[i]; address++)
  56.         {
  57.             accumulate += *address;
  58.         }
  59.     }
  60.     return accumulate;
  61. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement