xref: /linux/rust/zerocopy/benches/read_from_bytes.x86-64.mca (revision b079329b8691768962aa514b8f8c9077ca352459)
1*c3739801SMiguel OjedaIterations:        100
2*c3739801SMiguel OjedaInstructions:      1300
3*c3739801SMiguel OjedaTotal Cycles:      377
4*c3739801SMiguel OjedaTotal uOps:        1400
5*c3739801SMiguel Ojeda
6*c3739801SMiguel OjedaDispatch Width:    4
7*c3739801SMiguel OjedauOps Per Cycle:    3.71
8*c3739801SMiguel OjedaIPC:               3.45
9*c3739801SMiguel OjedaBlock RThroughput: 3.5
10*c3739801SMiguel Ojeda
11*c3739801SMiguel Ojeda
12*c3739801SMiguel OjedaInstruction Info:
13*c3739801SMiguel Ojeda[1]: #uOps
14*c3739801SMiguel Ojeda[2]: Latency
15*c3739801SMiguel Ojeda[3]: RThroughput
16*c3739801SMiguel Ojeda[4]: MayLoad
17*c3739801SMiguel Ojeda[5]: MayStore
18*c3739801SMiguel Ojeda[6]: HasSideEffects (U)
19*c3739801SMiguel Ojeda
20*c3739801SMiguel Ojeda[1]    [2]    [3]    [4]    [5]    [6]    Instructions:
21*c3739801SMiguel Ojeda 1      1     0.33                        mov	rcx, rsi
22*c3739801SMiguel Ojeda 1      1     0.33                        cmp	rsi, 6
23*c3739801SMiguel Ojeda 1      1     1.00                        jne	.LBB5_2
24*c3739801SMiguel Ojeda 1      5     0.50    *                   mov	eax, dword ptr [rdi]
25*c3739801SMiguel Ojeda 1      5     0.50    *                   movzx	ecx, word ptr [rdi + 4]
26*c3739801SMiguel Ojeda 1      1     0.50                        shl	rcx, 32
27*c3739801SMiguel Ojeda 1      1     0.33                        or	rcx, rax
28*c3739801SMiguel Ojeda 1      1     0.50                        shl	rcx, 16
29*c3739801SMiguel Ojeda 1      1     0.33                        inc	rcx
30*c3739801SMiguel Ojeda 1      0     0.25                        xor	eax, eax
31*c3739801SMiguel Ojeda 1      1     0.33                        cmp	rsi, 6
32*c3739801SMiguel Ojeda 2      2     0.67                        cmove	rax, rcx
33*c3739801SMiguel Ojeda 1      1     1.00                  U     ret
34*c3739801SMiguel Ojeda
35*c3739801SMiguel Ojeda
36*c3739801SMiguel OjedaResources:
37*c3739801SMiguel Ojeda[0]   - SBDivider
38*c3739801SMiguel Ojeda[1]   - SBFPDivider
39*c3739801SMiguel Ojeda[2]   - SBPort0
40*c3739801SMiguel Ojeda[3]   - SBPort1
41*c3739801SMiguel Ojeda[4]   - SBPort4
42*c3739801SMiguel Ojeda[5]   - SBPort5
43*c3739801SMiguel Ojeda[6.0] - SBPort23
44*c3739801SMiguel Ojeda[6.1] - SBPort23
45*c3739801SMiguel Ojeda
46*c3739801SMiguel Ojeda
47*c3739801SMiguel OjedaResource pressure per iteration:
48*c3739801SMiguel Ojeda[0]    [1]    [2]    [3]    [4]    [5]    [6.0]  [6.1]
49*c3739801SMiguel Ojeda -      -     3.66   3.67    -     3.67   1.00   1.00
50*c3739801SMiguel Ojeda
51*c3739801SMiguel OjedaResource pressure by instruction:
52*c3739801SMiguel Ojeda[0]    [1]    [2]    [3]    [4]    [5]    [6.0]  [6.1]  Instructions:
53*c3739801SMiguel Ojeda -      -     0.63   0.36    -     0.01    -      -     mov	rcx, rsi
54*c3739801SMiguel Ojeda -      -     0.05   0.05    -     0.90    -      -     cmp	rsi, 6
55*c3739801SMiguel Ojeda -      -      -      -      -     1.00    -      -     jne	.LBB5_2
56*c3739801SMiguel Ojeda -      -      -      -      -      -      -     1.00   mov	eax, dword ptr [rdi]
57*c3739801SMiguel Ojeda -      -      -      -      -      -     1.00    -     movzx	ecx, word ptr [rdi + 4]
58*c3739801SMiguel Ojeda -      -     0.97    -      -     0.03    -      -     shl	rcx, 32
59*c3739801SMiguel Ojeda -      -     0.02   0.35    -     0.63    -      -     or	rcx, rax
60*c3739801SMiguel Ojeda -      -     0.98    -      -     0.02    -      -     shl	rcx, 16
61*c3739801SMiguel Ojeda -      -      -     0.98    -     0.02    -      -     inc	rcx
62*c3739801SMiguel Ojeda -      -      -      -      -      -      -      -     xor	eax, eax
63*c3739801SMiguel Ojeda -      -     0.03   0.93    -     0.04    -      -     cmp	rsi, 6
64*c3739801SMiguel Ojeda -      -     0.98   1.00    -     0.02    -      -     cmove	rax, rcx
65*c3739801SMiguel Ojeda -      -      -      -      -     1.00    -      -     ret
66