[X86][BdVer2] Polish LEA instruction scheduling info

Based on exhaustive llvm-exegesis measurements.
There may still be some imperfections for LEA16r/LEA32r.

Much like was observed in D68646, i'm also measuring some outliers
with some specific registers.
This commit is contained in:
Roman Lebedev 2020-01-26 20:33:29 +03:00
parent 31019dfdf5
commit 76fcf900d5
No known key found for this signature in database
GPG Key ID: 083C3EBB4A1689E0
4 changed files with 336 additions and 304 deletions

View File

@ -545,8 +545,40 @@ def PdWriteBTSRm : SchedWriteRes<[PdEX01, PdLoad]> {
def : SchedAlias<WriteBitTestSetRegRMW, PdWriteBTSRm>;
// This is for simple LEAs with one or two input operands.
// FIXME: SAGU 3-operand LEA
def : WriteRes<WriteLEA, [PdEX01]> { let NumMicroOps = 2; }
def : WriteRes<WriteLEA, [PdEX01]> { let ResourceCycles = [2]; }
// This write is used for slow LEA instructions.
def PdWrite3OpsLEA : SchedWriteRes<[PdEX01]> {
let Latency = 2;
let ResourceCycles = [2];
}
// On Piledriver, a slow LEA is either a 3Ops LEA (base, index, offset),
// or an LEA with a `Scale` value different than 1.
def PdSlowLEAPredicate : MCSchedPredicate<
CheckAny<[
// A 3-operand LEA (base, index, offset).
IsThreeOperandsLEAFn,
// An LEA with a "Scale" different than 1.
CheckAll<[
CheckIsImmOperand<2>,
CheckNot<CheckImmOperand<2, 1>>
]>
]>
>;
def PdWriteLEA : SchedWriteVariant<[
SchedVar<PdSlowLEAPredicate, [PdWrite3OpsLEA]>,
SchedVar<NoSchedPred, [WriteLEA]>
]>;
def : InstRW<[PdWriteLEA], (instrs LEA32r, LEA64r, LEA64_32r)>;
def PdWriteLEA16r : SchedWriteRes<[PdEX01]> {
let ResourceCycles = [3];
let NumMicroOps = 2;
}
def : InstRW<[PdWriteLEA16r], (instrs LEA16r)>;
// Bit counts.
defm : PdWriteResExPair<WriteBSF, [PdEX01], 3, [6], 6, 2>;

View File

@ -148,141 +148,141 @@ lea 1024(%rax, %rbx, 2), %rcx
# CHECK-NEXT: [6]: HasSideEffects (U)
# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
# CHECK-NEXT: 2 1 0.50 leaw 0, %cx
# CHECK-NEXT: 2 1 0.50 leal 0, %ecx
# CHECK-NEXT: 2 1 0.50 leaq 0, %rcx
# CHECK-NEXT: 2 1 0.50 leaw (%eax), %cx
# CHECK-NEXT: 2 1 0.50 leal (%eax), %ecx
# CHECK-NEXT: 2 1 0.50 leaq (%eax), %rcx
# CHECK-NEXT: 2 1 0.50 leaw (%rax), %cx
# CHECK-NEXT: 2 1 0.50 leal (%rax), %ecx
# CHECK-NEXT: 2 1 0.50 leaq (%rax), %rcx
# CHECK-NEXT: 2 1 0.50 leaw (,%ebx), %cx
# CHECK-NEXT: 2 1 0.50 leal (,%ebx), %ecx
# CHECK-NEXT: 2 1 0.50 leaq (,%ebx), %rcx
# CHECK-NEXT: 2 1 0.50 leaw (,%rbx), %cx
# CHECK-NEXT: 2 1 0.50 leal (,%rbx), %ecx
# CHECK-NEXT: 2 1 0.50 leaq (,%rbx), %rcx
# CHECK-NEXT: 2 1 0.50 leaw (,%ebx), %cx
# CHECK-NEXT: 2 1 0.50 leal (,%ebx), %ecx
# CHECK-NEXT: 2 1 0.50 leaq (,%ebx), %rcx
# CHECK-NEXT: 2 1 0.50 leaw (,%rbx), %cx
# CHECK-NEXT: 2 1 0.50 leal (,%rbx), %ecx
# CHECK-NEXT: 2 1 0.50 leaq (,%rbx), %rcx
# CHECK-NEXT: 2 1 0.50 leaw (,%ebx,2), %cx
# CHECK-NEXT: 2 1 0.50 leal (,%ebx,2), %ecx
# CHECK-NEXT: 2 1 0.50 leaq (,%ebx,2), %rcx
# CHECK-NEXT: 2 1 0.50 leaw (,%rbx,2), %cx
# CHECK-NEXT: 2 1 0.50 leal (,%rbx,2), %ecx
# CHECK-NEXT: 2 1 0.50 leaq (,%rbx,2), %rcx
# CHECK-NEXT: 2 1 0.50 leaw (%eax,%ebx), %cx
# CHECK-NEXT: 2 1 0.50 leal (%eax,%ebx), %ecx
# CHECK-NEXT: 2 1 0.50 leaq (%eax,%ebx), %rcx
# CHECK-NEXT: 2 1 0.50 leaw (%rax,%rbx), %cx
# CHECK-NEXT: 2 1 0.50 leal (%rax,%rbx), %ecx
# CHECK-NEXT: 2 1 0.50 leaq (%rax,%rbx), %rcx
# CHECK-NEXT: 2 1 0.50 leaw (%eax,%ebx), %cx
# CHECK-NEXT: 2 1 0.50 leal (%eax,%ebx), %ecx
# CHECK-NEXT: 2 1 0.50 leaq (%eax,%ebx), %rcx
# CHECK-NEXT: 2 1 0.50 leaw (%rax,%rbx), %cx
# CHECK-NEXT: 2 1 0.50 leal (%rax,%rbx), %ecx
# CHECK-NEXT: 2 1 0.50 leaq (%rax,%rbx), %rcx
# CHECK-NEXT: 2 1 0.50 leaw (%eax,%ebx,2), %cx
# CHECK-NEXT: 2 1 0.50 leal (%eax,%ebx,2), %ecx
# CHECK-NEXT: 2 1 0.50 leaq (%eax,%ebx,2), %rcx
# CHECK-NEXT: 2 1 0.50 leaw (%rax,%rbx,2), %cx
# CHECK-NEXT: 2 1 0.50 leal (%rax,%rbx,2), %ecx
# CHECK-NEXT: 2 1 0.50 leaq (%rax,%rbx,2), %rcx
# CHECK-NEXT: 2 1 0.50 leaw -16, %cx
# CHECK-NEXT: 2 1 0.50 leal -16, %ecx
# CHECK-NEXT: 2 1 0.50 leaq -16, %rcx
# CHECK-NEXT: 2 1 0.50 leaw -16(%eax), %cx
# CHECK-NEXT: 2 1 0.50 leal -16(%eax), %ecx
# CHECK-NEXT: 2 1 0.50 leaq -16(%eax), %rcx
# CHECK-NEXT: 2 1 0.50 leaw -16(%rax), %cx
# CHECK-NEXT: 2 1 0.50 leal -16(%rax), %ecx
# CHECK-NEXT: 2 1 0.50 leaq -16(%rax), %rcx
# CHECK-NEXT: 2 1 0.50 leaw -16(,%ebx), %cx
# CHECK-NEXT: 2 1 0.50 leal -16(,%ebx), %ecx
# CHECK-NEXT: 2 1 0.50 leaq -16(,%ebx), %rcx
# CHECK-NEXT: 2 1 0.50 leaw -16(,%rbx), %cx
# CHECK-NEXT: 2 1 0.50 leal -16(,%rbx), %ecx
# CHECK-NEXT: 2 1 0.50 leaq -16(,%rbx), %rcx
# CHECK-NEXT: 2 1 0.50 leaw -16(,%ebx), %cx
# CHECK-NEXT: 2 1 0.50 leal -16(,%ebx), %ecx
# CHECK-NEXT: 2 1 0.50 leaq -16(,%ebx), %rcx
# CHECK-NEXT: 2 1 0.50 leaw -16(,%rbx), %cx
# CHECK-NEXT: 2 1 0.50 leal -16(,%rbx), %ecx
# CHECK-NEXT: 2 1 0.50 leaq -16(,%rbx), %rcx
# CHECK-NEXT: 2 1 0.50 leaw -16(,%ebx,2), %cx
# CHECK-NEXT: 2 1 0.50 leal -16(,%ebx,2), %ecx
# CHECK-NEXT: 2 1 0.50 leaq -16(,%ebx,2), %rcx
# CHECK-NEXT: 2 1 0.50 leaw -16(,%rbx,2), %cx
# CHECK-NEXT: 2 1 0.50 leal -16(,%rbx,2), %ecx
# CHECK-NEXT: 2 1 0.50 leaq -16(,%rbx,2), %rcx
# CHECK-NEXT: 2 1 0.50 leaw -16(%eax,%ebx), %cx
# CHECK-NEXT: 2 1 0.50 leal -16(%eax,%ebx), %ecx
# CHECK-NEXT: 2 1 0.50 leaq -16(%eax,%ebx), %rcx
# CHECK-NEXT: 2 1 0.50 leaw -16(%rax,%rbx), %cx
# CHECK-NEXT: 2 1 0.50 leal -16(%rax,%rbx), %ecx
# CHECK-NEXT: 2 1 0.50 leaq -16(%rax,%rbx), %rcx
# CHECK-NEXT: 2 1 0.50 leaw -16(%eax,%ebx), %cx
# CHECK-NEXT: 2 1 0.50 leal -16(%eax,%ebx), %ecx
# CHECK-NEXT: 2 1 0.50 leaq -16(%eax,%ebx), %rcx
# CHECK-NEXT: 2 1 0.50 leaw -16(%rax,%rbx), %cx
# CHECK-NEXT: 2 1 0.50 leal -16(%rax,%rbx), %ecx
# CHECK-NEXT: 2 1 0.50 leaq -16(%rax,%rbx), %rcx
# CHECK-NEXT: 2 1 0.50 leaw -16(%eax,%ebx,2), %cx
# CHECK-NEXT: 2 1 0.50 leal -16(%eax,%ebx,2), %ecx
# CHECK-NEXT: 2 1 0.50 leaq -16(%eax,%ebx,2), %rcx
# CHECK-NEXT: 2 1 0.50 leaw -16(%rax,%rbx,2), %cx
# CHECK-NEXT: 2 1 0.50 leal -16(%rax,%rbx,2), %ecx
# CHECK-NEXT: 2 1 0.50 leaq -16(%rax,%rbx,2), %rcx
# CHECK-NEXT: 2 1 0.50 leaw 1024, %cx
# CHECK-NEXT: 2 1 0.50 leal 1024, %ecx
# CHECK-NEXT: 2 1 0.50 leaq 1024, %rcx
# CHECK-NEXT: 2 1 0.50 leaw 1024(%eax), %cx
# CHECK-NEXT: 2 1 0.50 leal 1024(%eax), %ecx
# CHECK-NEXT: 2 1 0.50 leaq 1024(%eax), %rcx
# CHECK-NEXT: 2 1 0.50 leaw 1024(%rax), %cx
# CHECK-NEXT: 2 1 0.50 leal 1024(%rax), %ecx
# CHECK-NEXT: 2 1 0.50 leaq 1024(%rax), %rcx
# CHECK-NEXT: 2 1 0.50 leaw 1024(,%ebx), %cx
# CHECK-NEXT: 2 1 0.50 leal 1024(,%ebx), %ecx
# CHECK-NEXT: 2 1 0.50 leaq 1024(,%ebx), %rcx
# CHECK-NEXT: 2 1 0.50 leaw 1024(,%rbx), %cx
# CHECK-NEXT: 2 1 0.50 leal 1024(,%rbx), %ecx
# CHECK-NEXT: 2 1 0.50 leaq 1024(,%rbx), %rcx
# CHECK-NEXT: 2 1 0.50 leaw 1024(,%ebx), %cx
# CHECK-NEXT: 2 1 0.50 leal 1024(,%ebx), %ecx
# CHECK-NEXT: 2 1 0.50 leaq 1024(,%ebx), %rcx
# CHECK-NEXT: 2 1 0.50 leaw 1024(,%rbx), %cx
# CHECK-NEXT: 2 1 0.50 leal 1024(,%rbx), %ecx
# CHECK-NEXT: 2 1 0.50 leaq 1024(,%rbx), %rcx
# CHECK-NEXT: 2 1 0.50 leaw 1024(,%ebx,2), %cx
# CHECK-NEXT: 2 1 0.50 leal 1024(,%ebx,2), %ecx
# CHECK-NEXT: 2 1 0.50 leaq 1024(,%ebx,2), %rcx
# CHECK-NEXT: 2 1 0.50 leaw 1024(,%rbx,2), %cx
# CHECK-NEXT: 2 1 0.50 leal 1024(,%rbx,2), %ecx
# CHECK-NEXT: 2 1 0.50 leaq 1024(,%rbx,2), %rcx
# CHECK-NEXT: 2 1 0.50 leaw 1024(%eax,%ebx), %cx
# CHECK-NEXT: 2 1 0.50 leal 1024(%eax,%ebx), %ecx
# CHECK-NEXT: 2 1 0.50 leaq 1024(%eax,%ebx), %rcx
# CHECK-NEXT: 2 1 0.50 leaw 1024(%rax,%rbx), %cx
# CHECK-NEXT: 2 1 0.50 leal 1024(%rax,%rbx), %ecx
# CHECK-NEXT: 2 1 0.50 leaq 1024(%rax,%rbx), %rcx
# CHECK-NEXT: 2 1 0.50 leaw 1024(%eax,%ebx), %cx
# CHECK-NEXT: 2 1 0.50 leal 1024(%eax,%ebx), %ecx
# CHECK-NEXT: 2 1 0.50 leaq 1024(%eax,%ebx), %rcx
# CHECK-NEXT: 2 1 0.50 leaw 1024(%rax,%rbx), %cx
# CHECK-NEXT: 2 1 0.50 leal 1024(%rax,%rbx), %ecx
# CHECK-NEXT: 2 1 0.50 leaq 1024(%rax,%rbx), %rcx
# CHECK-NEXT: 2 1 0.50 leaw 1024(%eax,%ebx,2), %cx
# CHECK-NEXT: 2 1 0.50 leal 1024(%eax,%ebx,2), %ecx
# CHECK-NEXT: 2 1 0.50 leaq 1024(%eax,%ebx,2), %rcx
# CHECK-NEXT: 2 1 0.50 leaw 1024(%rax,%rbx,2), %cx
# CHECK-NEXT: 2 1 0.50 leal 1024(%rax,%rbx,2), %ecx
# CHECK-NEXT: 2 1 0.50 leaq 1024(%rax,%rbx,2), %rcx
# CHECK-NEXT: 2 1 1.50 leaw 0, %cx
# CHECK-NEXT: 1 1 1.00 leal 0, %ecx
# CHECK-NEXT: 1 1 1.00 leaq 0, %rcx
# CHECK-NEXT: 2 1 1.50 leaw (%eax), %cx
# CHECK-NEXT: 1 1 1.00 leal (%eax), %ecx
# CHECK-NEXT: 1 1 1.00 leaq (%eax), %rcx
# CHECK-NEXT: 2 1 1.50 leaw (%rax), %cx
# CHECK-NEXT: 1 1 1.00 leal (%rax), %ecx
# CHECK-NEXT: 1 1 1.00 leaq (%rax), %rcx
# CHECK-NEXT: 2 1 1.50 leaw (,%ebx), %cx
# CHECK-NEXT: 1 1 1.00 leal (,%ebx), %ecx
# CHECK-NEXT: 1 1 1.00 leaq (,%ebx), %rcx
# CHECK-NEXT: 2 1 1.50 leaw (,%rbx), %cx
# CHECK-NEXT: 1 1 1.00 leal (,%rbx), %ecx
# CHECK-NEXT: 1 1 1.00 leaq (,%rbx), %rcx
# CHECK-NEXT: 2 1 1.50 leaw (,%ebx), %cx
# CHECK-NEXT: 1 1 1.00 leal (,%ebx), %ecx
# CHECK-NEXT: 1 1 1.00 leaq (,%ebx), %rcx
# CHECK-NEXT: 2 1 1.50 leaw (,%rbx), %cx
# CHECK-NEXT: 1 1 1.00 leal (,%rbx), %ecx
# CHECK-NEXT: 1 1 1.00 leaq (,%rbx), %rcx
# CHECK-NEXT: 2 1 1.50 leaw (,%ebx,2), %cx
# CHECK-NEXT: 1 2 1.00 leal (,%ebx,2), %ecx
# CHECK-NEXT: 1 2 1.00 leaq (,%ebx,2), %rcx
# CHECK-NEXT: 2 1 1.50 leaw (,%rbx,2), %cx
# CHECK-NEXT: 1 2 1.00 leal (,%rbx,2), %ecx
# CHECK-NEXT: 1 2 1.00 leaq (,%rbx,2), %rcx
# CHECK-NEXT: 2 1 1.50 leaw (%eax,%ebx), %cx
# CHECK-NEXT: 1 1 1.00 leal (%eax,%ebx), %ecx
# CHECK-NEXT: 1 1 1.00 leaq (%eax,%ebx), %rcx
# CHECK-NEXT: 2 1 1.50 leaw (%rax,%rbx), %cx
# CHECK-NEXT: 1 1 1.00 leal (%rax,%rbx), %ecx
# CHECK-NEXT: 1 1 1.00 leaq (%rax,%rbx), %rcx
# CHECK-NEXT: 2 1 1.50 leaw (%eax,%ebx), %cx
# CHECK-NEXT: 1 1 1.00 leal (%eax,%ebx), %ecx
# CHECK-NEXT: 1 1 1.00 leaq (%eax,%ebx), %rcx
# CHECK-NEXT: 2 1 1.50 leaw (%rax,%rbx), %cx
# CHECK-NEXT: 1 1 1.00 leal (%rax,%rbx), %ecx
# CHECK-NEXT: 1 1 1.00 leaq (%rax,%rbx), %rcx
# CHECK-NEXT: 2 1 1.50 leaw (%eax,%ebx,2), %cx
# CHECK-NEXT: 1 2 1.00 leal (%eax,%ebx,2), %ecx
# CHECK-NEXT: 1 2 1.00 leaq (%eax,%ebx,2), %rcx
# CHECK-NEXT: 2 1 1.50 leaw (%rax,%rbx,2), %cx
# CHECK-NEXT: 1 2 1.00 leal (%rax,%rbx,2), %ecx
# CHECK-NEXT: 1 2 1.00 leaq (%rax,%rbx,2), %rcx
# CHECK-NEXT: 2 1 1.50 leaw -16, %cx
# CHECK-NEXT: 1 1 1.00 leal -16, %ecx
# CHECK-NEXT: 1 1 1.00 leaq -16, %rcx
# CHECK-NEXT: 2 1 1.50 leaw -16(%eax), %cx
# CHECK-NEXT: 1 1 1.00 leal -16(%eax), %ecx
# CHECK-NEXT: 1 1 1.00 leaq -16(%eax), %rcx
# CHECK-NEXT: 2 1 1.50 leaw -16(%rax), %cx
# CHECK-NEXT: 1 1 1.00 leal -16(%rax), %ecx
# CHECK-NEXT: 1 1 1.00 leaq -16(%rax), %rcx
# CHECK-NEXT: 2 1 1.50 leaw -16(,%ebx), %cx
# CHECK-NEXT: 1 1 1.00 leal -16(,%ebx), %ecx
# CHECK-NEXT: 1 1 1.00 leaq -16(,%ebx), %rcx
# CHECK-NEXT: 2 1 1.50 leaw -16(,%rbx), %cx
# CHECK-NEXT: 1 1 1.00 leal -16(,%rbx), %ecx
# CHECK-NEXT: 1 1 1.00 leaq -16(,%rbx), %rcx
# CHECK-NEXT: 2 1 1.50 leaw -16(,%ebx), %cx
# CHECK-NEXT: 1 1 1.00 leal -16(,%ebx), %ecx
# CHECK-NEXT: 1 1 1.00 leaq -16(,%ebx), %rcx
# CHECK-NEXT: 2 1 1.50 leaw -16(,%rbx), %cx
# CHECK-NEXT: 1 1 1.00 leal -16(,%rbx), %ecx
# CHECK-NEXT: 1 1 1.00 leaq -16(,%rbx), %rcx
# CHECK-NEXT: 2 1 1.50 leaw -16(,%ebx,2), %cx
# CHECK-NEXT: 1 2 1.00 leal -16(,%ebx,2), %ecx
# CHECK-NEXT: 1 2 1.00 leaq -16(,%ebx,2), %rcx
# CHECK-NEXT: 2 1 1.50 leaw -16(,%rbx,2), %cx
# CHECK-NEXT: 1 2 1.00 leal -16(,%rbx,2), %ecx
# CHECK-NEXT: 1 2 1.00 leaq -16(,%rbx,2), %rcx
# CHECK-NEXT: 2 1 1.50 leaw -16(%eax,%ebx), %cx
# CHECK-NEXT: 1 2 1.00 leal -16(%eax,%ebx), %ecx
# CHECK-NEXT: 1 2 1.00 leaq -16(%eax,%ebx), %rcx
# CHECK-NEXT: 2 1 1.50 leaw -16(%rax,%rbx), %cx
# CHECK-NEXT: 1 2 1.00 leal -16(%rax,%rbx), %ecx
# CHECK-NEXT: 1 2 1.00 leaq -16(%rax,%rbx), %rcx
# CHECK-NEXT: 2 1 1.50 leaw -16(%eax,%ebx), %cx
# CHECK-NEXT: 1 2 1.00 leal -16(%eax,%ebx), %ecx
# CHECK-NEXT: 1 2 1.00 leaq -16(%eax,%ebx), %rcx
# CHECK-NEXT: 2 1 1.50 leaw -16(%rax,%rbx), %cx
# CHECK-NEXT: 1 2 1.00 leal -16(%rax,%rbx), %ecx
# CHECK-NEXT: 1 2 1.00 leaq -16(%rax,%rbx), %rcx
# CHECK-NEXT: 2 1 1.50 leaw -16(%eax,%ebx,2), %cx
# CHECK-NEXT: 1 2 1.00 leal -16(%eax,%ebx,2), %ecx
# CHECK-NEXT: 1 2 1.00 leaq -16(%eax,%ebx,2), %rcx
# CHECK-NEXT: 2 1 1.50 leaw -16(%rax,%rbx,2), %cx
# CHECK-NEXT: 1 2 1.00 leal -16(%rax,%rbx,2), %ecx
# CHECK-NEXT: 1 2 1.00 leaq -16(%rax,%rbx,2), %rcx
# CHECK-NEXT: 2 1 1.50 leaw 1024, %cx
# CHECK-NEXT: 1 1 1.00 leal 1024, %ecx
# CHECK-NEXT: 1 1 1.00 leaq 1024, %rcx
# CHECK-NEXT: 2 1 1.50 leaw 1024(%eax), %cx
# CHECK-NEXT: 1 1 1.00 leal 1024(%eax), %ecx
# CHECK-NEXT: 1 1 1.00 leaq 1024(%eax), %rcx
# CHECK-NEXT: 2 1 1.50 leaw 1024(%rax), %cx
# CHECK-NEXT: 1 1 1.00 leal 1024(%rax), %ecx
# CHECK-NEXT: 1 1 1.00 leaq 1024(%rax), %rcx
# CHECK-NEXT: 2 1 1.50 leaw 1024(,%ebx), %cx
# CHECK-NEXT: 1 1 1.00 leal 1024(,%ebx), %ecx
# CHECK-NEXT: 1 1 1.00 leaq 1024(,%ebx), %rcx
# CHECK-NEXT: 2 1 1.50 leaw 1024(,%rbx), %cx
# CHECK-NEXT: 1 1 1.00 leal 1024(,%rbx), %ecx
# CHECK-NEXT: 1 1 1.00 leaq 1024(,%rbx), %rcx
# CHECK-NEXT: 2 1 1.50 leaw 1024(,%ebx), %cx
# CHECK-NEXT: 1 1 1.00 leal 1024(,%ebx), %ecx
# CHECK-NEXT: 1 1 1.00 leaq 1024(,%ebx), %rcx
# CHECK-NEXT: 2 1 1.50 leaw 1024(,%rbx), %cx
# CHECK-NEXT: 1 1 1.00 leal 1024(,%rbx), %ecx
# CHECK-NEXT: 1 1 1.00 leaq 1024(,%rbx), %rcx
# CHECK-NEXT: 2 1 1.50 leaw 1024(,%ebx,2), %cx
# CHECK-NEXT: 1 2 1.00 leal 1024(,%ebx,2), %ecx
# CHECK-NEXT: 1 2 1.00 leaq 1024(,%ebx,2), %rcx
# CHECK-NEXT: 2 1 1.50 leaw 1024(,%rbx,2), %cx
# CHECK-NEXT: 1 2 1.00 leal 1024(,%rbx,2), %ecx
# CHECK-NEXT: 1 2 1.00 leaq 1024(,%rbx,2), %rcx
# CHECK-NEXT: 2 1 1.50 leaw 1024(%eax,%ebx), %cx
# CHECK-NEXT: 1 2 1.00 leal 1024(%eax,%ebx), %ecx
# CHECK-NEXT: 1 2 1.00 leaq 1024(%eax,%ebx), %rcx
# CHECK-NEXT: 2 1 1.50 leaw 1024(%rax,%rbx), %cx
# CHECK-NEXT: 1 2 1.00 leal 1024(%rax,%rbx), %ecx
# CHECK-NEXT: 1 2 1.00 leaq 1024(%rax,%rbx), %rcx
# CHECK-NEXT: 2 1 1.50 leaw 1024(%eax,%ebx), %cx
# CHECK-NEXT: 1 2 1.00 leal 1024(%eax,%ebx), %ecx
# CHECK-NEXT: 1 2 1.00 leaq 1024(%eax,%ebx), %rcx
# CHECK-NEXT: 2 1 1.50 leaw 1024(%rax,%rbx), %cx
# CHECK-NEXT: 1 2 1.00 leal 1024(%rax,%rbx), %ecx
# CHECK-NEXT: 1 2 1.00 leaq 1024(%rax,%rbx), %rcx
# CHECK-NEXT: 2 1 1.50 leaw 1024(%eax,%ebx,2), %cx
# CHECK-NEXT: 1 2 1.00 leal 1024(%eax,%ebx,2), %ecx
# CHECK-NEXT: 1 2 1.00 leaq 1024(%eax,%ebx,2), %rcx
# CHECK-NEXT: 2 1 1.50 leaw 1024(%rax,%rbx,2), %cx
# CHECK-NEXT: 1 2 1.00 leal 1024(%rax,%rbx,2), %ecx
# CHECK-NEXT: 1 2 1.00 leaq 1024(%rax,%rbx,2), %rcx
# CHECK: Resources:
# CHECK-NEXT: [0.0] - PdAGLU01
@ -311,142 +311,142 @@ lea 1024(%rax, %rbx, 2), %rcx
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0.0] [0.1] [1] [2] [3] [4] [5] [6] [7.0] [7.1] [8.0] [8.1] [9] [10] [11] [12] [13] [14] [15] [16.0] [16.1] [17] [18]
# CHECK-NEXT: - - - - - 67.50 67.50 - - - - - - - - - - - - - - - -
# CHECK-NEXT: - - - - - 157.50 157.50 - - - - - - - - - - - - - - - -
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0.0] [0.1] [1] [2] [3] [4] [5] [6] [7.0] [7.1] [8.0] [8.1] [9] [10] [11] [12] [13] [14] [15] [16.0] [16.1] [17] [18] Instructions:
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw 0, %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal 0, %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq 0, %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw (%eax), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal (%eax), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq (%eax), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw (%rax), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal (%rax), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq (%rax), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw (,%ebx), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal (,%ebx), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq (,%ebx), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw (,%rbx), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal (,%rbx), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq (,%rbx), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw (,%ebx), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal (,%ebx), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq (,%ebx), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw (,%rbx), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal (,%rbx), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq (,%rbx), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw (,%ebx,2), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal (,%ebx,2), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq (,%ebx,2), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw (,%rbx,2), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal (,%rbx,2), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq (,%rbx,2), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw (%eax,%ebx), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal (%eax,%ebx), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq (%eax,%ebx), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw (%rax,%rbx), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal (%rax,%rbx), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq (%rax,%rbx), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw (%eax,%ebx), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal (%eax,%ebx), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq (%eax,%ebx), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw (%rax,%rbx), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal (%rax,%rbx), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq (%rax,%rbx), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw (%eax,%ebx,2), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal (%eax,%ebx,2), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq (%eax,%ebx,2), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw (%rax,%rbx,2), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal (%rax,%rbx,2), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq (%rax,%rbx,2), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw -16, %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal -16, %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq -16, %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw -16(%eax), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal -16(%eax), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq -16(%eax), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw -16(%rax), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal -16(%rax), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq -16(%rax), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw -16(,%ebx), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal -16(,%ebx), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq -16(,%ebx), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw -16(,%rbx), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal -16(,%rbx), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq -16(,%rbx), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw -16(,%ebx), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal -16(,%ebx), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq -16(,%ebx), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw -16(,%rbx), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal -16(,%rbx), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq -16(,%rbx), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw -16(,%ebx,2), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal -16(,%ebx,2), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq -16(,%ebx,2), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw -16(,%rbx,2), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal -16(,%rbx,2), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq -16(,%rbx,2), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw -16(%eax,%ebx), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal -16(%eax,%ebx), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq -16(%eax,%ebx), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw -16(%rax,%rbx), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal -16(%rax,%rbx), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq -16(%rax,%rbx), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw -16(%eax,%ebx), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal -16(%eax,%ebx), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq -16(%eax,%ebx), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw -16(%rax,%rbx), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal -16(%rax,%rbx), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq -16(%rax,%rbx), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw -16(%eax,%ebx,2), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal -16(%eax,%ebx,2), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq -16(%eax,%ebx,2), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw -16(%rax,%rbx,2), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal -16(%rax,%rbx,2), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq -16(%rax,%rbx,2), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw 1024, %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal 1024, %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq 1024, %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw 1024(%eax), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal 1024(%eax), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq 1024(%eax), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw 1024(%rax), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal 1024(%rax), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq 1024(%rax), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw 1024(,%ebx), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal 1024(,%ebx), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq 1024(,%ebx), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw 1024(,%rbx), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal 1024(,%rbx), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq 1024(,%rbx), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw 1024(,%ebx), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal 1024(,%ebx), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq 1024(,%ebx), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw 1024(,%rbx), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal 1024(,%rbx), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq 1024(,%rbx), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw 1024(,%ebx,2), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal 1024(,%ebx,2), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq 1024(,%ebx,2), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw 1024(,%rbx,2), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal 1024(,%rbx,2), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq 1024(,%rbx,2), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw 1024(%eax,%ebx), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal 1024(%eax,%ebx), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq 1024(%eax,%ebx), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw 1024(%rax,%rbx), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal 1024(%rax,%rbx), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq 1024(%rax,%rbx), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw 1024(%eax,%ebx), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal 1024(%eax,%ebx), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq 1024(%eax,%ebx), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw 1024(%rax,%rbx), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal 1024(%rax,%rbx), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq 1024(%rax,%rbx), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw 1024(%eax,%ebx,2), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal 1024(%eax,%ebx,2), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq 1024(%eax,%ebx,2), %rcx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaw 1024(%rax,%rbx,2), %cx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leal 1024(%rax,%rbx,2), %ecx
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq 1024(%rax,%rbx,2), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw 0, %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal 0, %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq 0, %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw (%eax), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal (%eax), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq (%eax), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw (%rax), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal (%rax), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq (%rax), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw (,%ebx), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal (,%ebx), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq (,%ebx), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw (,%rbx), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal (,%rbx), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq (,%rbx), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw (,%ebx), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal (,%ebx), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq (,%ebx), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw (,%rbx), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal (,%rbx), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq (,%rbx), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw (,%ebx,2), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal (,%ebx,2), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq (,%ebx,2), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw (,%rbx,2), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal (,%rbx,2), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq (,%rbx,2), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw (%eax,%ebx), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal (%eax,%ebx), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq (%eax,%ebx), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw (%rax,%rbx), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal (%rax,%rbx), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq (%rax,%rbx), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw (%eax,%ebx), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal (%eax,%ebx), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq (%eax,%ebx), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw (%rax,%rbx), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal (%rax,%rbx), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq (%rax,%rbx), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw (%eax,%ebx,2), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal (%eax,%ebx,2), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq (%eax,%ebx,2), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw (%rax,%rbx,2), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal (%rax,%rbx,2), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq (%rax,%rbx,2), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw -16, %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal -16, %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq -16, %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw -16(%eax), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal -16(%eax), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq -16(%eax), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw -16(%rax), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal -16(%rax), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq -16(%rax), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw -16(,%ebx), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal -16(,%ebx), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq -16(,%ebx), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw -16(,%rbx), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal -16(,%rbx), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq -16(,%rbx), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw -16(,%ebx), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal -16(,%ebx), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq -16(,%ebx), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw -16(,%rbx), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal -16(,%rbx), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq -16(,%rbx), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw -16(,%ebx,2), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal -16(,%ebx,2), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq -16(,%ebx,2), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw -16(,%rbx,2), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal -16(,%rbx,2), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq -16(,%rbx,2), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw -16(%eax,%ebx), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal -16(%eax,%ebx), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq -16(%eax,%ebx), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw -16(%rax,%rbx), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal -16(%rax,%rbx), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq -16(%rax,%rbx), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw -16(%eax,%ebx), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal -16(%eax,%ebx), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq -16(%eax,%ebx), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw -16(%rax,%rbx), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal -16(%rax,%rbx), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq -16(%rax,%rbx), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw -16(%eax,%ebx,2), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal -16(%eax,%ebx,2), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq -16(%eax,%ebx,2), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw -16(%rax,%rbx,2), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal -16(%rax,%rbx,2), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq -16(%rax,%rbx,2), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw 1024, %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal 1024, %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq 1024, %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw 1024(%eax), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal 1024(%eax), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq 1024(%eax), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw 1024(%rax), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal 1024(%rax), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq 1024(%rax), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw 1024(,%ebx), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal 1024(,%ebx), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq 1024(,%ebx), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw 1024(,%rbx), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal 1024(,%rbx), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq 1024(,%rbx), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw 1024(,%ebx), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal 1024(,%ebx), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq 1024(,%ebx), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw 1024(,%rbx), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal 1024(,%rbx), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq 1024(,%rbx), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw 1024(,%ebx,2), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal 1024(,%ebx,2), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq 1024(,%ebx,2), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw 1024(,%rbx,2), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal 1024(,%rbx,2), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq 1024(,%rbx,2), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw 1024(%eax,%ebx), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal 1024(%eax,%ebx), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq 1024(%eax,%ebx), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw 1024(%rax,%rbx), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal 1024(%rax,%rbx), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq 1024(%rax,%rbx), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw 1024(%eax,%ebx), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal 1024(%eax,%ebx), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq 1024(%eax,%ebx), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw 1024(%rax,%rbx), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal 1024(%rax,%rbx), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq 1024(%rax,%rbx), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw 1024(%eax,%ebx,2), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal 1024(%eax,%ebx,2), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq 1024(%eax,%ebx,2), %rcx
# CHECK-NEXT: - - - - - 1.50 1.50 - - - - - - - - - - - - - - - - leaw 1024(%rax,%rbx,2), %cx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leal 1024(%rax,%rbx,2), %ecx
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq 1024(%rax,%rbx,2), %rcx

