[0] Code Region Iterations: 100 Instructions: 13000 Total Cycles: 5640 Total uOps: 15400 Dispatch Width: 6 uOps Per Cycle: 2.73 IPC: 2.30 Block RThroughput: 40.0 Instruction Info: [1]: #uOps [2]: Latency [3]: RThroughput [4]: MayLoad [5]: MayStore [6]: HasSideEffects (U) [1] [2] [3] [4] [5] [6] Instructions: 1 5 0.50 * movslq (%r11,%rdx,4), %rax 1 1 0.25 movq %rax, %rsi 1 1 0.50 shlq $5, %rsi 1 1 0.50 leaq (%rsi,%rsi,2), %rbx 2 8 0.50 * vmovups (%rdi,%rbx), %zmm15 2 8 0.50 * vmovups 32(%rdi,%rbx), %zmm16 2 8 0.50 * vmovups 64(%rdi,%rbx), %zmm27 2 8 0.50 * vmovups 128(%rsp), %zmm1 1 4 0.50 vsubps %zmm15, %zmm1, %zmm24 2 8 0.50 * vmovups 320(%rsp), %zmm1 1 4 0.50 vsubps %zmm16, %zmm1, %zmm25 1 4 0.50 vsubps %zmm27, %zmm9, %zmm26 2 8 0.50 * vmovups (%rsp), %zmm1 1 4 0.50 vsubps %zmm15, %zmm1, %zmm21 2 8 0.50 * vmovups 256(%rsp), %zmm1 1 4 0.50 vsubps %zmm16, %zmm1, %zmm22 1 4 0.50 vsubps %zmm27, %zmm10, %zmm23 2 8 0.50 * vmovups 448(%rsp), %zmm1 1 4 0.50 vsubps %zmm15, %zmm1, %zmm17 2 8 0.50 * vmovups 192(%rsp), %zmm1 1 4 0.50 vsubps %zmm16, %zmm1, %zmm19 1 4 0.50 vsubps %zmm27, %zmm11, %zmm20 2 8 0.50 * vmovups 384(%rsp), %zmm1 1 4 0.50 vsubps %zmm15, %zmm1, %zmm18 1 4 0.50 vsubps %zmm16, %zmm8, %zmm16 1 4 0.50 vsubps %zmm27, %zmm12, %zmm15 1 4 0.50 vmulps %zmm26, %zmm26, %zmm27 1 4 0.50 vfmadd231ps %zmm25, %zmm25, %zmm27 1 4 0.50 vfmadd231ps %zmm24, %zmm24, %zmm27 1 4 0.50 vmulps %zmm23, %zmm23, %zmm28 1 4 0.50 vfmadd231ps %zmm22, %zmm22, %zmm28 1 4 0.50 vfmadd231ps %zmm21, %zmm21, %zmm28 1 4 0.50 vmulps %zmm20, %zmm20, %zmm29 1 4 0.50 vfmadd231ps %zmm19, %zmm19, %zmm29 1 4 0.50 vfmadd231ps %zmm17, %zmm17, %zmm29 1 4 0.50 vmulps %zmm15, %zmm15, %zmm30 1 4 0.50 vfmadd231ps %zmm16, %zmm16, %zmm30 3 4 2.00 vrcp14ps %zmm27, %zmm31 3 4 2.00 vrcp14ps %zmm28, %zmm1 3 4 2.00 vrcp14ps %zmm29, %zmm2 1 4 0.50 vfmadd231ps %zmm18, %zmm18, %zmm30 3 4 2.00 vrcp14ps %zmm30, %zmm3 1 4 0.50 vmulps %zmm31, %zmm6, %zmm4 1 4 0.50 vmulps %zmm4, %zmm31, %zmm4 1 4 0.50 vmulps %zmm4, %zmm31, %zmm4 1 4 0.50 vaddps %zmm13, %zmm4, %zmm5 1 4 0.50 vmulps %zmm31, %zmm7, %zmm31 1 4 0.50 vmulps %zmm5, %zmm31, %zmm5 1 4 0.50 vmulps %zmm1, %zmm6, %zmm31 1 4 0.50 vmulps %zmm31, %zmm1, %zmm31 1 4 0.50 vmulps %zmm31, %zmm1, %zmm31 1 4 0.50 vmulps %zmm5, %zmm4, %zmm4 1 4 0.50 vaddps %zmm13, %zmm31, %zmm5 1 4 0.50 vmulps %zmm1, %zmm7, %zmm1 1 4 0.50 vmulps %zmm5, %zmm1, %zmm1 1 4 0.50 vmulps %zmm2, %zmm6, %zmm5 1 4 0.50 vmulps %zmm5, %zmm2, %zmm5 1 4 0.50 vmulps %zmm5, %zmm2, %zmm5 1 4 0.50 vmulps %zmm1, %zmm31, %zmm1 1 4 0.50 vaddps %zmm13, %zmm5, %zmm31 1 4 0.50 vmulps %zmm2, %zmm7, %zmm2 1 4 0.50 vmulps %zmm31, %zmm2, %zmm2 1 4 0.50 vmulps %zmm3, %zmm6, %zmm31 1 4 0.50 vmulps %zmm31, %zmm3, %zmm31 1 4 0.50 vmulps %zmm31, %zmm3, %zmm31 1 4 0.50 vmulps %zmm2, %zmm5, %zmm2 1 4 0.50 vaddps %zmm13, %zmm31, %zmm5 1 4 0.50 vmulps %zmm3, %zmm7, %zmm3 1 4 0.50 vmulps %zmm5, %zmm3, %zmm3 1 4 0.50 vmulps %zmm3, %zmm31, %zmm3 1 0 0.17 xorl %esi, %esi 1 0 0.17 xorl %edi, %edi 1 1 0.25 testl $2147483647, %eax 1 1 0.50 sete %sil 1 1 0.50 setne %dil 1 1 0.25 movl $255, %eax 1 1 0.50 cmovel %r8d, %eax 1 1 0.25 movl $255, %ecx 1 1 0.50 cmovel %r9d, %ecx 1 1 0.25 xorl $255, %esi 1 1 1.00 kmovd %esi, %k1 1 4 1.00 vcmpltps %zmm0, %zmm27, %k1 {%k1} 1 4 0.50 vmulps %zmm14, %zmm4, %zmm4 1 4 0.50 vmulps %zmm4, %zmm24, %zmm5 {%k1} {z} 1 4 0.50 vmulps %zmm4, %zmm25, %zmm24 {%k1} {z} 1 4 0.50 vmulps %zmm4, %zmm26, %zmm4 {%k1} {z} 1 1 0.50 leal (%rdi,%rdi,2), %esi 1 1 0.25 orl $252, %esi 1 1 1.00 kmovd %esi, %k1 1 4 1.00 vcmpltps %zmm0, %zmm28, %k1 {%k1} 1 4 0.50 vmulps %zmm14, %zmm1, %zmm1 1 4 0.50 vmulps %zmm1, %zmm21, %zmm21 {%k1} {z} 1 4 0.50 vaddps %zmm21, %zmm5, %zmm5 1 4 0.50 vmulps %zmm1, %zmm22, %zmm21 {%k1} {z} 1 4 0.50 vaddps %zmm21, %zmm24, %zmm21 1 4 0.50 vmulps %zmm1, %zmm23, %zmm1 {%k1} {z} 1 4 0.50 vaddps %zmm1, %zmm4, %zmm1 1 1 1.00 kmovd %eax, %k1 1 4 1.00 vcmpltps %zmm0, %zmm29, %k1 {%k1} 1 4 0.50 vmulps %zmm14, %zmm2, %zmm2 1 4 0.50 vmulps %zmm2, %zmm17, %zmm4 {%k1} {z} 1 4 0.50 vmulps %zmm2, %zmm19, %zmm17 {%k1} {z} 1 4 0.50 vmulps %zmm2, %zmm20, %zmm2 {%k1} {z} 1 1 1.00 kmovd %ecx, %k1 1 4 1.00 vcmpltps %zmm0, %zmm30, %k1 {%k1} 1 4 0.50 vmulps %zmm14, %zmm3, %zmm3 1 4 0.50 vmulps %zmm3, %zmm18, %zmm18 {%k1} {z} 1 4 0.50 vaddps %zmm18, %zmm4, %zmm4 1 4 0.50 vaddps %zmm4, %zmm5, %zmm4 1 4 0.50 vmulps %zmm3, %zmm16, %zmm5 {%k1} {z} 1 4 0.50 vaddps %zmm5, %zmm17, %zmm5 1 4 0.50 vaddps %zmm5, %zmm21, %zmm5 1 4 0.50 vmulps %zmm3, %zmm15, %zmm3 {%k1} {z} 1 5 0.50 * movq 176(%r15), %rax 1 4 0.50 vaddps %zmm3, %zmm2, %zmm2 2 8 0.50 * vmovups (%rax,%rbx), %zmm3 1 4 0.50 vsubps %zmm4, %zmm3, %zmm3 2 1 1.00 * vmovups %zmm3, (%rax,%rbx) 1 4 0.50 vaddps %zmm2, %zmm1, %zmm1 2 8 0.50 * vmovups 32(%rax,%rbx), %zmm2 1 4 0.50 vsubps %zmm5, %zmm2, %zmm2 2 1 1.00 * vmovups %zmm2, 32(%rax,%rbx) 2 8 0.50 * vmovups 64(%rax,%rbx), %zmm2 1 4 0.50 vsubps %zmm1, %zmm2, %zmm1 2 1 1.00 * vmovups %zmm1, 64(%rax,%rbx) 1 1 0.25 cmpq %rdx, %r10 1 1 0.50 je .LBB4_18 1 5 0.50 * movq 160(%r15), %rdi 1 1 0.25 incq %rdx 1 1 0.50 jmp .LBB4_8 Resources: [0] - SKXDivider [1] - SKXFPDivider [2] - SKXPort0 [3] - SKXPort1 [4] - SKXPort2 [5] - SKXPort3 [6] - SKXPort4 [7] - SKXPort5 [8] - SKXPort6 [9] - SKXPort7 Resource pressure per iteration: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] - - 52.01 14.97 8.49 8.51 3.00 52.02 11.00 2.00 Resource pressure by instruction: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions: - - - - 0.49 0.51 - - - - movslq (%r11,%rdx,4), %rax - - - - - - - - 1.00 - movq %rax, %rsi - - - - - - - - 1.00 - shlq $5, %rsi - - - 1.00 - - - - - - leaq (%rsi,%rsi,2), %rbx - - 0.01 0.99 0.50 0.50 - - - - vmovups (%rdi,%rbx), %zmm15 - - - - 0.50 0.50 - 1.00 - - vmovups 32(%rdi,%rbx), %zmm16 - - - 1.00 0.50 0.50 - - - - vmovups 64(%rdi,%rbx), %zmm27 - - - 0.99 0.51 0.49 - 0.01 - - vmovups 128(%rsp), %zmm1 - - 0.01 - - - - 0.99 - - vsubps %zmm15, %zmm1, %zmm24 - - - 1.00 0.49 0.51 - - - - vmovups 320(%rsp), %zmm1 - - 0.99 - - - - 0.01 - - vsubps %zmm16, %zmm1, %zmm25 - - 0.01 - - - - 0.99 - - vsubps %zmm27, %zmm9, %zmm26 - - 0.01 0.99 0.51 0.49 - - - - vmovups (%rsp), %zmm1 - - - - - - - 1.00 - - vsubps %zmm15, %zmm1, %zmm21 - - - - 0.49 0.51 - 1.00 - - vmovups 256(%rsp), %zmm1 - - 0.01 - - - - 0.99 - - vsubps %zmm16, %zmm1, %zmm22 - - 0.99 - - - - 0.01 - - vsubps %zmm27, %zmm10, %zmm23 - - - 1.00 0.51 0.49 - - - - vmovups 448(%rsp), %zmm1 - - 0.01 - - - - 0.99 - - vsubps %zmm15, %zmm1, %zmm17 - - 0.01 - 0.49 0.51 - 0.99 - - vmovups 192(%rsp), %zmm1 - - - - - - - 1.00 - - vsubps %zmm16, %zmm1, %zmm19 - - 0.01 - - - - 0.99 - - vsubps %zmm27, %zmm11, %zmm20 - - 0.99 - 0.50 0.50 - 0.01 - - vmovups 384(%rsp), %zmm1 - - - - - - - 1.00 - - vsubps %zmm15, %zmm1, %zmm18 - - 0.01 - - - - 0.99 - - vsubps %zmm16, %zmm8, %zmm16 - - - - - - - 1.00 - - vsubps %zmm27, %zmm12, %zmm15 - - 1.00 - - - - - - - vmulps %zmm26, %zmm26, %zmm27 - - 1.00 - - - - - - - vfmadd231ps %zmm25, %zmm25, %zmm27 - - 0.99 - - - - 0.01 - - vfmadd231ps %zmm24, %zmm24, %zmm27 - - - - - - - 1.00 - - vmulps %zmm23, %zmm23, %zmm28 - - - - - - - 1.00 - - vfmadd231ps %zmm22, %zmm22, %zmm28 - - 0.01 - - - - 0.99 - - vfmadd231ps %zmm21, %zmm21, %zmm28 - - 0.01 - - - - 0.99 - - vmulps %zmm20, %zmm20, %zmm29 - - 0.01 - - - - 0.99 - - vfmadd231ps %zmm19, %zmm19, %zmm29 - - - - - - - 1.00 - - vfmadd231ps %zmm17, %zmm17, %zmm29 - - 0.01 - - - - 0.99 - - vmulps %zmm15, %zmm15, %zmm30 - - 0.01 - - - - 0.99 - - vfmadd231ps %zmm16, %zmm16, %zmm30 - - 2.00 - - - - 1.00 - - vrcp14ps %zmm27, %zmm31 - - 2.00 - - - - 1.00 - - vrcp14ps %zmm28, %zmm1 - - 2.00 - - - - 1.00 - - vrcp14ps %zmm29, %zmm2 - - 1.00 - - - - - - - vfmadd231ps %zmm18, %zmm18, %zmm30 - - 2.00 - - - - 1.00 - - vrcp14ps %zmm30, %zmm3 - - - - - - - 1.00 - - vmulps %zmm31, %zmm6, %zmm4 - - 1.00 - - - - - - - vmulps %zmm4, %zmm31, %zmm4 - - 1.00 - - - - - - - vmulps %zmm4, %zmm31, %zmm4 - - 1.00 - - - - - - - vaddps %zmm13, %zmm4, %zmm5 - - - - - - - 1.00 - - vmulps %zmm31, %zmm7, %zmm31 - - 1.00 - - - - - - - vmulps %zmm5, %zmm31, %zmm5 - - 1.00 - - - - - - - vmulps %zmm1, %zmm6, %zmm31 - - 1.00 - - - - - - - vmulps %zmm31, %zmm1, %zmm31 - - 0.99 - - - - 0.01 - - vmulps %zmm31, %zmm1, %zmm31 - - 1.00 - - - - - - - vmulps %zmm5, %zmm4, %zmm4 - - - - - - - 1.00 - - vaddps %zmm13, %zmm31, %zmm5 - - - - - - - 1.00 - - vmulps %zmm1, %zmm7, %zmm1 - - - - - - - 1.00 - - vmulps %zmm5, %zmm1, %zmm1 - - - - - - - 1.00 - - vmulps %zmm2, %zmm6, %zmm5 - - - - - - - 1.00 - - vmulps %zmm5, %zmm2, %zmm5 - - - - - - - 1.00 - - vmulps %zmm5, %zmm2, %zmm5 - - 0.99 - - - - 0.01 - - vmulps %zmm1, %zmm31, %zmm1 - - - - - - - 1.00 - - vaddps %zmm13, %zmm5, %zmm31 - - 1.00 - - - - - - - vmulps %zmm2, %zmm7, %zmm2 - - - - - - - 1.00 - - vmulps %zmm31, %zmm2, %zmm2 - - - - - - - 1.00 - - vmulps %zmm3, %zmm6, %zmm31 - - 1.00 - - - - - - - vmulps %zmm31, %zmm3, %zmm31 - - 1.00 - - - - - - - vmulps %zmm31, %zmm3, %zmm31 - - 1.00 - - - - - - - vmulps %zmm2, %zmm5, %zmm2 - - 1.00 - - - - - - - vaddps %zmm13, %zmm31, %zmm5 - - 1.00 - - - - - - - vmulps %zmm3, %zmm7, %zmm3 - - 1.00 - - - - - - - vmulps %zmm5, %zmm3, %zmm3 - - 1.00 - - - - - - - vmulps %zmm3, %zmm31, %zmm3 - - - - - - - - - - xorl %esi, %esi - - - - - - - - - - xorl %edi, %edi - - - - - - - - 1.00 - testl $2147483647, %eax - - - - - - - - 1.00 - sete %sil - - - - - - - - 1.00 - setne %dil - - - 1.00 - - - - - - movl $255, %eax - - - - - - - - 1.00 - cmovel %r8d, %eax - - - 1.00 - - - - - - movl $255, %ecx - - - - - - - - 1.00 - cmovel %r9d, %ecx - - - 1.00 - - - - - - xorl $255, %esi - - - - - - - 1.00 - - kmovd %esi, %k1 - - - - - - - 1.00 - - vcmpltps %zmm0, %zmm27, %k1 {%k1} - - - - - - - 1.00 - - vmulps %zmm14, %zmm4, %zmm4 - - 1.00 - - - - - - - vmulps %zmm4, %zmm24, %zmm5 {%k1} {z} - - - - - - - 1.00 - - vmulps %zmm4, %zmm25, %zmm24 {%k1} {z} - - 1.00 - - - - - - - vmulps %zmm4, %zmm26, %zmm4 {%k1} {z} - - - 1.00 - - - - - - leal (%rdi,%rdi,2), %esi - - - - - - - - 1.00 - orl $252, %esi - - - - - - - 1.00 - - kmovd %esi, %k1 - - - - - - - 1.00 - - vcmpltps %zmm0, %zmm28, %k1 {%k1} - - 0.99 - - - - 0.01 - - vmulps %zmm14, %zmm1, %zmm1 - - 0.99 - - - - 0.01 - - vmulps %zmm1, %zmm21, %zmm21 {%k1} {z} - - 1.00 - - - - - - - vaddps %zmm21, %zmm5, %zmm5 - - 0.01 - - - - 0.99 - - vmulps %zmm1, %zmm22, %zmm21 {%k1} {z} - - - - - - - 1.00 - - vaddps %zmm21, %zmm24, %zmm21 - - 0.99 - - - - 0.01 - - vmulps %zmm1, %zmm23, %zmm1 {%k1} {z} - - 1.00 - - - - - - - vaddps %zmm1, %zmm4, %zmm1 - - - - - - - 1.00 - - kmovd %eax, %k1 - - - - - - - 1.00 - - vcmpltps %zmm0, %zmm29, %k1 {%k1} - - - - - - - 1.00 - - vmulps %zmm14, %zmm2, %zmm2 - - 1.00 - - - - - - - vmulps %zmm2, %zmm17, %zmm4 {%k1} {z} - - - - - - - 1.00 - - vmulps %zmm2, %zmm19, %zmm17 {%k1} {z} - - 1.00 - - - - - - - vmulps %zmm2, %zmm20, %zmm2 {%k1} {z} - - - - - - - 1.00 - - kmovd %ecx, %k1 - - - - - - - 1.00 - - vcmpltps %zmm0, %zmm30, %k1 {%k1} - - 1.00 - - - - - - - vmulps %zmm14, %zmm3, %zmm3 - - - - - - - 1.00 - - vmulps %zmm3, %zmm18, %zmm18 {%k1} {z} - - 0.99 - - - - 0.01 - - vaddps %zmm18, %zmm4, %zmm4 - - 1.00 - - - - - - - vaddps %zmm4, %zmm5, %zmm4 - - - - - - - 1.00 - - vmulps %zmm3, %zmm16, %zmm5 {%k1} {z} - - 1.00 - - - - - - - vaddps %zmm5, %zmm17, %zmm5 - - 0.99 - - - - 0.01 - - vaddps %zmm5, %zmm21, %zmm5 - - 1.00 - - - - - - - vmulps %zmm3, %zmm15, %zmm3 {%k1} {z} - - - - 1.00 - - - - - movq 176(%r15), %rax - - 0.99 - - - - 0.01 - - vaddps %zmm3, %zmm2, %zmm2 - - - 1.00 0.50 0.50 - - - - vmovups (%rax,%rbx), %zmm3 - - 0.99 - - - - 0.01 - - vsubps %zmm4, %zmm3, %zmm3 - - - - - - 1.00 - - 1.00 vmovups %zmm3, (%rax,%rbx) - - 1.00 - - - - - - - vaddps %zmm2, %zmm1, %zmm1 - - - 1.00 0.50 0.50 - - - - vmovups 32(%rax,%rbx), %zmm2 - - 1.00 - - - - - - - vsubps %zmm5, %zmm2, %zmm2 - - - - - - 1.00 - - 1.00 vmovups %zmm2, 32(%rax,%rbx) - - - 1.00 0.50 0.50 - - - - vmovups 64(%rax,%rbx), %zmm2 - - 0.99 - - - - 0.01 - - vsubps %zmm1, %zmm2, %zmm1 - - - - - 1.00 1.00 - - - vmovups %zmm1, 64(%rax,%rbx) - - - - - - - - 1.00 - cmpq %rdx, %r10 - - - - - - - - 1.00 - je .LBB4_18 - - - - 0.50 0.50 - - - - movq 160(%r15), %rdi - - - 1.00 - - - - - - incq %rdx - - - - - - - - 1.00 - jmp .LBB4_8