xref: /llvm-project/llvm/test/tools/llvm-mca/X86/cpus.s (revision ffdd5a330c05fa2b4339f64402f650df068c5767)
1# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
2# RUN: llvm-mca %s -mtriple=x86_64-unknown-unknown -mcpu=x86-64 -resource-pressure=false -instruction-info=false < %s | FileCheck --check-prefixes=ALL,BARCELONA %s
3# RUN: llvm-mca %s -mtriple=x86_64-unknown-unknown -mcpu=bdver2 -resource-pressure=false -instruction-info=false < %s | FileCheck --check-prefixes=ALL,BDVER2 %s
4# RUN: llvm-mca %s -mtriple=x86_64-unknown-unknown -mcpu=btver2 -resource-pressure=false -instruction-info=false < %s | FileCheck --check-prefixes=ALL,BTVER2 %s
5# RUN: llvm-mca %s -mtriple=x86_64-unknown-unknown -mcpu=znver1 -resource-pressure=false -instruction-info=false < %s | FileCheck --check-prefixes=ALL,ZNVER1 %s
6# RUN: llvm-mca %s -mtriple=x86_64-unknown-unknown -mcpu=znver2 -resource-pressure=false -instruction-info=false < %s | FileCheck --check-prefixes=ALL,ZNVER2 %s
7# RUN: llvm-mca %s -mtriple=x86_64-unknown-unknown -mcpu=znver3 -resource-pressure=false -instruction-info=false < %s | FileCheck --check-prefixes=ALL,ZNVER3 %s
8# RUN: llvm-mca %s -mtriple=x86_64-unknown-unknown -mcpu=znver4 -resource-pressure=false -instruction-info=false < %s | FileCheck --check-prefixes=ALL,ZNVER4 %s
9# RUN: llvm-mca %s -mtriple=x86_64-unknown-unknown -mcpu=sandybridge -resource-pressure=false -instruction-info=false < %s | FileCheck --check-prefixes=ALL,SANDYBRIDGE %s
10# RUN: llvm-mca %s -mtriple=x86_64-unknown-unknown -mcpu=ivybridge -resource-pressure=false -instruction-info=false < %s | FileCheck --check-prefixes=ALL,IVYBRIDGE %s
11# RUN: llvm-mca %s -mtriple=x86_64-unknown-unknown -mcpu=haswell -resource-pressure=false -instruction-info=false < %s | FileCheck --check-prefixes=ALL,HASWELL %s
12# RUN: llvm-mca %s -mtriple=x86_64-unknown-unknown -mcpu=broadwell -resource-pressure=false -instruction-info=false < %s | FileCheck --check-prefixes=ALL,BROADWELL %s
13# RUN: llvm-mca %s -mtriple=x86_64-unknown-unknown -mcpu=knl -resource-pressure=false -instruction-info=false < %s | FileCheck --check-prefixes=ALL,KNL %s
14# RUN: llvm-mca %s -mtriple=x86_64-unknown-unknown -mcpu=skylake -resource-pressure=false -instruction-info=false < %s | FileCheck --check-prefixes=ALL,SKX %s
15# RUN: llvm-mca %s -mtriple=x86_64-unknown-unknown -mcpu=skylake-avx512 -resource-pressure=false -instruction-info=false < %s | FileCheck --check-prefixes=ALL,SKX-AVX512 %s
16# RUN: llvm-mca %s -mtriple=x86_64-unknown-unknown -mcpu=icelake-client -resource-pressure=false -instruction-info=false < %s | FileCheck --check-prefixes=ALL,ICX %s
17# RUN: llvm-mca %s -mtriple=x86_64-unknown-unknown -mcpu=icelake-server -resource-pressure=false -instruction-info=false < %s | FileCheck --check-prefixes=ALL,ICX %s
18# RUN: llvm-mca %s -mtriple=x86_64-unknown-unknown -mcpu=rocketlake -resource-pressure=false -instruction-info=false < %s | FileCheck --check-prefixes=ALL,ICX %s
19# RUN: llvm-mca %s -mtriple=x86_64-unknown-unknown -mcpu=tigerlake -resource-pressure=false -instruction-info=false < %s | FileCheck --check-prefixes=ALL,ICX %s
20# RUN: llvm-mca %s -mtriple=x86_64-unknown-unknown -mcpu=slm -resource-pressure=false -instruction-info=false < %s | FileCheck --check-prefixes=ALL,SLM %s
21
22add %edi, %eax
23
24# ALL:              Iterations:        100
25# ALL-NEXT:         Instructions:      100
26# ALL-NEXT:         Total Cycles:      103
27# ALL-NEXT:         Total uOps:        100
28
29# BARCELONA:        Dispatch Width:    4
30# BARCELONA-NEXT:   uOps Per Cycle:    0.97
31# BARCELONA-NEXT:   IPC:               0.97
32# BARCELONA-NEXT:   Block RThroughput: 0.3
33
34# BDVER2:           Dispatch Width:    4
35# BDVER2-NEXT:      uOps Per Cycle:    0.97
36# BDVER2-NEXT:      IPC:               0.97
37# BDVER2-NEXT:      Block RThroughput: 1.0
38
39# BROADWELL:        Dispatch Width:    4
40# BROADWELL-NEXT:   uOps Per Cycle:    0.97
41# BROADWELL-NEXT:   IPC:               0.97
42# BROADWELL-NEXT:   Block RThroughput: 0.3
43
44# BTVER2:           Dispatch Width:    2
45# BTVER2-NEXT:      uOps Per Cycle:    0.97
46# BTVER2-NEXT:      IPC:               0.97
47# BTVER2-NEXT:      Block RThroughput: 0.5
48
49# HASWELL:          Dispatch Width:    4
50# HASWELL-NEXT:     uOps Per Cycle:    0.97
51# HASWELL-NEXT:     IPC:               0.97
52# HASWELL-NEXT:     Block RThroughput: 0.3
53
54# ICX:              Dispatch Width:    6
55# ICX-NEXT:         uOps Per Cycle:    0.97
56# ICX-NEXT:         IPC:               0.97
57# ICX-NEXT:         Block RThroughput: 0.3
58
59# IVYBRIDGE:        Dispatch Width:    4
60# IVYBRIDGE-NEXT:   uOps Per Cycle:    0.97
61# IVYBRIDGE-NEXT:   IPC:               0.97
62# IVYBRIDGE-NEXT:   Block RThroughput: 0.3
63
64# KNL:              Dispatch Width:    4
65# KNL-NEXT:         uOps Per Cycle:    0.97
66# KNL-NEXT:         IPC:               0.97
67# KNL-NEXT:         Block RThroughput: 0.3
68
69# SANDYBRIDGE:      Dispatch Width:    4
70# SANDYBRIDGE-NEXT: uOps Per Cycle:    0.97
71# SANDYBRIDGE-NEXT: IPC:               0.97
72# SANDYBRIDGE-NEXT: Block RThroughput: 0.3
73
74# SKX:              Dispatch Width:    6
75# SKX-NEXT:         uOps Per Cycle:    0.97
76# SKX-NEXT:         IPC:               0.97
77# SKX-NEXT:         Block RThroughput: 0.3
78
79# SKX-AVX512:       Dispatch Width:    6
80# SKX-AVX512-NEXT:  uOps Per Cycle:    0.97
81# SKX-AVX512-NEXT:  IPC:               0.97
82# SKX-AVX512-NEXT:  Block RThroughput: 0.3
83
84# SLM:              Dispatch Width:    2
85# SLM-NEXT:         uOps Per Cycle:    0.97
86# SLM-NEXT:         IPC:               0.97
87# SLM-NEXT:         Block RThroughput: 0.5
88
89# ZNVER1:           Dispatch Width:    4
90# ZNVER1-NEXT:      uOps Per Cycle:    0.97
91# ZNVER1-NEXT:      IPC:               0.97
92# ZNVER1-NEXT:      Block RThroughput: 0.3
93
94# ZNVER2:           Dispatch Width:    4
95# ZNVER2-NEXT:      uOps Per Cycle:    0.97
96# ZNVER2-NEXT:      IPC:               0.97
97# ZNVER2-NEXT:      Block RThroughput: 0.3
98
99# ZNVER3:           Dispatch Width:    6
100# ZNVER3-NEXT:      uOps Per Cycle:    0.97
101# ZNVER3-NEXT:      IPC:               0.97
102# ZNVER3-NEXT:      Block RThroughput: 0.3
103
104# ZNVER4:           Dispatch Width:    6
105# ZNVER4-NEXT:      uOps Per Cycle:    0.97
106# ZNVER4-NEXT:      IPC:               0.97
107# ZNVER4-NEXT:      Block RThroughput: 0.3
108