View File

@ -7,10 +7,10 @@ vbroadcastss (%rax), %ymm0
# CHECK: Iterations: 100
# CHECK-NEXT: Instructions: 200
# CHECK-NEXT: Total Cycles: 206
# CHECK-NEXT: Total uOps: 400
# CHECK-NEXT: Total uOps: 300
# CHECK: Dispatch Width: 4
# CHECK-NEXT: uOps Per Cycle: 1.94
# CHECK-NEXT: uOps Per Cycle: 1.46
# CHECK-NEXT: IPC: 0.97
# CHECK-NEXT: Block RThroughput: 2.0
@ -23,7 +23,7 @@ vbroadcastss (%rax), %ymm0
# CHECK-NEXT: [6]: HasSideEffects (U)
# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
# CHECK-NEXT: 2 1 0.50 leaq 8(%rsp,%rdi,2), %rax
# CHECK-NEXT: 1 2 1.00 leaq 8(%rsp,%rdi,2), %rax
# CHECK-NEXT: 2 6 2.00 * vbroadcastss (%rax), %ymm0
# CHECK: Resources:
@ -53,22 +53,22 @@ vbroadcastss (%rax), %ymm0
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0.0] [0.1] [1] [2] [3] [4] [5] [6] [7.0] [7.1] [8.0] [8.1] [9] [10] [11] [12] [13] [14] [15] [16.0] [16.1] [17] [18]
# CHECK-NEXT: 0.50 0.50 - - - 0.50 0.50 - 2.00 2.00 - - - - 1.00 1.00 - - - 0.50 0.50 - -
# CHECK-NEXT: 0.50 0.50 - - - 1.00 1.00 - 2.00 2.00 - - - - 1.00 1.00 - - - 0.50 0.50 - -
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0.0] [0.1] [1] [2] [3] [4] [5] [6] [7.0] [7.1] [8.0] [8.1] [9] [10] [11] [12] [13] [14] [15] [16.0] [16.1] [17] [18] Instructions:
# CHECK-NEXT: - - - - - 0.50 0.50 - - - - - - - - - - - - - - - - leaq 8(%rsp,%rdi,2), %rax
# CHECK-NEXT: - - - - - 1.00 1.00 - - - - - - - - - - - - - - - - leaq 8(%rsp,%rdi,2), %rax
# CHECK-NEXT: 0.50 0.50 - - - - - - 2.00 2.00 - - - - 1.00 1.00 - - - 0.50 0.50 - - vbroadcastss (%rax), %ymm0
# CHECK: Timeline view:
# CHECK-NEXT: 012
# CHECK-NEXT: Index 0123456789
# CHECK: [0,0] DeER . . . leaq 8(%rsp,%rdi,2), %rax
# CHECK: [0,0] DeeER. . . leaq 8(%rsp,%rdi,2), %rax
# CHECK-NEXT: [0,1] DeeeeeeER . . vbroadcastss (%rax), %ymm0
# CHECK-NEXT: [1,0] .DeE----R . . leaq 8(%rsp,%rdi,2), %rax
# CHECK-NEXT: [1,0] DeeE----R . . leaq 8(%rsp,%rdi,2), %rax
# CHECK-NEXT: [1,1] .DeeeeeeER. . vbroadcastss (%rax), %ymm0
# CHECK-NEXT: [2,0] . DeE----R. . leaq 8(%rsp,%rdi,2), %rax
# CHECK-NEXT: [2,0] .D=eeE---R. . leaq 8(%rsp,%rdi,2), %rax
# CHECK-NEXT: [2,1] . D==eeeeeeER vbroadcastss (%rax), %ymm0
# CHECK: Average Wait times (based on the timeline view):
@ -78,6 +78,6 @@ vbroadcastss (%rax), %ymm0
# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage
# CHECK: [0] [1] [2] [3]
# CHECK-NEXT: 0. 3 1.0 1.0 2.7 leaq 8(%rsp,%rdi,2), %rax
# CHECK-NEXT: 1. 3 1.7 0.7 0.0 vbroadcastss (%rax), %ymm0
# CHECK-NEXT: 3 1.3 0.8 1.3 <total>
# CHECK-NEXT: 0. 3 1.3 1.3 2.3 leaq 8(%rsp,%rdi,2), %rax
# CHECK-NEXT: 1. 3 1.7 1.0 0.0 vbroadcastss (%rax), %ymm0
# CHECK-NEXT: 3 1.5 1.2 1.2 <total>

