Compiler projects using llvm
# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=btver2               -resource-pressure=false < %s | FileCheck --check-prefixes=ALL,DEFAULT %s
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=btver2 -iterations=0 -resource-pressure=false < %s | FileCheck --check-prefixes=ALL,DEFAULT %s
# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=btver2 -iterations=1 -resource-pressure=false < %s | FileCheck --check-prefixes=ALL,CUSTOM %s

add %eax, %eax

# CUSTOM:       Iterations:        1
# CUSTOM-NEXT:  Instructions:      1
# CUSTOM-NEXT:  Total Cycles:      4
# CUSTOM-NEXT:  Total uOps:        1

# DEFAULT:      Iterations:        100
# DEFAULT-NEXT: Instructions:      100
# DEFAULT-NEXT: Total Cycles:      103
# DEFAULT-NEXT: Total uOps:        100

# ALL:          Dispatch Width:    2

# CUSTOM-NEXT:  uOps Per Cycle:    0.25
# CUSTOM-NEXT:  IPC:               0.25

# DEFAULT-NEXT: uOps Per Cycle:    0.97
# DEFAULT-NEXT: IPC:               0.97

# ALL-NEXT:     Block RThroughput: 0.5

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

# ALL:          [1]    [2]    [3]    [4]    [5]    [6]    Instructions:
# ALL-NEXT:      1      1     0.50                        addl	%eax, %eax