Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 0000000000008cb0 <sumDBIndicies>: /* sumDBIndicies total: 6891014 43.9737 */
- 3784 0.0241 : 8cb0: mov 0x10(%rsp),%eax
- 60 3.8e-04 : 8cb4: mov 0x8(%rsp),%rsi
- 5 3.2e-05 : 8cb9: mov 0x18(%rsp),%r10
- 2957 0.0189 : 8cbe: mov 0x20(%rsp),%r9
- 30 1.9e-04 : 8cc3: mov 0x28(%rsp),%r8d
- 39 2.5e-04 : 8cc8: xorpd %xmm0,%xmm0
- : 8ccc: test %eax,%eax
- 5 3.2e-05 : 8cce: je 8cfa <sumDBIndicies+0x4a>
- 354 0.0023 : 8cd0: xorpd %xmm0,%xmm0
- : 8cd4: sub $0x1,%eax
- 7 4.5e-05 : 8cd7: lea 0x4(,%rax,4),%rcx
- : 8cdf: xor %eax,%eax
- 381 0.0024 : 8ce1: nopl 0x0(%rax)
- 137464 0.8772 : 8ce8: movslq (%rsi,%rax,1),%rdx
- 1773 0.0113 : 8cec: add $0x4,%rax
- 31 2.0e-04 : 8cf0: cmp %rcx,%rax
- 362 0.0023 : 8cf3: addsd (%rdi,%rdx,8),%xmm0
- 894099 5.7055 : 8cf8: jne 8ce8 <sumDBIndicies+0x38>
- 2530 0.0161 : 8cfa: test %r8d,%r8d
- : 8cfd: je 8d46 <sumDBIndicies+0x96>
- 56 3.6e-04 : 8cff: sub $0x1,%r8d
- 7 4.5e-05 : 8d03: xor %ecx,%ecx
- 1 6.4e-06 : 8d05: lea 0x4(,%r8,4),%r8
- 2578 0.0165 : 8d0d: nopl (%rax)
- 90043 0.5746 : 8d10: movslq (%r10,%rcx,1),%rdx
- 1502 0.0096 : 8d14: movslq (%r9,%rcx,1),%rsi
- 1366 0.0087 : 8d18: lea (%rdi,%rdx,8),%rax
- 2492 0.0159 : 8d1c: lea (%rsi,%rdx,1),%rdx
- 89807 0.5731 : 8d20: lea (%rdi,%rdx,8),%rdx
- 488 0.0031 : 8d24: cmp %rdx,%rax
- 1 6.4e-06 : 8d27: jae 8d3d <sumDBIndicies+0x8d>
- 246 0.0016 : 8d29: nopl 0x0(%rax)
- 1239862 7.9119 : 8d30: addsd (%rax),%xmm0
- 4401702 28.0886 : 8d34: add $0x8,%rax
- 10106 0.0645 : 8d38: cmp %rdx,%rax
- 1329 0.0085 : 8d3b: jb 8d30 <sumDBIndicies+0x80>
- 305 0.0019 : 8d3d: add $0x4,%rcx
- 2234 0.0143 : 8d41: cmp %r8,%rcx
- 138 8.8e-04 : 8d44: jne 8d10 <sumDBIndicies+0x60>
- 2870 0.0183 : 8d46: repz retq
- : 8d48: nopl 0x0(%rax,%rax,1)
- double sumDBIndicies(double* input1, IndiciesInput indicies)
- {
- double accumulate = 0;
- for(unsigned int i = 0; i < indicies.nSingleIndicies; i++)
- {
- accumulate += input1[indicies.singleIndicies[i]];
- }
- for(unsigned int i = 0; i < indicies.nRanges; i++)
- {
- for(double* address = indicies.rangeStartPositions[i] + input1; address < indicies.rangeStartPositions[i] + input1 + indicies.rangeLengths[i]; address++)
- {
- accumulate += *address;
- }
- }
- return accumulate;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement