Function: updateLinkCells | Module: exec | Source: linkCells.c:209-385 [...] | Coverage: 0.23% |
---|
Function: updateLinkCells | Module: exec | Source: linkCells.c:209-385 [...] | Coverage: 0.23% |
---|
/scratch_na/users/xoserete/qaas_runs/171-172-4338/intel/CoMD/build/CoMD/CoMD/src-openmp/linkCells.c: 209 - 385 |
-------------------------------------------------------------------------------- |
209: if (iz == gridSize[2]) |
210: { |
211: iBox = boxes->nLocalBoxes + 2*gridSize[2]*gridSize[1] + 2*gridSize[2]*(gridSize[0]+2) + |
212: (gridSize[0]+2)*(gridSize[1]+2) + (gridSize[0]+2)*(iy+1) + (ix+1); |
213: } |
214: // Halo in Z- |
215: else if (iz == -1) |
216: { |
217: iBox = boxes->nLocalBoxes + 2*gridSize[2]*gridSize[1] + 2*gridSize[2]*(gridSize[0]+2) + |
218: (gridSize[0]+2)*(iy+1) + (ix+1); |
219: } |
220: // Halo in Y+ |
221: else if (iy == gridSize[1]) |
[...] |
227: else if (iy == -1) |
228: { |
229: iBox = boxes->nLocalBoxes + 2*gridSize[2]*gridSize[1] + iz*(gridSize[0]+2) + (ix+1); |
230: } |
231: // Halo in X+ |
232: else if (ix == gridSize[0]) |
233: { |
234: iBox = boxes->nLocalBoxes + gridSize[1]*gridSize[2] + iz*gridSize[1] + iy; |
235: } |
236: // Halo in X- |
237: else if (ix == -1) |
238: { |
239: iBox = boxes->nLocalBoxes + iz*gridSize[1] + iy; |
240: } |
241: // local link celll. |
242: else |
243: { |
244: iBox = ix + gridSize[0]*iy + gridSize[0]*gridSize[1]*iz; |
245: } |
246: assert(iBox >= 0); |
247: assert(iBox < boxes->nTotalBoxes); |
[...] |
258: int nj = boxes->nAtoms[jBox]; |
259: copyAtom(boxes, atoms, iId, iBox, nj, jBox); |
260: boxes->nAtoms[jBox]++; |
261: |
262: assert(boxes->nAtoms[jBox] < MAXATOMS); |
263: |
264: boxes->nAtoms[iBox]--; |
265: int ni = boxes->nAtoms[iBox]; |
266: if (ni) copyAtom(boxes, atoms, ni, iBox, iId, iBox); |
267: |
268: if (jBox > boxes->nLocalBoxes) |
269: --atoms->nLocal; |
[...] |
288: { |
289: emptyHaloCells(boxes); |
290: |
291: for (int iBox=0; iBox<boxes->nLocalBoxes; ++iBox) |
292: { |
293: int iOff = iBox*MAXATOMS; |
294: int ii=0; |
295: while (ii < boxes->nAtoms[iBox]) |
296: { |
297: int jBox = getBoxFromCoord(boxes, atoms->r[iOff+ii]); |
298: if (jBox != iBox) |
299: moveAtom(boxes, atoms, ii, iBox, jBox); |
300: else |
301: ++ii; |
302: } |
303: } |
304: } |
[...] |
327: const int iOff = MAXATOMS*iBox+iAtom; |
328: const int jOff = MAXATOMS*jBox+jAtom; |
329: atoms->gid[jOff] = atoms->gid[iOff]; |
330: atoms->iSpecies[jOff] = atoms->iSpecies[iOff]; |
331: memcpy(atoms->r[jOff], atoms->r[iOff], sizeof(real3)); |
332: memcpy(atoms->p[jOff], atoms->p[iOff], sizeof(real3)); |
333: memcpy(atoms->f[jOff], atoms->f[iOff], sizeof(real3)); |
334: memcpy(atoms->U+jOff, atoms->U+iOff, sizeof(real_t)); |
[...] |
352: int ix = (int)(floor((rr[0] - localMin[0])*boxes->invBoxSize[0])); |
353: int iy = (int)(floor((rr[1] - localMin[1])*boxes->invBoxSize[1])); |
[...] |
359: if (rr[0] < localMax[0]) |
360: { |
361: if (ix == gridSize[0]) ix = gridSize[0] - 1; |
362: } |
363: else |
364: ix = gridSize[0]; // assign to halo cell |
365: if (rr[1] < localMax[1]) |
[...] |
371: if (rr[2] < localMax[2]) |
[...] |
384: for (int ii=boxes->nLocalBoxes; ii<boxes->nTotalBoxes; ++ii) |
385: boxes->nAtoms[ii] = 0; |
0x40dd40 PUSH %RBP |
0x40dd41 MOV %RSP,%RBP |
0x40dd44 PUSH %R15 |
0x40dd46 PUSH %R14 |
0x40dd48 PUSH %R13 |
0x40dd4a PUSH %R12 |
0x40dd4c PUSH %RBX |
0x40dd4d SUB $0x78,%RSP |
0x40dd51 MOV %RSI,-0x48(%RBP) |
0x40dd55 MOV 0xc(%RDI),%R14D |
0x40dd59 MOV %RDI,-0x40(%RBP) |
0x40dd5d MOV 0x14(%RDI),%EDI |
0x40dd60 CMP %EDI,%R14D |
0x40dd63 MOV %EDI,-0x38(%RBP) |
0x40dd66 JGE 40dd92 |
0x40dd68 MOV %EDI,%ECX |
0x40dd6a MOVSXD %R14D,%RDI |
0x40dd6d SAL $0x2,%RDI |
0x40dd71 MOV -0x40(%RBP),%RAX |
0x40dd75 ADD 0x78(%RAX),%RDI |
0x40dd79 MOV %R14D,%EAX |
0x40dd7c NOT %EAX |
0x40dd7e ADD %ECX,%EAX |
0x40dd80 LEA 0x4(,%RAX,4),%RDX |
0x40dd88 XOR %ESI,%ESI |
0x40dd8a CALL 417870 <_intel_fast_memset> |
0x40dd8f MOV -0x38(%RBP),%EDI |
0x40dd92 TEST %R14D,%R14D |
0x40dd95 JLE 40e280 |
0x40dd9b MOV -0x40(%RBP),%RAX |
0x40dd9f MOV 0x78(%RAX),%RAX |
0x40dda3 LEA 0x1(%R14),%ECX |
0x40dda7 MOV %ECX,-0x2c(%RBP) |
0x40ddaa XOR %R9D,%R9D |
0x40ddad VPCMPEQD %XMM0,%XMM0,%XMM0 |
0x40ddb1 MOV %RAX,-0x60(%RBP) |
0x40ddb5 MOV %R14,-0xa0(%RBP) |
0x40ddbc JMP 40ddcc |
0x40ddbe XCHG %AX,%AX |
(83) 0x40ddc0 INC %R9 |
(83) 0x40ddc3 CMP %R14,%R9 |
(83) 0x40ddc6 JE 40e280 |
(83) 0x40ddcc CMPL $0,(%RAX,%R9,4) |
(83) 0x40ddd1 JLE 40ddc0 |
(83) 0x40ddd3 MOVSXD %R9D,%RCX |
(83) 0x40ddd6 SAL $0x6,%RCX |
(83) 0x40ddda MOV %RCX,-0x88(%RBP) |
(83) 0x40dde1 MOV -0x48(%RBP),%RCX |
(83) 0x40dde5 MOV 0x18(%RCX),%R11 |
(83) 0x40dde9 MOV -0x40(%RBP),%RAX |
(83) 0x40dded VMOVSD 0x30(%RAX),%XMM1 |
(83) 0x40ddf2 MOV (%RAX),%R13D |
(83) 0x40ddf5 LEA -0x1(%R13),%ECX |
(83) 0x40ddf9 MOV %ECX,-0x64(%RBP) |
(83) 0x40ddfc VMOVUPD 0x38(%RAX),%XMM2 |
(83) 0x40de01 VMOVUPD 0x20(%RAX),%XMM3 |
(83) 0x40de06 VMOVUPD 0x68(%RAX),%XMM4 |
(83) 0x40de0b MOV 0x4(%RAX),%RBX |
(83) 0x40de0f MOV -0x60(%RBP),%RAX |
(83) 0x40de13 VMOVQ %RBX,%XMM5 |
(83) 0x40de18 MOV %RBX,%RCX |
(83) 0x40de1b SHR $0x20,%RCX |
(83) 0x40de1f VPADDD %XMM0,%XMM5,%XMM6 |
(83) 0x40de23 MOV %RCX,-0x98(%RBP) |
(83) 0x40de2a LEA (%RCX,%RCX,1),%EDX |
(83) 0x40de2d MOV %RDX,%RCX |
(83) 0x40de30 MOV %RDX,-0x78(%RBP) |
(83) 0x40de34 IMUL %EBX,%ECX |
(83) 0x40de37 MOV %ECX,-0x34(%RBP) |
(83) 0x40de3a LEA 0x2(%R13),%ECX |
(83) 0x40de3e MOV %ECX,-0x30(%RBP) |
(83) 0x40de41 VPINSRD $0,%R14D,%XMM5,%XMM7 |
(83) 0x40de47 XOR %R15D,%R15D |
(83) 0x40de4a MOV %R13,-0x70(%RBP) |
(83) 0x40de4e MOV %RBX,-0x58(%RBP) |
(83) 0x40de52 MOV %R9,-0x50(%RBP) |
(83) 0x40de56 JMP 40de91 |
0x40de58 NOPW %CS:(%RAX,%RAX,1) |
0x40de67 NOPW %CS:(%RAX,%RAX,1) |
0x40de76 NOPW %CS:(%RAX,%RAX,1) |
(84) 0x40de80 INC %R15D |
(84) 0x40de83 MOV -0x58(%RBP),%RBX |
(84) 0x40de87 CMP (%RAX,%R9,4),%R15D |
(84) 0x40de8b JGE 40ddc0 |
(84) 0x40de91 MOV -0x88(%RBP),%RCX |
(84) 0x40de98 ADD %R15D,%ECX |
(84) 0x40de9b MOVSXD %ECX,%RCX |
(84) 0x40de9e MOV %RCX,-0x90(%RBP) |
(84) 0x40dea5 LEA (%RCX,%RCX,2),%R12 |
(84) 0x40dea9 VMOVSD (%R11,%R12,8),%XMM8 |
(84) 0x40deaf VUCOMISD %XMM8,%XMM1 |
(84) 0x40deb4 MOV %R13D,%ECX |
(84) 0x40deb7 JBE 40dedd |
(84) 0x40deb9 MOV -0x40(%RBP),%RAX |
(84) 0x40debd VSUBSD 0x18(%RAX),%XMM8,%XMM8 |
(84) 0x40dec2 VMULSD 0x60(%RAX),%XMM8,%XMM8 |
(84) 0x40dec7 MOV -0x60(%RBP),%RAX |
(84) 0x40decb VROUNDSD $0x9,%XMM8,%XMM8,%XMM8 |
(84) 0x40ded1 VCVTTSD2SI %XMM8,%ECX |
(84) 0x40ded6 CMP %ECX,%R13D |
(84) 0x40ded9 CMOVE -0x64(%RBP),%ECX |
(84) 0x40dedd VMOVUPD 0x8(%R11,%R12,8),%XMM9 |
(84) 0x40dee4 VSUBPD %XMM3,%XMM9,%XMM8 |
(84) 0x40dee8 VMULPD %XMM4,%XMM8,%XMM8 |
(84) 0x40deec VROUNDPD $0x9,%XMM8,%XMM8 |
(84) 0x40def2 VCVTTPD2DQ %XMM8,%XMM8 |
(84) 0x40def7 VPCMPEQD %XMM8,%XMM5,%K1 |
(84) 0x40defd VCMPPD $0x2,%XMM9,%XMM2,%K0 |
(84) 0x40df04 KSHIFTRB $0x1,%K0,%K2 |
(84) 0x40df0a KMOVD %K2,%R10D |
(84) 0x40df0e KMOVD %K0,%EDX |
(84) 0x40df12 VMOVDQA32 %XMM6,%XMM8{%K1} |
(84) 0x40df18 VMOVD %XMM8,%ESI |
(84) 0x40df1c TEST $0x1,%DL |
(84) 0x40df1f MOV %ESI,%R8D |
(84) 0x40df22 CMOVNE %EBX,%R8D |
(84) 0x40df26 TEST $0x1,%R10B |
(84) 0x40df2a JE 40df80 |
(84) 0x40df2c ADD %EBX,%R8D |
(84) 0x40df2f MOV -0x78(%RBP),%RDX |
(84) 0x40df33 LEA 0x3(%RDX,%R8,1),%EDX |
(84) 0x40df38 IMUL -0x30(%RBP),%EDX |
(84) 0x40df3c ADD -0x2c(%RBP),%ECX |
(84) 0x40df3f ADD -0x34(%RBP),%ECX |
(84) 0x40df42 ADD %EDX,%ECX |
(84) 0x40df44 JMP 40e051 |
0x40df49 NOPW %CS:(%RAX,%RAX,1) |
0x40df58 NOPW %CS:(%RAX,%RAX,1) |
0x40df67 NOPW %CS:(%RAX,%RAX,1) |
0x40df76 NOPW %CS:(%RAX,%RAX,1) |
(84) 0x40df80 MOV %R15,%R10 |
(84) 0x40df83 VPEXTRD $0x1,%XMM8,%R15D |
(84) 0x40df89 CMP $-0x1,%R15D |
(84) 0x40df8d JE 40dfc0 |
(84) 0x40df8f TEST $0x1,%DL |
(84) 0x40df92 JE 40e000 |
(84) 0x40df94 ADD -0x98(%RBP),%R15D |
(84) 0x40df9b JMP 40e040 |
0x40dfa0 NOPW %CS:(%RAX,%RAX,1) |
0x40dfaf NOPW %CS:(%RAX,%RAX,1) |
0x40dfbe XCHG %AX,%AX |
(84) 0x40dfc0 MOV -0x78(%RBP),%RDX |
(84) 0x40dfc4 LEA 0x1(%R8,%RDX,1),%EDX |
(84) 0x40dfc9 IMUL -0x30(%RBP),%EDX |
(84) 0x40dfcd ADD -0x2c(%RBP),%ECX |
(84) 0x40dfd0 ADD -0x34(%RBP),%ECX |
(84) 0x40dfd3 ADD %EDX,%ECX |
(84) 0x40dfd5 JMP 40e04e |
0x40dfd7 NOPW %CS:(%RAX,%RAX,1) |
0x40dfe6 NOPW %CS:(%RAX,%RAX,1) |
0x40dff5 NOPW %CS:(%RAX,%RAX,1) |
(84) 0x40e000 CMP $-0x1,%ESI |
(84) 0x40e003 JE 40e040 |
(84) 0x40e005 CMP %ECX,%R13D |
(84) 0x40e008 JNE 40e200 |
(84) 0x40e00e VPADDD %XMM7,%XMM8,%XMM8 |
(84) 0x40e012 VPEXTRD $0x1,%XMM8,%EDX |
(84) 0x40e018 IMUL %EBX,%EDX |
(84) 0x40e01b VMOVD %XMM8,%ECX |
(84) 0x40e01f ADD %EDX,%ECX |
(84) 0x40e021 JMP 40e04e |
0x40e023 NOPW %CS:(%RAX,%RAX,1) |
0x40e032 NOPW %CS:(%RAX,%RAX,1) |
(84) 0x40e040 IMUL -0x30(%RBP),%R15D |
(84) 0x40e045 ADD -0x2c(%RBP),%ECX |
(84) 0x40e048 ADD -0x34(%RBP),%ECX |
(84) 0x40e04b ADD %R15D,%ECX |
(84) 0x40e04e MOV %R10,%R15 |
(84) 0x40e051 TEST %ECX,%ECX |
(84) 0x40e053 JS 40e2c0 |
(84) 0x40e059 CMP %EDI,%ECX |
(84) 0x40e05b JGE 40e300 |
(84) 0x40e061 MOV %ECX,%EBX |
(84) 0x40e063 CMP %RBX,%R9 |
(84) 0x40e066 JE 40de80 |
(84) 0x40e06c MOV %R15,-0x80(%RBP) |
(84) 0x40e070 MOVSXD (%RAX,%RBX,4),%RSI |
(84) 0x40e074 MOVSXD %ECX,%RDX |
(84) 0x40e077 SAL $0x6,%RDX |
(84) 0x40e07b ADD %RSI,%RDX |
(84) 0x40e07e MOV -0x48(%RBP),%RAX |
(84) 0x40e082 MOV 0x8(%RAX),%R14 |
(84) 0x40e086 MOV -0x90(%RBP),%R13 |
(84) 0x40e08d MOV (%R14,%R13,4),%ESI |
(84) 0x40e091 MOV %ESI,(%R14,%RDX,4) |
(84) 0x40e095 MOV %R11,%R8 |
(84) 0x40e098 MOV 0x10(%RAX),%R11 |
(84) 0x40e09c MOV (%R11,%R13,4),%ESI |
(84) 0x40e0a0 MOV %ESI,(%R11,%RDX,4) |
(84) 0x40e0a4 LEA (%R8,%R12,8),%R12 |
(84) 0x40e0a8 LEA (,%RDX,8),%RSI |
(84) 0x40e0b0 LEA (%RSI,%RSI,2),%R10 |
(84) 0x40e0b4 MOV 0x10(%R12),%RSI |
(84) 0x40e0b9 MOV %RSI,0x10(%R8,%R10,1) |
(84) 0x40e0be VMOVUPS (%R12),%XMM8 |
(84) 0x40e0c4 MOV %R8,%RDI |
(84) 0x40e0c7 VMOVUPS %XMM8,(%R8,%R10,1) |
(84) 0x40e0cd MOV 0x20(%RAX),%RSI |
(84) 0x40e0d1 LEA (,%R13,8),%R8 |
(84) 0x40e0d9 LEA (%R8,%R8,2),%R15 |
(84) 0x40e0dd MOV 0x10(%RSI,%R15,1),%R8 |
(84) 0x40e0e2 MOV %R8,0x10(%RSI,%R10,1) |
(84) 0x40e0e7 VMOVUPS (%RSI,%R15,1),%XMM8 |
(84) 0x40e0ed VMOVUPS %XMM8,(%RSI,%R10,1) |
(84) 0x40e0f3 MOV 0x28(%RAX),%R8 |
(84) 0x40e0f7 MOV 0x10(%R8,%R15,1),%R9 |
(84) 0x40e0fc MOV %R9,0x10(%R8,%R10,1) |
(84) 0x40e101 VMOVDQU (%R8,%R15,1),%XMM8 |
(84) 0x40e107 VMOVDQU %XMM8,(%R8,%R10,1) |
(84) 0x40e10d MOV 0x30(%RAX),%R10 |
(84) 0x40e111 MOV -0x60(%RBP),%RAX |
(84) 0x40e115 MOV (%R10,%R13,8),%R9 |
(84) 0x40e119 MOV %R9,(%R10,%RDX,8) |
(84) 0x40e11d MOV (%RAX,%RBX,4),%EDX |
(84) 0x40e120 LEA 0x1(%RDX),%R9D |
(84) 0x40e124 MOV %R9D,(%RAX,%RBX,4) |
(84) 0x40e128 CMP $0x3f,%EDX |
(84) 0x40e12b JGE 40e340 |
(84) 0x40e131 MOV -0x50(%RBP),%RDX |
(84) 0x40e135 MOVSXD (%RAX,%RDX,4),%RBX |
(84) 0x40e139 DEC %RBX |
(84) 0x40e13c MOV %EBX,(%RAX,%RDX,4) |
(84) 0x40e13f TEST %EBX,%EBX |
(84) 0x40e141 JE 40e1bc |
(84) 0x40e143 LEA (%RSI,%R15,1),%RDX |
(84) 0x40e147 ADD -0x88(%RBP),%RBX |
(84) 0x40e14e MOV (%R14,%RBX,4),%R9D |
(84) 0x40e152 MOV -0x90(%RBP),%R13 |
(84) 0x40e159 MOV %R9D,(%R14,%R13,4) |
(84) 0x40e15d MOV (%R11,%RBX,4),%R9D |
(84) 0x40e161 MOV %R9D,(%R11,%R13,4) |
(84) 0x40e165 ADD %R8,%R15 |
(84) 0x40e168 LEA (,%RBX,8),%R9 |
(84) 0x40e170 LEA (%R9,%R9,2),%R9 |
(84) 0x40e174 MOV %RDI,%R14 |
(84) 0x40e177 MOV 0x10(%RDI,%R9,1),%R11 |
(84) 0x40e17c MOV %R11,0x10(%R12) |
(84) 0x40e181 VMOVUPS (%RDI,%R9,1),%XMM8 |
(84) 0x40e187 VMOVUPS %XMM8,(%R12) |
(84) 0x40e18d MOV 0x10(%RSI,%R9,1),%R11 |
(84) 0x40e192 MOV %R11,0x10(%RDX) |
(84) 0x40e196 VMOVUPS (%RSI,%R9,1),%XMM8 |
(84) 0x40e19c VMOVUPS %XMM8,(%RDX) |
(84) 0x40e1a0 MOV 0x10(%R8,%R9,1),%RDX |
(84) 0x40e1a5 MOV %RDX,0x10(%R15) |
(84) 0x40e1a9 VMOVDQU (%R8,%R9,1),%XMM8 |
(84) 0x40e1af VMOVDQU %XMM8,(%R15) |
(84) 0x40e1b4 MOV (%R10,%RBX,8),%RDX |
(84) 0x40e1b8 MOV %RDX,(%R10,%R13,8) |
(84) 0x40e1bc MOV -0xa0(%RBP),%R14 |
(84) 0x40e1c3 CMP %ECX,%R14D |
(84) 0x40e1c6 JGE 40e1ce |
(84) 0x40e1c8 MOV -0x48(%RBP),%RCX |
(84) 0x40e1cc DECL (%RCX) |
(84) 0x40e1ce MOV -0x38(%RBP),%ECX |
(84) 0x40e1d1 MOV -0x50(%RBP),%R9 |
(84) 0x40e1d5 MOV %RDI,%R11 |
(84) 0x40e1d8 MOV %ECX,%EDI |
(84) 0x40e1da MOV -0x70(%RBP),%R13 |
(84) 0x40e1de MOV -0x58(%RBP),%RBX |
(84) 0x40e1e2 MOV -0x80(%RBP),%R15 |
(84) 0x40e1e6 CMP (%RAX,%R9,4),%R15D |
(84) 0x40e1ea JL 40de91 |
(83) 0x40e1f0 JMP 40ddc0 |
0x40e1f5 NOPW %CS:(%RAX,%RAX,1) |
(84) 0x40e200 IMUL %EBX,%R15D |
(84) 0x40e204 CMP $-0x1,%ECX |
(84) 0x40e207 JE 40e240 |
(84) 0x40e209 ADD %ESI,%R15D |
(84) 0x40e20c IMUL %R13D,%R15D |
(84) 0x40e210 JMP 40e04b |
0x40e215 NOPW %CS:(%RAX,%RAX,1) |
0x40e224 NOPW %CS:(%RAX,%RAX,1) |
0x40e233 NOPW %CS:(%RAX,%RAX,1) |
(84) 0x40e240 ADD %R14D,%ESI |
(84) 0x40e243 ADD %R15D,%ESI |
(84) 0x40e246 MOV %ESI,%ECX |
(84) 0x40e248 JMP 40e04e |
0x40e24d NOPW %CS:(%RAX,%RAX,1) |
0x40e25c NOPW %CS:(%RAX,%RAX,1) |
0x40e26b NOPW %CS:(%RAX,%RAX,1) |
0x40e27a NOPW (%RAX,%RAX,1) |
0x40e280 ADD $0x78,%RSP |
0x40e284 POP %RBX |
0x40e285 POP %R12 |
0x40e287 POP %R13 |
0x40e289 POP %R14 |
0x40e28b POP %R15 |
0x40e28d POP %RBP |
0x40e28e RET |
0x40e28f NOPW %CS:(%RAX,%RAX,1) |
0x40e29e NOPW %CS:(%RAX,%RAX,1) |
0x40e2ad NOPW %CS:(%RAX,%RAX,1) |
0x40e2bc NOPL (%RAX) |
0x40e2c0 MOV $0x426ee5,%EDI |
0x40e2c5 MOV $0x426e06,%ESI |
0x40e2ca MOV $0x426eef,%ECX |
0x40e2cf MOV $0xf6,%EDX |
0x40e2d4 CALL 402fa0 <__assert_fail@plt> |
0x40e2d9 NOPW %CS:(%RAX,%RAX,1) |
0x40e2e8 NOPW %CS:(%RAX,%RAX,1) |
0x40e2f7 NOPW (%RAX,%RAX,1) |
0x40e300 MOV $0x426f1e,%EDI |
0x40e305 MOV $0x426e06,%ESI |
0x40e30a MOV $0x426eef,%ECX |
0x40e30f MOV $0xf7,%EDX |
0x40e314 CALL 402fa0 <__assert_fail@plt> |
0x40e319 NOPW %CS:(%RAX,%RAX,1) |
0x40e328 NOPW %CS:(%RAX,%RAX,1) |
0x40e337 NOPW (%RAX,%RAX,1) |
0x40e340 MOV $0x426f38,%EDI |
0x40e345 MOV $0x426e06,%ESI |
0x40e34a MOV $0x426f57,%ECX |
0x40e34f MOV $0x106,%EDX |
0x40e354 CALL 402fa0 <__assert_fail@plt> |
0x40e359 NOPW %CS:(%RAX,%RAX,1) |
0x40e363 NOPW %CS:(%RAX,%RAX,1) |
0x40e36d NOPW %CS:(%RAX,%RAX,1) |
0x40e377 NOPW (%RAX,%RAX,1) |
Path / |
Source file and lines | linkCells.c:209-385 |
Module | exec |
nb instructions | 99 |
nb uops | 103 |
loop length | 686 |
used x86 registers | 13 |
used mmx registers | 0 |
used xmm registers | 1 |
used ymm registers | 0 |
used zmm registers | 0 |
nb stack references | 6 |
micro-operation queue | 17.17 cycles |
front end | 17.17 cycles |
P0 | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P10 | P11 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
uops | 4.80 | 4.80 | 4.67 | 4.67 | 8.00 | 4.87 | 4.80 | 8.00 | 8.00 | 8.00 | 4.73 | 4.67 |
cycles | 4.80 | 4.80 | 4.67 | 4.67 | 8.00 | 4.87 | 4.80 | 8.00 | 8.00 | 8.00 | 4.73 | 4.67 |
Cycles executing div or sqrt instructions | NA |
FE+BE cycles | 16.62 |
Stall cycles | 0.00 |
Front-end | 17.17 |
Dispatch | 8.00 |
Overall L1 | 17.17 |
all | 4% |
load | NA (no load vectorizable/vectorized instructions) |
store | 0% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | NA (no add-sub vectorizable/vectorized instructions) |
fma | NA (no fma vectorizable/vectorized instructions) |
div/sqrt | NA (no div/sqrt vectorizable/vectorized instructions) |
other | 6% |
all | 8% |
load | NA (no load vectorizable/vectorized instructions) |
store | 10% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | NA (no add-sub vectorizable/vectorized instructions) |
fma | NA (no fma vectorizable/vectorized instructions) |
div/sqrt | NA (no div/sqrt vectorizable/vectorized instructions) |
other | 7% |
Instruction | Nb FU | P0 | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P10 | P11 | Latency | Recip. throughput |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
PUSH %RBP | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
MOV %RSP,%RBP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
PUSH %R15 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH %R14 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH %R13 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH %R12 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH %RBX | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
SUB $0x78,%RSP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV %RSI,-0x48(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV 0xc(%RDI),%R14D | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV %RDI,-0x40(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV 0x14(%RDI),%EDI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
CMP %EDI,%R14D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV %EDI,-0x38(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
JGE 40dd92 <updateLinkCells+0x52> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
MOV %EDI,%ECX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOVSXD %R14D,%RDI | 1 | 0 | 0.33 | 0 | 0 | 0 | 0.33 | 0 | 0 | 0 | 0 | 0.33 | 0 | 1 | 0.33 |
SAL $0x2,%RDI | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0-2 | 0.50 |
MOV -0x40(%RBP),%RAX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
ADD 0x78(%RAX),%RDI | 1 | 0.20 | 0.20 | 0.33 | 0.33 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.33 | 1 | 0.33 |
MOV %R14D,%EAX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
NOT %EAX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
ADD %ECX,%EAX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
LEA 0x4(,%RAX,4),%RDX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
XOR %ESI,%ESI | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
CALL 417870 <_intel_fast_memset> | 2 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 0 | 1 |
MOV -0x38(%RBP),%EDI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
TEST %R14D,%R14D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 2 | 0.20 |
JLE 40e280 <updateLinkCells+0x540> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
MOV -0x40(%RBP),%RAX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV 0x78(%RAX),%RAX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
LEA 0x1(%R14),%ECX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1-2 | 0.20 |
MOV %ECX,-0x2c(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
XOR %R9D,%R9D | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
VPCMPEQD %XMM0,%XMM0,%XMM0 | 1 | 0.50 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.50 |
MOV %RAX,-0x60(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV %R14,-0xa0(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
JMP 40ddcc <updateLinkCells+0x8c> | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 5.84 |
XCHG %AX,%AX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
XCHG %AX,%AX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW (%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
ADD $0x78,%RSP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
POP %RBX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
POP %R12 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
POP %R13 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
POP %R14 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
POP %R15 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
POP %RBP | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
RET | 1 | 0.50 | 0 | 0.33 | 0.33 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0.33 | 0 | 2.13 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPL (%RAX) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
MOV $0x426ee5,%EDI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV $0x426e06,%ESI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV $0x426eef,%ECX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV $0xf6,%EDX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
CALL 402fa0 <__assert_fail@plt> | 2 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 0 | 1 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW (%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
MOV $0x426f1e,%EDI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV $0x426e06,%ESI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV $0x426eef,%ECX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV $0xf7,%EDX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
CALL 402fa0 <__assert_fail@plt> | 2 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 0 | 1 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW (%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
MOV $0x426f38,%EDI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV $0x426e06,%ESI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV $0x426f57,%ECX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV $0x106,%EDX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
CALL 402fa0 <__assert_fail@plt> | 2 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 0 | 1 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW (%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
Source file and lines | linkCells.c:209-385 |
Module | exec |
nb instructions | 99 |
nb uops | 103 |
loop length | 686 |
used x86 registers | 13 |
used mmx registers | 0 |
used xmm registers | 1 |
used ymm registers | 0 |
used zmm registers | 0 |
nb stack references | 6 |
micro-operation queue | 17.17 cycles |
front end | 17.17 cycles |
P0 | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P10 | P11 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
uops | 4.80 | 4.80 | 4.67 | 4.67 | 8.00 | 4.87 | 4.80 | 8.00 | 8.00 | 8.00 | 4.73 | 4.67 |
cycles | 4.80 | 4.80 | 4.67 | 4.67 | 8.00 | 4.87 | 4.80 | 8.00 | 8.00 | 8.00 | 4.73 | 4.67 |
Cycles executing div or sqrt instructions | NA |
FE+BE cycles | 16.62 |
Stall cycles | 0.00 |
Front-end | 17.17 |
Dispatch | 8.00 |
Overall L1 | 17.17 |
all | 4% |
load | NA (no load vectorizable/vectorized instructions) |
store | 0% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | NA (no add-sub vectorizable/vectorized instructions) |
fma | NA (no fma vectorizable/vectorized instructions) |
div/sqrt | NA (no div/sqrt vectorizable/vectorized instructions) |
other | 6% |
all | 8% |
load | NA (no load vectorizable/vectorized instructions) |
store | 10% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | NA (no add-sub vectorizable/vectorized instructions) |
fma | NA (no fma vectorizable/vectorized instructions) |
div/sqrt | NA (no div/sqrt vectorizable/vectorized instructions) |
other | 7% |
Instruction | Nb FU | P0 | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P10 | P11 | Latency | Recip. throughput |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
PUSH %RBP | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
MOV %RSP,%RBP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
PUSH %R15 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH %R14 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH %R13 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH %R12 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH %RBX | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
SUB $0x78,%RSP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV %RSI,-0x48(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV 0xc(%RDI),%R14D | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV %RDI,-0x40(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV 0x14(%RDI),%EDI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
CMP %EDI,%R14D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV %EDI,-0x38(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
JGE 40dd92 <updateLinkCells+0x52> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
MOV %EDI,%ECX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOVSXD %R14D,%RDI | 1 | 0 | 0.33 | 0 | 0 | 0 | 0.33 | 0 | 0 | 0 | 0 | 0.33 | 0 | 1 | 0.33 |
SAL $0x2,%RDI | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0-2 | 0.50 |
MOV -0x40(%RBP),%RAX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
ADD 0x78(%RAX),%RDI | 1 | 0.20 | 0.20 | 0.33 | 0.33 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.33 | 1 | 0.33 |
MOV %R14D,%EAX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
NOT %EAX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
ADD %ECX,%EAX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
LEA 0x4(,%RAX,4),%RDX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
XOR %ESI,%ESI | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
CALL 417870 <_intel_fast_memset> | 2 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 0 | 1 |
MOV -0x38(%RBP),%EDI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
TEST %R14D,%R14D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 2 | 0.20 |
JLE 40e280 <updateLinkCells+0x540> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
MOV -0x40(%RBP),%RAX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV 0x78(%RAX),%RAX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
LEA 0x1(%R14),%ECX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1-2 | 0.20 |
MOV %ECX,-0x2c(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
XOR %R9D,%R9D | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
VPCMPEQD %XMM0,%XMM0,%XMM0 | 1 | 0.50 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.50 |
MOV %RAX,-0x60(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV %R14,-0xa0(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
JMP 40ddcc <updateLinkCells+0x8c> | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 5.84 |
XCHG %AX,%AX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
XCHG %AX,%AX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW (%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
ADD $0x78,%RSP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
POP %RBX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
POP %R12 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
POP %R13 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
POP %R14 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
POP %R15 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
POP %RBP | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
RET | 1 | 0.50 | 0 | 0.33 | 0.33 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0.33 | 0 | 2.13 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPL (%RAX) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
MOV $0x426ee5,%EDI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV $0x426e06,%ESI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV $0x426eef,%ECX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV $0xf6,%EDX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
CALL 402fa0 <__assert_fail@plt> | 2 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 0 | 1 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW (%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
MOV $0x426f1e,%EDI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV $0x426e06,%ESI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV $0x426eef,%ECX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV $0xf7,%EDX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
CALL 402fa0 <__assert_fail@plt> | 2 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 0 | 1 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW (%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
MOV $0x426f38,%EDI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV $0x426e06,%ESI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV $0x426f57,%ECX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV $0x106,%EDX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
CALL 402fa0 <__assert_fail@plt> | 2 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 0 | 1 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW (%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
Name | Coverage (%) | Time (s) |
---|---|---|
▼updateLinkCells– | 0.23 | 0.05 |
▼Loop 83 - linkCells.c:209-371 - exec– | 0 | 0.04 |
○Loop 84 - linkCells.c:209-371 - exec | 0.22 | 2.93 |