Iterations: 100 Instructions: 2100 Total Cycles: 2990 Total uOps: 3000 Dispatch Width: 4 uOps Per Cycle: 1.00 IPC: 0.70 Block RThroughput: 7.5 Instruction Info: [1]: #uOps [2]: Latency [3]: RThroughput [4]: MayLoad [5]: MayStore [6]: HasSideEffects (U) [1] [2] [3] [4] [5] [6] Instructions: 2 5 1.00 * push r14 2 5 1.00 * push rbx 2 5 1.00 * push rax 1 1 0.33 mov rbx, rdi 1 1 0.33 movabs rax, 3074457345618258598 1 1 0.33 cmp rdi, rax 1 1 1.00 ja .LBB5_1 1 1 0.50 lea r14, [rbx + 2*rbx] 1 1 0.33 or r14, 3 1 1 0.33 add r14, 9 4 7 1.00 * call qword ptr [rip + __rustc::__rust_no_alloc_shim_is_unstable_v2@GOTPCREL] 1 1 0.33 mov esi, 4 1 1 0.33 mov rdi, r14 4 7 1.00 * call qword ptr [rip + __rustc::__rust_alloc_zeroed@GOTPCREL] 1 1 1.00 jmp .LBB5_3 1 0 0.25 xor eax, eax 1 1 0.33 mov rdx, rbx 1 1 0.33 add rsp, 8 1 6 0.50 * pop rbx 1 6 0.50 * pop r14 1 1 1.00 U ret Resources: [0] - SBDivider [1] - SBFPDivider [2] - SBPort0 [3] - SBPort1 [4] - SBPort4 [5] - SBPort5 [6.0] - SBPort23 [6.1] - SBPort23 Resource pressure per iteration: [0] [1] [2] [3] [4] [5] [6.0] [6.1] - - 4.49 4.50 5.00 6.01 4.50 4.50 Resource pressure by instruction: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions: - - - - 1.00 - 0.50 0.50 push r14 - - - - 1.00 - 0.50 0.50 push rbx - - - - 1.00 - 0.50 0.50 push rax - - 0.49 0.50 - 0.01 - - mov rbx, rdi - - 0.50 0.50 - - - - movabs rax, 3074457345618258598 - - 0.50 0.50 - - - - cmp rdi, rax - - - - - 1.00 - - ja .LBB5_1 - - 0.50 0.50 - - - - lea r14, [rbx + 2*rbx] - - 0.50 0.50 - - - - or r14, 3 - - 0.50 - - 0.50 - - add r14, 9 - - - - 1.00 1.00 1.00 1.00 call qword ptr [rip + __rustc::__rust_no_alloc_shim_is_unstable_v2@GOTPCREL] - - - 0.50 - 0.50 - - mov esi, 4 - - 0.50 0.50 - - - - mov rdi, r14 - - - - 1.00 1.00 1.00 1.00 call qword ptr [rip + __rustc::__rust_alloc_zeroed@GOTPCREL] - - - - - 1.00 - - jmp .LBB5_3 - - - - - - - - xor eax, eax - - 0.51 0.49 - - - - mov rdx, rbx - - 0.49 0.51 - - - - add rsp, 8 - - - - - - 0.50 0.50 pop rbx - - - - - - 0.50 0.50 pop r14 - - - - - 1.00 - - ret |