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