View File

@ -35,7 +35,7 @@ rcpss (%rax), %xmm1
# BARCELONA-NEXT: 0123456789
# BARCELONA-NEXT: Index 0123456789 0123
# BDVER2-NEXT: 01234567
# BDVER2-NEXT: 012345678
# BDVER2-NEXT: Index 0123456789
# BROADWELL-NEXT: 0123456789
@ -59,8 +59,8 @@ rcpss (%rax), %xmm1
# BARCELONA: [0,0] DeER . . . . . leaq 8(%rsp,%rdi,2), %rax
# BARCELONA-NEXT: [0,1] D=eeeeeeeeeeeeeeeeeeeeER sqrtss (%rax), %xmm1
# BDVER2: [0,0] DeER . . . . leaq 8(%rsp,%rdi,2), %rax
# BDVER2-NEXT: [0,1] D=eeeeeeeeeeeeeeER sqrtss (%rax), %xmm1
# BDVER2: [0,0] DeeER. . . . leaq 8(%rsp,%rdi,2), %rax
# BDVER2-NEXT: [0,1] D==eeeeeeeeeeeeeeER sqrtss (%rax), %xmm1
# BROADWELL: [0,0] DeER . . . . leaq 8(%rsp,%rdi,2), %rax
# BROADWELL-NEXT: [0,1] D=eeeeeeeeeeeeeeeeER sqrtss (%rax), %xmm1
@ -92,8 +92,8 @@ rcpss (%rax), %xmm1
# BARCELONA-NEXT: 1. 1 2.0 0.0 0.0 sqrtss (%rax), %xmm1
# BARCELONA-NEXT: 1 1.5 0.5 0.0 <total>
# BDVER2-NEXT: 1. 1 2.0 0.0 0.0 sqrtss (%rax), %xmm1
# BDVER2-NEXT: 1 1.5 0.5 0.0 <total>
# BDVER2-NEXT: 1. 1 3.0 0.0 0.0 sqrtss (%rax), %xmm1
# BDVER2-NEXT: 1 2.0 0.5 0.0 <total>
# BROADWELL-NEXT: 1. 1 2.0 0.0 0.0 sqrtss (%rax), %xmm1
# BROADWELL-NEXT: 1 1.5 0.5 0.0 <total>
@ -120,7 +120,7 @@ rcpss (%rax), %xmm1
# BARCELONA-NEXT: 0123456789 0
# BARCELONA-NEXT: Index 0123456789 0123456789
# BDVER2-NEXT: 01234567
# BDVER2-NEXT: 012345678
# BDVER2-NEXT: Index 0123456789
# BROADWELL-NEXT: 0123456789
@ -144,8 +144,8 @@ rcpss (%rax), %xmm1
# BARCELONA: [0,0] DeER . . . . . . leaq 8(%rsp,%rdi,2), %rax
# BARCELONA-NEXT: [0,1] D=eeeeeeeeeeeeeeeeeeeeeeeeeeeER sqrtsd (%rax), %xmm1
# BDVER2: [0,0] DeER . . . . leaq 8(%rsp,%rdi,2), %rax
# BDVER2-NEXT: [0,1] D=eeeeeeeeeeeeeeER sqrtsd (%rax), %xmm1
# BDVER2: [0,0] DeeER. . . . leaq 8(%rsp,%rdi,2), %rax
# BDVER2-NEXT: [0,1] D==eeeeeeeeeeeeeeER sqrtsd (%rax), %xmm1
# BROADWELL: [0,0] DeER . . . . . leaq 8(%rsp,%rdi,2), %rax
# BROADWELL-NEXT: [0,1] D=eeeeeeeeeeeeeeeeeeeeeER sqrtsd (%rax), %xmm1
@ -177,8 +177,8 @@ rcpss (%rax), %xmm1
# BARCELONA-NEXT: 1. 1 2.0 0.0 0.0 sqrtsd (%rax), %xmm1
# BARCELONA-NEXT: 1 1.5 0.5 0.0 <total>
# BDVER2-NEXT: 1. 1 2.0 0.0 0.0 sqrtsd (%rax), %xmm1
# BDVER2-NEXT: 1 1.5 0.5 0.0 <total>
# BDVER2-NEXT: 1. 1 3.0 0.0 0.0 sqrtsd (%rax), %xmm1
# BDVER2-NEXT: 1 2.0 0.5 0.0 <total>
# BROADWELL-NEXT: 1. 1 2.0 0.0 0.0 sqrtsd (%rax), %xmm1
# BROADWELL-NEXT: 1 1.5 0.5 0.0 <total>
@ -203,7 +203,7 @@ rcpss (%rax), %xmm1
# ALL: Timeline view:
# BARCELONA-NEXT: 01234
# BDVER2-NEXT: 0123
# BDVER2-NEXT: 01234
# BROADWELL-NEXT: 0123
# BTVER2-NEXT: 01
# HASWELL-NEXT: 0123
@ -216,8 +216,8 @@ rcpss (%rax), %xmm1
# BARCELONA: [0,0] DeER . . . leaq 8(%rsp,%rdi,2), %rax
# BARCELONA-NEXT: [0,1] D=eeeeeeeeeeeER rsqrtss (%rax), %xmm1
# BDVER2: [0,0] DeER . . . leaq 8(%rsp,%rdi,2), %rax
# BDVER2-NEXT: [0,1] D=eeeeeeeeeeER rsqrtss (%rax), %xmm1
# BDVER2: [0,0] DeeER. . . leaq 8(%rsp,%rdi,2), %rax
# BDVER2-NEXT: [0,1] D==eeeeeeeeeeER rsqrtss (%rax), %xmm1
# BROADWELL: [0,0] DeER . . . leaq 8(%rsp,%rdi,2), %rax
# BROADWELL-NEXT: [0,1] D=eeeeeeeeeeER rsqrtss (%rax), %xmm1
@ -249,8 +249,8 @@ rcpss (%rax), %xmm1
# BARCELONA-NEXT: 1. 1 2.0 0.0 0.0 rsqrtss (%rax), %xmm1
# BARCELONA-NEXT: 1 1.5 0.5 0.0 <total>
# BDVER2-NEXT: 1. 1 2.0 0.0 0.0 rsqrtss (%rax), %xmm1
# BDVER2-NEXT: 1 1.5 0.5 0.0 <total>
# BDVER2-NEXT: 1. 1 3.0 0.0 0.0 rsqrtss (%rax), %xmm1
# BDVER2-NEXT: 1 2.0 0.5 0.0 <total>
# BROADWELL-NEXT: 1. 1 2.0 0.0 0.0 rsqrtss (%rax), %xmm1
# BROADWELL-NEXT: 1 1.5 0.5 0.0 <total>
@ -275,7 +275,7 @@ rcpss (%rax), %xmm1
# ALL: Timeline view:
# BARCELONA-NEXT: 01234
# BDVER2-NEXT: 0123
# BDVER2-NEXT: 01234
# BROADWELL-NEXT: 0123
# BTVER2-NEXT: 01
# HASWELL-NEXT: 0123
@ -288,8 +288,8 @@ rcpss (%rax), %xmm1
# BARCELONA: [0,0] DeER . . . leaq 8(%rsp,%rdi,2), %rax
# BARCELONA-NEXT: [0,1] D=eeeeeeeeeeeER rcpss (%rax), %xmm1
# BDVER2: [0,0] DeER . . . leaq 8(%rsp,%rdi,2), %rax
# BDVER2-NEXT: [0,1] D=eeeeeeeeeeER rcpss (%rax), %xmm1
# BDVER2: [0,0] DeeER. . . leaq 8(%rsp,%rdi,2), %rax
# BDVER2-NEXT: [0,1] D==eeeeeeeeeeER rcpss (%rax), %xmm1
# BROADWELL: [0,0] DeER . . . leaq 8(%rsp,%rdi,2), %rax
# BROADWELL-NEXT: [0,1] D=eeeeeeeeeeER rcpss (%rax), %xmm1
@ -321,8 +321,8 @@ rcpss (%rax), %xmm1
# BARCELONA-NEXT: 1. 1 2.0 0.0 0.0 rcpss (%rax), %xmm1
# BARCELONA-NEXT: 1 1.5 0.5 0.0 <total>
# BDVER2-NEXT: 1. 1 2.0 0.0 0.0 rcpss (%rax), %xmm1
# BDVER2-NEXT: 1 1.5 0.5 0.0 <total>
# BDVER2-NEXT: 1. 1 3.0 0.0 0.0 rcpss (%rax), %xmm1
# BDVER2-NEXT: 1 2.0 0.5 0.0 <total>
# BROADWELL-NEXT: 1. 1 2.0 0.0 0.0 rcpss (%rax), %xmm1
# BROADWELL-NEXT: 1 1.5 0.5 0.0 <total>