File: fx.s

package info (click to toggle)
llvm-toolchain-20 1%3A20.1.8-1~exp1
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 2,111,388 kB
  • sloc: cpp: 7,438,767; ansic: 1,393,871; asm: 1,012,926; python: 241,728; f90: 86,635; objc: 75,411; lisp: 42,144; pascal: 17,286; sh: 10,027; ml: 5,082; perl: 4,730; awk: 3,523; makefile: 3,349; javascript: 2,251; xml: 892; fortran: 672
file content (79 lines) | stat: -rw-r--r-- 3,834 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
# RUN: llvm-mca -mtriple=riscv64-unknown-unknown -mcpu=tt-ascalon-d8 --iterations=1 < %s | FileCheck %s

mul t0, a0, t0
sub s2, a2, a3
div t1, t2, t3
add t1, a4, x3
div a1, a2, a3
add t1, a0, t0
mul s0, a5, s0
add t2, t2, t2
sub s1, s0, s1
fcvt.s.w f1, t3
add s2, s2, s2
fcvt.w.s t5, f3

# CHECK:      Iterations:        1
# CHECK-NEXT: Instructions:      12
# CHECK-NEXT: Total Cycles:      22
# CHECK-NEXT: Total uOps:        12

# CHECK:      Dispatch Width:    8
# CHECK-NEXT: uOps Per Cycle:    0.55
# CHECK-NEXT: IPC:               0.55
# CHECK-NEXT: Block RThroughput: 17.0

# CHECK:      Instruction Info:
# CHECK-NEXT: [1]: #uOps
# CHECK-NEXT: [2]: Latency
# CHECK-NEXT: [3]: RThroughput
# CHECK-NEXT: [4]: MayLoad
# CHECK-NEXT: [5]: MayStore
# CHECK-NEXT: [6]: HasSideEffects (U)

# CHECK:      [1]    [2]    [3]    [4]    [5]    [6]    Instructions:
# CHECK-NEXT:  1      3     1.00                        mul	t0, a0, t0
# CHECK-NEXT:  1      1     0.17                        sub	s2, a2, a3
# CHECK-NEXT:  1      7     7.00                        div	t1, t2, t3
# CHECK-NEXT:  1      1     0.17                        add	t1, a4, gp
# CHECK-NEXT:  1      7     7.00                        div	a1, a2, a3
# CHECK-NEXT:  1      1     0.17                        add	t1, a0, t0
# CHECK-NEXT:  1      3     1.00                        mul	s0, s0, a5
# CHECK-NEXT:  1      1     0.17                        add	t2, t2, t2
# CHECK-NEXT:  1      1     0.17                        sub	s1, s0, s1
# CHECK-NEXT:  1      1     1.00                        fcvt.s.w	ft1, t3
# CHECK-NEXT:  1      1     0.17                        add	s2, s2, s2
# CHECK-NEXT:  1      1     1.00                        fcvt.w.s	t5, ft3

# CHECK:      Resources:
# CHECK-NEXT: [0.0] - AscalonFP
# CHECK-NEXT: [0.1] - AscalonFP
# CHECK-NEXT: [1]   - AscalonFXA
# CHECK-NEXT: [2]   - AscalonFXB
# CHECK-NEXT: [3.0] - AscalonFXC
# CHECK-NEXT: [3.1] - AscalonFXC
# CHECK-NEXT: [4.0] - AscalonFXD
# CHECK-NEXT: [4.1] - AscalonFXD
# CHECK-NEXT: [5.0] - AscalonLS
# CHECK-NEXT: [5.1] - AscalonLS
# CHECK-NEXT: [5.2] - AscalonLS

# CHECK:      Resource pressure per iteration:
# CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3.0]  [3.1]  [4.0]  [4.1]  [5.0]  [5.1]  [5.2]
# CHECK-NEXT:  -      -     17.00  1.00   2.00   2.00   1.00   1.00    -      -      -

# CHECK:      Resource pressure by instruction:
# CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3.0]  [3.1]  [4.0]  [4.1]  [5.0]  [5.1]  [5.2]  Instructions:
# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -      -     mul	t0, a0, t0
# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -      -     sub	s2, a2, a3
# CHECK-NEXT:  -      -     7.00    -      -      -      -      -      -      -      -     div	t1, t2, t3
# CHECK-NEXT:  -      -      -      -      -      -     1.00    -      -      -      -     add	t1, a4, gp
# CHECK-NEXT:  -      -     7.00    -      -      -      -      -      -      -      -     div	a1, a2, a3
# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -      -     add	t1, a0, t0
# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -      -     mul	s0, s0, a5
# CHECK-NEXT:  -      -      -      -      -     1.00    -      -      -      -      -     add	t2, t2, t2
# CHECK-NEXT:  -      -      -      -     1.00    -      -      -      -      -      -     sub	s1, s0, s1
# CHECK-NEXT:  -      -      -     1.00    -      -      -      -      -      -      -     fcvt.s.w	ft1, t3
# CHECK-NEXT:  -      -      -      -     1.00    -      -      -      -      -      -     add	s2, s2, s2
# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -      -     fcvt.w.s	t5, ft3