1# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py 2# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=haswell -iterations=100 -resource-pressure=false -instruction-info=false -timeline < %s | FileCheck %s -check-prefixes=ALL,HASWELL 3 4# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=broadwell -iterations=100 -resource-pressure=false -instruction-info=false -timeline < %s | FileCheck %s -check-prefixes=ALL,BDWELL 5 6# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=skylake -iterations=100 -resource-pressure=false -instruction-info=false -timeline < %s | FileCheck %s -check-prefixes=ALL,SKYLAKE 7 8# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=icelake-server -iterations=100 -resource-pressure=false -instruction-info=false -timeline < %s | FileCheck %s -check-prefixes=ALL,SKYLAKE 9 10# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=znver1 -iterations=100 -resource-pressure=false -instruction-info=false -timeline < %s | FileCheck %s -check-prefixes=ALL,ZNVER1 11 12# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=znver2 -iterations=100 -resource-pressure=false -instruction-info=false -timeline < %s | FileCheck %s -check-prefixes=ALL,ZNVER2 13 14# Code Snippet from "Ithemal: Accurate, Portable and Fast Basic Block Throughput Estimation using Deep Neural Networks" 15# Charith Mendis, Saman Amarasinghe, Michael Carbin 16add $1, %edx 17vpaddd (%r8), %ymm0, %ymm0 18add $32, %r8 19cmp %edi, %edx 20 21# ALL: Iterations: 100 22# ALL-NEXT: Instructions: 400 23 24# BDWELL-NEXT: Total Cycles: 142 25# BDWELL-NEXT: Total uOps: 500 26 27# HASWELL-NEXT: Total Cycles: 143 28# HASWELL-NEXT: Total uOps: 500 29 30# SKYLAKE-NEXT: Total Cycles: 110 31# SKYLAKE-NEXT: Total uOps: 500 32 33# ZNVER1-NEXT: Total Cycles: 143 34# ZNVER1-NEXT: Total uOps: 500 35 36# ZNVER2-NEXT: Total Cycles: 110 37# ZNVER2-NEXT: Total uOps: 400 38 39# BDWELL: Dispatch Width: 4 40# BDWELL-NEXT: uOps Per Cycle: 3.52 41# BDWELL-NEXT: IPC: 2.82 42# BDWELL-NEXT: Block RThroughput: 1.3 43 44# HASWELL: Dispatch Width: 4 45# HASWELL-NEXT: uOps Per Cycle: 3.50 46# HASWELL-NEXT: IPC: 2.80 47# HASWELL-NEXT: Block RThroughput: 1.3 48 49# SKYLAKE: Dispatch Width: 6 50# SKYLAKE-NEXT: uOps Per Cycle: 4.55 51# SKYLAKE-NEXT: IPC: 3.64 52# SKYLAKE-NEXT: Block RThroughput: 0.8 53 54# ZNVER1: Dispatch Width: 4 55# ZNVER1-NEXT: uOps Per Cycle: 3.50 56# ZNVER1-NEXT: IPC: 2.80 57# ZNVER1-NEXT: Block RThroughput: 1.3 58 59# ZNVER2: Dispatch Width: 4 60# ZNVER2-NEXT: uOps Per Cycle: 3.64 61# ZNVER2-NEXT: IPC: 3.64 62# ZNVER2-NEXT: Block RThroughput: 1.0 63 64# ALL: Timeline view: 65 66# BDWELL-NEXT: 0123456789 67# BDWELL-NEXT: Index 0123456789 01 68 69# HASWELL-NEXT: 0123456789 70# HASWELL-NEXT: Index 0123456789 012 71 72# SKYLAKE-NEXT: 0123456789 73# SKYLAKE-NEXT: Index 0123456789 74 75# ZNVER1-NEXT: 0123456789 76# ZNVER1-NEXT: Index 0123456789 012 77 78# ZNVER2-NEXT: 0123456789 79# ZNVER2-NEXT: Index 0123456789 80 81# BDWELL: [0,0] DeER . . . .. addl $1, %edx 82# BDWELL-NEXT: [0,1] DeeeeeeeER. . .. vpaddd (%r8), %ymm0, %ymm0 83# BDWELL-NEXT: [0,2] DeE------R. . .. addq $32, %r8 84# BDWELL-NEXT: [0,3] .DeE-----R. . .. cmpl %edi, %edx 85# BDWELL-NEXT: [1,0] .DeE-----R. . .. addl $1, %edx 86# BDWELL-NEXT: [1,1] .DeeeeeeeER . .. vpaddd (%r8), %ymm0, %ymm0 87# BDWELL-NEXT: [1,2] . DeE-----R . .. addq $32, %r8 88# BDWELL-NEXT: [1,3] . DeE-----R . .. cmpl %edi, %edx 89# BDWELL-NEXT: [2,0] . DeE-----R . .. addl $1, %edx 90# BDWELL-NEXT: [2,1] . DeeeeeeeER . .. vpaddd (%r8), %ymm0, %ymm0 91# BDWELL-NEXT: [2,2] . DeE------R . .. addq $32, %r8 92# BDWELL-NEXT: [2,3] . DeE------R . .. cmpl %edi, %edx 93# BDWELL-NEXT: [3,0] . DeE-----R . .. addl $1, %edx 94# BDWELL-NEXT: [3,1] . DeeeeeeeER . .. vpaddd (%r8), %ymm0, %ymm0 95# BDWELL-NEXT: [3,2] . DeE------R . .. addq $32, %r8 96# BDWELL-NEXT: [3,3] . DeE-----R . .. cmpl %edi, %edx 97# BDWELL-NEXT: [4,0] . DeE-----R . .. addl $1, %edx 98# BDWELL-NEXT: [4,1] . DeeeeeeeER. .. vpaddd (%r8), %ymm0, %ymm0 99# BDWELL-NEXT: [4,2] . .DeE-----R. .. addq $32, %r8 100# BDWELL-NEXT: [4,3] . .DeE-----R. .. cmpl %edi, %edx 101# BDWELL-NEXT: [5,0] . .DeE-----R. .. addl $1, %edx 102# BDWELL-NEXT: [5,1] . . DeeeeeeeER .. vpaddd (%r8), %ymm0, %ymm0 103# BDWELL-NEXT: [5,2] . . DeE------R .. addq $32, %r8 104# BDWELL-NEXT: [5,3] . . DeE------R .. cmpl %edi, %edx 105# BDWELL-NEXT: [6,0] . . DeE-----R .. addl $1, %edx 106# BDWELL-NEXT: [6,1] . . DeeeeeeeER .. vpaddd (%r8), %ymm0, %ymm0 107# BDWELL-NEXT: [6,2] . . DeE------R .. addq $32, %r8 108# BDWELL-NEXT: [6,3] . . DeE-----R .. cmpl %edi, %edx 109# BDWELL-NEXT: [7,0] . . DeE-----R .. addl $1, %edx 110# BDWELL-NEXT: [7,1] . . DeeeeeeeER .. vpaddd (%r8), %ymm0, %ymm0 111# BDWELL-NEXT: [7,2] . . DeE-----R .. addq $32, %r8 112# BDWELL-NEXT: [7,3] . . DeE-----R .. cmpl %edi, %edx 113# BDWELL-NEXT: [8,0] . . DeE-----R .. addl $1, %edx 114# BDWELL-NEXT: [8,1] . . .DeeeeeeeER. vpaddd (%r8), %ymm0, %ymm0 115# BDWELL-NEXT: [8,2] . . .DeE------R. addq $32, %r8 116# BDWELL-NEXT: [8,3] . . .DeE------R. cmpl %edi, %edx 117# BDWELL-NEXT: [9,0] . . . DeE-----R. addl $1, %edx 118# BDWELL-NEXT: [9,1] . . . DeeeeeeeER vpaddd (%r8), %ymm0, %ymm0 119# BDWELL-NEXT: [9,2] . . . DeE------R addq $32, %r8 120# BDWELL-NEXT: [9,3] . . . DeE-----R cmpl %edi, %edx 121 122# HASWELL: [0,0] DeER . . . . . addl $1, %edx 123# HASWELL-NEXT: [0,1] DeeeeeeeeER . . . vpaddd (%r8), %ymm0, %ymm0 124# HASWELL-NEXT: [0,2] DeE-------R . . . addq $32, %r8 125# HASWELL-NEXT: [0,3] .DeE------R . . . cmpl %edi, %edx 126# HASWELL-NEXT: [1,0] .DeE------R . . . addl $1, %edx 127# HASWELL-NEXT: [1,1] .DeeeeeeeeER . . . vpaddd (%r8), %ymm0, %ymm0 128# HASWELL-NEXT: [1,2] . DeE------R . . . addq $32, %r8 129# HASWELL-NEXT: [1,3] . DeE------R . . . cmpl %edi, %edx 130# HASWELL-NEXT: [2,0] . DeE------R . . . addl $1, %edx 131# HASWELL-NEXT: [2,1] . DeeeeeeeeER . . . vpaddd (%r8), %ymm0, %ymm0 132# HASWELL-NEXT: [2,2] . DeE-------R . . . addq $32, %r8 133# HASWELL-NEXT: [2,3] . DeE-------R . . . cmpl %edi, %edx 134# HASWELL-NEXT: [3,0] . DeE------R . . . addl $1, %edx 135# HASWELL-NEXT: [3,1] . DeeeeeeeeER. . . vpaddd (%r8), %ymm0, %ymm0 136# HASWELL-NEXT: [3,2] . DeE-------R. . . addq $32, %r8 137# HASWELL-NEXT: [3,3] . DeE------R. . . cmpl %edi, %edx 138# HASWELL-NEXT: [4,0] . DeE------R. . . addl $1, %edx 139# HASWELL-NEXT: [4,1] . DeeeeeeeeER . . vpaddd (%r8), %ymm0, %ymm0 140# HASWELL-NEXT: [4,2] . .DeE------R . . addq $32, %r8 141# HASWELL-NEXT: [4,3] . .DeE------R . . cmpl %edi, %edx 142# HASWELL-NEXT: [5,0] . .DeE------R . . addl $1, %edx 143# HASWELL-NEXT: [5,1] . . DeeeeeeeeER . . vpaddd (%r8), %ymm0, %ymm0 144# HASWELL-NEXT: [5,2] . . DeE-------R . . addq $32, %r8 145# HASWELL-NEXT: [5,3] . . DeE-------R . . cmpl %edi, %edx 146# HASWELL-NEXT: [6,0] . . DeE------R . . addl $1, %edx 147# HASWELL-NEXT: [6,1] . . DeeeeeeeeER . . vpaddd (%r8), %ymm0, %ymm0 148# HASWELL-NEXT: [6,2] . . DeE-------R . . addq $32, %r8 149# HASWELL-NEXT: [6,3] . . DeE------R . . cmpl %edi, %edx 150# HASWELL-NEXT: [7,0] . . DeE------R . . addl $1, %edx 151# HASWELL-NEXT: [7,1] . . DeeeeeeeeER. . vpaddd (%r8), %ymm0, %ymm0 152# HASWELL-NEXT: [7,2] . . DeE------R. . addq $32, %r8 153# HASWELL-NEXT: [7,3] . . DeE------R. . cmpl %edi, %edx 154# HASWELL-NEXT: [8,0] . . DeE------R. . addl $1, %edx 155# HASWELL-NEXT: [8,1] . . .DeeeeeeeeER. vpaddd (%r8), %ymm0, %ymm0 156# HASWELL-NEXT: [8,2] . . .DeE-------R. addq $32, %r8 157# HASWELL-NEXT: [8,3] . . .DeE-------R. cmpl %edi, %edx 158# HASWELL-NEXT: [9,0] . . . DeE------R. addl $1, %edx 159# HASWELL-NEXT: [9,1] . . . DeeeeeeeeER vpaddd (%r8), %ymm0, %ymm0 160# HASWELL-NEXT: [9,2] . . . DeE-------R addq $32, %r8 161# HASWELL-NEXT: [9,3] . . . DeE------R cmpl %edi, %edx 162 163# SKYLAKE: [0,0] DeER . . . . addl $1, %edx 164# SKYLAKE-NEXT: [0,1] DeeeeeeeeER . . vpaddd (%r8), %ymm0, %ymm0 165# SKYLAKE-NEXT: [0,2] DeE-------R . . addq $32, %r8 166# SKYLAKE-NEXT: [0,3] D=eE------R . . cmpl %edi, %edx 167# SKYLAKE-NEXT: [1,0] D=eE------R . . addl $1, %edx 168# SKYLAKE-NEXT: [1,1] .DeeeeeeeeER . . vpaddd (%r8), %ymm0, %ymm0 169# SKYLAKE-NEXT: [1,2] .DeE-------R . . addq $32, %r8 170# SKYLAKE-NEXT: [1,3] .D=eE------R . . cmpl %edi, %edx 171# SKYLAKE-NEXT: [2,0] .D=eE------R . . addl $1, %edx 172# SKYLAKE-NEXT: [2,1] . DeeeeeeeeER . . vpaddd (%r8), %ymm0, %ymm0 173# SKYLAKE-NEXT: [2,2] . DeE-------R . . addq $32, %r8 174# SKYLAKE-NEXT: [2,3] . D=eE------R . . cmpl %edi, %edx 175# SKYLAKE-NEXT: [3,0] . D=eE------R . . addl $1, %edx 176# SKYLAKE-NEXT: [3,1] . DeeeeeeeeER . . vpaddd (%r8), %ymm0, %ymm0 177# SKYLAKE-NEXT: [3,2] . DeE-------R . . addq $32, %r8 178# SKYLAKE-NEXT: [3,3] . D=eE------R . . cmpl %edi, %edx 179# SKYLAKE-NEXT: [4,0] . D=eE------R . . addl $1, %edx 180# SKYLAKE-NEXT: [4,1] . DeeeeeeeeER. . vpaddd (%r8), %ymm0, %ymm0 181# SKYLAKE-NEXT: [4,2] . DeE-------R. . addq $32, %r8 182# SKYLAKE-NEXT: [4,3] . D=eE------R. . cmpl %edi, %edx 183# SKYLAKE-NEXT: [5,0] . D=eE------R. . addl $1, %edx 184# SKYLAKE-NEXT: [5,1] . DeeeeeeeeER . vpaddd (%r8), %ymm0, %ymm0 185# SKYLAKE-NEXT: [5,2] . DeE-------R . addq $32, %r8 186# SKYLAKE-NEXT: [5,3] . D=eE------R . cmpl %edi, %edx 187# SKYLAKE-NEXT: [6,0] . D=eE------R . addl $1, %edx 188# SKYLAKE-NEXT: [6,1] . .DeeeeeeeeER . vpaddd (%r8), %ymm0, %ymm0 189# SKYLAKE-NEXT: [6,2] . .DeE-------R . addq $32, %r8 190# SKYLAKE-NEXT: [6,3] . .D=eE------R . cmpl %edi, %edx 191# SKYLAKE-NEXT: [7,0] . .D=eE------R . addl $1, %edx 192# SKYLAKE-NEXT: [7,1] . . DeeeeeeeeER . vpaddd (%r8), %ymm0, %ymm0 193# SKYLAKE-NEXT: [7,2] . . DeE-------R . addq $32, %r8 194# SKYLAKE-NEXT: [7,3] . . D=eE------R . cmpl %edi, %edx 195# SKYLAKE-NEXT: [8,0] . . D=eE------R . addl $1, %edx 196# SKYLAKE-NEXT: [8,1] . . DeeeeeeeeER. vpaddd (%r8), %ymm0, %ymm0 197# SKYLAKE-NEXT: [8,2] . . DeE-------R. addq $32, %r8 198# SKYLAKE-NEXT: [8,3] . . D=eE------R. cmpl %edi, %edx 199# SKYLAKE-NEXT: [9,0] . . D=eE------R. addl $1, %edx 200# SKYLAKE-NEXT: [9,1] . . DeeeeeeeeER vpaddd (%r8), %ymm0, %ymm0 201# SKYLAKE-NEXT: [9,2] . . DeE-------R addq $32, %r8 202# SKYLAKE-NEXT: [9,3] . . D=eE------R cmpl %edi, %edx 203 204# ZNVER1: [0,0] DeER . . . . . addl $1, %edx 205# ZNVER1-NEXT: [0,1] DeeeeeeeeER . . . vpaddd (%r8), %ymm0, %ymm0 206# ZNVER1-NEXT: [0,2] DeE-------R . . . addq $32, %r8 207# ZNVER1-NEXT: [0,3] .DeE------R . . . cmpl %edi, %edx 208# ZNVER1-NEXT: [1,0] .DeE------R . . . addl $1, %edx 209# ZNVER1-NEXT: [1,1] .DeeeeeeeeER . . . vpaddd (%r8), %ymm0, %ymm0 210# ZNVER1-NEXT: [1,2] . DeE------R . . . addq $32, %r8 211# ZNVER1-NEXT: [1,3] . DeE------R . . . cmpl %edi, %edx 212# ZNVER1-NEXT: [2,0] . DeE------R . . . addl $1, %edx 213# ZNVER1-NEXT: [2,1] . DeeeeeeeeER . . . vpaddd (%r8), %ymm0, %ymm0 214# ZNVER1-NEXT: [2,2] . DeE-------R . . . addq $32, %r8 215# ZNVER1-NEXT: [2,3] . DeE-------R . . . cmpl %edi, %edx 216# ZNVER1-NEXT: [3,0] . DeE------R . . . addl $1, %edx 217# ZNVER1-NEXT: [3,1] . DeeeeeeeeER. . . vpaddd (%r8), %ymm0, %ymm0 218# ZNVER1-NEXT: [3,2] . DeE-------R. . . addq $32, %r8 219# ZNVER1-NEXT: [3,3] . DeE------R. . . cmpl %edi, %edx 220# ZNVER1-NEXT: [4,0] . DeE------R. . . addl $1, %edx 221# ZNVER1-NEXT: [4,1] . DeeeeeeeeER . . vpaddd (%r8), %ymm0, %ymm0 222# ZNVER1-NEXT: [4,2] . .DeE------R . . addq $32, %r8 223# ZNVER1-NEXT: [4,3] . .DeE------R . . cmpl %edi, %edx 224# ZNVER1-NEXT: [5,0] . .DeE------R . . addl $1, %edx 225# ZNVER1-NEXT: [5,1] . . DeeeeeeeeER . . vpaddd (%r8), %ymm0, %ymm0 226# ZNVER1-NEXT: [5,2] . . DeE-------R . . addq $32, %r8 227# ZNVER1-NEXT: [5,3] . . DeE-------R . . cmpl %edi, %edx 228# ZNVER1-NEXT: [6,0] . . DeE------R . . addl $1, %edx 229# ZNVER1-NEXT: [6,1] . . DeeeeeeeeER . . vpaddd (%r8), %ymm0, %ymm0 230# ZNVER1-NEXT: [6,2] . . DeE-------R . . addq $32, %r8 231# ZNVER1-NEXT: [6,3] . . DeE------R . . cmpl %edi, %edx 232# ZNVER1-NEXT: [7,0] . . DeE------R . . addl $1, %edx 233# ZNVER1-NEXT: [7,1] . . DeeeeeeeeER. . vpaddd (%r8), %ymm0, %ymm0 234# ZNVER1-NEXT: [7,2] . . DeE------R. . addq $32, %r8 235# ZNVER1-NEXT: [7,3] . . DeE------R. . cmpl %edi, %edx 236# ZNVER1-NEXT: [8,0] . . DeE------R. . addl $1, %edx 237# ZNVER1-NEXT: [8,1] . . .DeeeeeeeeER. vpaddd (%r8), %ymm0, %ymm0 238# ZNVER1-NEXT: [8,2] . . .DeE-------R. addq $32, %r8 239# ZNVER1-NEXT: [8,3] . . .DeE-------R. cmpl %edi, %edx 240# ZNVER1-NEXT: [9,0] . . . DeE------R. addl $1, %edx 241# ZNVER1-NEXT: [9,1] . . . DeeeeeeeeER vpaddd (%r8), %ymm0, %ymm0 242# ZNVER1-NEXT: [9,2] . . . DeE-------R addq $32, %r8 243# ZNVER1-NEXT: [9,3] . . . DeE------R cmpl %edi, %edx 244 245# ZNVER2: [0,0] DeER . . . . addl $1, %edx 246# ZNVER2-NEXT: [0,1] DeeeeeeeeER . . vpaddd (%r8), %ymm0, %ymm0 247# ZNVER2-NEXT: [0,2] DeE-------R . . addq $32, %r8 248# ZNVER2-NEXT: [0,3] D=eE------R . . cmpl %edi, %edx 249# ZNVER2-NEXT: [1,0] .DeE------R . . addl $1, %edx 250# ZNVER2-NEXT: [1,1] .DeeeeeeeeER . . vpaddd (%r8), %ymm0, %ymm0 251# ZNVER2-NEXT: [1,2] .DeE-------R . . addq $32, %r8 252# ZNVER2-NEXT: [1,3] .D=eE------R . . cmpl %edi, %edx 253# ZNVER2-NEXT: [2,0] . DeE------R . . addl $1, %edx 254# ZNVER2-NEXT: [2,1] . DeeeeeeeeER . . vpaddd (%r8), %ymm0, %ymm0 255# ZNVER2-NEXT: [2,2] . DeE-------R . . addq $32, %r8 256# ZNVER2-NEXT: [2,3] . D=eE------R . . cmpl %edi, %edx 257# ZNVER2-NEXT: [3,0] . DeE------R . . addl $1, %edx 258# ZNVER2-NEXT: [3,1] . DeeeeeeeeER . . vpaddd (%r8), %ymm0, %ymm0 259# ZNVER2-NEXT: [3,2] . DeE-------R . . addq $32, %r8 260# ZNVER2-NEXT: [3,3] . D=eE------R . . cmpl %edi, %edx 261# ZNVER2-NEXT: [4,0] . DeE------R . . addl $1, %edx 262# ZNVER2-NEXT: [4,1] . DeeeeeeeeER. . vpaddd (%r8), %ymm0, %ymm0 263# ZNVER2-NEXT: [4,2] . DeE-------R. . addq $32, %r8 264# ZNVER2-NEXT: [4,3] . D=eE------R. . cmpl %edi, %edx 265# ZNVER2-NEXT: [5,0] . DeE------R. . addl $1, %edx 266# ZNVER2-NEXT: [5,1] . DeeeeeeeeER . vpaddd (%r8), %ymm0, %ymm0 267# ZNVER2-NEXT: [5,2] . DeE-------R . addq $32, %r8 268# ZNVER2-NEXT: [5,3] . D=eE------R . cmpl %edi, %edx 269# ZNVER2-NEXT: [6,0] . .DeE------R . addl $1, %edx 270# ZNVER2-NEXT: [6,1] . .DeeeeeeeeER . vpaddd (%r8), %ymm0, %ymm0 271# ZNVER2-NEXT: [6,2] . .DeE-------R . addq $32, %r8 272# ZNVER2-NEXT: [6,3] . .D=eE------R . cmpl %edi, %edx 273# ZNVER2-NEXT: [7,0] . . DeE------R . addl $1, %edx 274# ZNVER2-NEXT: [7,1] . . DeeeeeeeeER . vpaddd (%r8), %ymm0, %ymm0 275# ZNVER2-NEXT: [7,2] . . DeE-------R . addq $32, %r8 276# ZNVER2-NEXT: [7,3] . . D=eE------R . cmpl %edi, %edx 277# ZNVER2-NEXT: [8,0] . . DeE------R . addl $1, %edx 278# ZNVER2-NEXT: [8,1] . . DeeeeeeeeER. vpaddd (%r8), %ymm0, %ymm0 279# ZNVER2-NEXT: [8,2] . . DeE-------R. addq $32, %r8 280# ZNVER2-NEXT: [8,3] . . D=eE------R. cmpl %edi, %edx 281# ZNVER2-NEXT: [9,0] . . DeE------R. addl $1, %edx 282# ZNVER2-NEXT: [9,1] . . DeeeeeeeeER vpaddd (%r8), %ymm0, %ymm0 283# ZNVER2-NEXT: [9,2] . . DeE-------R addq $32, %r8 284# ZNVER2-NEXT: [9,3] . . D=eE------R cmpl %edi, %edx 285 286# ALL: Average Wait times (based on the timeline view): 287# ALL-NEXT: [0]: Executions 288# ALL-NEXT: [1]: Average time spent waiting in a scheduler's queue 289# ALL-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready 290# ALL-NEXT: [3]: Average time elapsed from WB until retire stage 291 292# ALL: [0] [1] [2] [3] 293 294# BDWELL-NEXT: 0. 10 1.0 0.4 4.5 addl $1, %edx 295# HASWELL-NEXT: 0. 10 1.0 0.4 5.4 addl $1, %edx 296# SKYLAKE-NEXT: 0. 10 1.9 0.1 5.4 addl $1, %edx 297# ZNVER1-NEXT: 0. 10 1.0 0.4 5.4 addl $1, %edx 298# ZNVER2-NEXT: 0. 10 1.0 0.1 5.4 addl $1, %edx 299 300# ALL-NEXT: 1. 10 1.0 0.1 0.0 vpaddd (%r8), %ymm0, %ymm0 301 302# BDWELL-NEXT: 2. 10 1.0 0.4 5.7 addq $32, %r8 303# BDWELL-NEXT: 3. 10 1.0 0.0 5.3 cmpl %edi, %edx 304# BDWELL-NEXT: 10 1.0 0.2 3.9 <total> 305 306# HASWELL-NEXT: 2. 10 1.0 0.4 6.7 addq $32, %r8 307# HASWELL-NEXT: 3. 10 1.0 0.0 6.3 cmpl %edi, %edx 308# HASWELL-NEXT: 10 1.0 0.2 4.6 <total> 309 310# SKYLAKE-NEXT: 2. 10 1.0 0.1 7.0 addq $32, %r8 311# SKYLAKE-NEXT: 3. 10 2.0 0.0 6.0 cmpl %edi, %edx 312# SKYLAKE-NEXT: 10 1.5 0.1 4.6 <total> 313 314# ZNVER1-NEXT: 2. 10 1.0 0.4 6.7 addq $32, %r8 315# ZNVER1-NEXT: 3. 10 1.0 0.0 6.3 cmpl %edi, %edx 316# ZNVER1-NEXT: 10 1.0 0.2 4.6 <total> 317 318# ZNVER2-NEXT: 2. 10 1.0 0.1 7.0 addq $32, %r8 319# ZNVER2-NEXT: 3. 10 2.0 0.0 6.0 cmpl %edi, %edx 320# ZNVER2-NEXT: 10 1.3 0.1 4.6 <total> 321