Skip to content

Commit ae1e909

Browse files
authored
[llvm-mca] Round UP when formatting Reciprocal Throughput (#159544)
Explicitly round up the reciprocal calculation, so that .125 is displayed as 0.13 consistently across all hosts. Fix buildbot failure https://lab.llvm.org/buildbot/#/builders/193/builds/10666 since #154495
1 parent 3cc1b7c commit ae1e909

File tree

4 files changed

+26
-26
lines changed

4 files changed

+26
-26
lines changed

llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-basic-instructions.s

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2688,7 +2688,7 @@ drps
26882688
# CHECK-NEXT: 1 1 0.25 movk x7, #0, lsl #32
26892689
# CHECK-NEXT: 1 1 0.25 movz x8, #0, lsl #48
26902690
# CHECK-NEXT: 1 1 0.25 movk x9, #0, lsl #48
2691-
# CHECK-NEXT: 1 1 0.12 U msr DAIFSet, #0
2691+
# CHECK-NEXT: 1 1 0.13 U msr DAIFSet, #0
26922692
# CHECK-NEXT: 1 1 0.25 adr x2, #1600
26932693
# CHECK-NEXT: 1 1 0.25 adrp x21, #6553600
26942694
# CHECK-NEXT: 1 1 0.25 adr x0, #262144

llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-misc-instructions.s

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -30,21 +30,21 @@ sysl x16, #5, c11, c8, #5
3030
# CHECK-NEXT: [6]: HasSideEffects (U)
3131

3232
# CHECK: [1] [2] [3] [4] [5] [6] Instructions:
33-
# CHECK-NEXT: 1 1 0.12 U at s12e1r, x28
34-
# CHECK-NEXT: 1 1 0.12 U brk #0x8415
35-
# CHECK-NEXT: 1 1 0.12 * * U clrex
36-
# CHECK-NEXT: 1 1 0.12 * * U csdb
37-
# CHECK-NEXT: 1 1 0.12 U dcps1
38-
# CHECK-NEXT: 1 1 0.12 U dcps2
39-
# CHECK-NEXT: 1 1 0.12 U dcps3
40-
# CHECK-NEXT: 1 1 0.12 * * U dmb sy
41-
# CHECK-NEXT: 1 1 0.12 U hlt #0x7a67
42-
# CHECK-NEXT: 1 1 0.12 U hvc #0xecb9
43-
# CHECK-NEXT: 1 1 0.12 * * U isb
44-
# CHECK-NEXT: 1 1 0.12 * * U pssbb
45-
# CHECK-NEXT: 1 1 0.12 U smc #0x7e57
46-
# CHECK-NEXT: 1 1 0.12 U svc #0x89cb
47-
# CHECK-NEXT: 1 1 0.12 U sysl x16, #5, c11, c8, #5
33+
# CHECK-NEXT: 1 1 0.13 U at s12e1r, x28
34+
# CHECK-NEXT: 1 1 0.13 U brk #0x8415
35+
# CHECK-NEXT: 1 1 0.13 * * U clrex
36+
# CHECK-NEXT: 1 1 0.13 * * U csdb
37+
# CHECK-NEXT: 1 1 0.13 U dcps1
38+
# CHECK-NEXT: 1 1 0.13 U dcps2
39+
# CHECK-NEXT: 1 1 0.13 U dcps3
40+
# CHECK-NEXT: 1 1 0.13 * * U dmb sy
41+
# CHECK-NEXT: 1 1 0.13 U hlt #0x7a67
42+
# CHECK-NEXT: 1 1 0.13 U hvc #0xecb9
43+
# CHECK-NEXT: 1 1 0.13 * * U isb
44+
# CHECK-NEXT: 1 1 0.13 * * U pssbb
45+
# CHECK-NEXT: 1 1 0.13 U smc #0x7e57
46+
# CHECK-NEXT: 1 1 0.13 U svc #0x89cb
47+
# CHECK-NEXT: 1 1 0.13 U sysl x16, #5, c11, c8, #5
4848

4949
# CHECK: Resources:
5050
# CHECK-NEXT: [0.0] - V1UnitB

llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-sve-instructions.s

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3991,19 +3991,19 @@ zip2 z31.s, z31.s, z31.s
39913991
# CHECK-NEXT: 2 2 2.00 2 V1UnitI[2],V1UnitM[2],V1UnitM0[2] ANDS_PPzPP movs p0.b, p0/z, p0.b
39923992
# CHECK-NEXT: 2 2 2.00 2 V1UnitI[2],V1UnitM[2],V1UnitM0[2] ORRS_PPzPP movs p15.b, p15.b
39933993
# CHECK-NEXT: 2 2 2.00 2 V1UnitI[2],V1UnitM[2],V1UnitM0[2] ANDS_PPzPP movs p15.b, p15/z, p15.b
3994-
# CHECK-NEXT: 1 1 0.12 U 1 MRS mrs x3, ID_AA64ZFR0_EL1
3995-
# CHECK-NEXT: 1 1 0.12 U 1 MRS mrs x3, ZCR_EL1
3996-
# CHECK-NEXT: 1 1 0.12 U 1 MRS mrs x3, ZCR_EL12
3997-
# CHECK-NEXT: 1 1 0.12 U 1 MRS mrs x3, ZCR_EL2
3998-
# CHECK-NEXT: 1 1 0.12 U 1 MRS mrs x3, ZCR_EL3
3999-
# CHECK-NEXT: 1 1 0.12 U 1 MSR msr ZCR_EL1, x3
3994+
# CHECK-NEXT: 1 1 0.13 U 1 MRS mrs x3, ID_AA64ZFR0_EL1
3995+
# CHECK-NEXT: 1 1 0.13 U 1 MRS mrs x3, ZCR_EL1
3996+
# CHECK-NEXT: 1 1 0.13 U 1 MRS mrs x3, ZCR_EL12
3997+
# CHECK-NEXT: 1 1 0.13 U 1 MRS mrs x3, ZCR_EL2
3998+
# CHECK-NEXT: 1 1 0.13 U 1 MRS mrs x3, ZCR_EL3
3999+
# CHECK-NEXT: 1 1 0.13 U 1 MSR msr ZCR_EL1, x3
40004000
# CHECK-NEXT: 2 5 2.00 2 V1UnitV[2],V1UnitV0[2],V1UnitV01[2],V1UnitV02[2] MSB_ZPmZZ_D msb z0.d, p0/m, z0.d, z0.d
40014001
# CHECK-NEXT: 1 4 1.00 4 V1UnitV,V1UnitV0,V1UnitV01,V1UnitV02 MSB_ZPmZZ_B msb z18.b, p1/m, z27.b, z0.b
40024002
# CHECK-NEXT: 1 4 1.00 4 V1UnitV,V1UnitV0,V1UnitV01,V1UnitV02 MSB_ZPmZZ_H msb z27.h, p5/m, z23.h, z1.h
40034003
# CHECK-NEXT: 1 4 1.00 4 V1UnitV,V1UnitV0,V1UnitV01,V1UnitV02 MSB_ZPmZZ_S msb z26.s, p2/m, z0.s, z2.s
4004-
# CHECK-NEXT: 1 1 0.12 U 1 MSR msr ZCR_EL12, x3
4005-
# CHECK-NEXT: 1 1 0.12 U 1 MSR msr ZCR_EL2, x3
4006-
# CHECK-NEXT: 1 1 0.12 U 1 MSR msr ZCR_EL3, x3
4004+
# CHECK-NEXT: 1 1 0.13 U 1 MSR msr ZCR_EL12, x3
4005+
# CHECK-NEXT: 1 1 0.13 U 1 MSR msr ZCR_EL2, x3
4006+
# CHECK-NEXT: 1 1 0.13 U 1 MSR msr ZCR_EL3, x3
40074007
# CHECK-NEXT: 1 4 1.00 4 V1UnitV,V1UnitV0,V1UnitV01,V1UnitV02 MUL_ZPmZ_B mul z0.b, p7/m, z0.b, z31.b
40084008
# CHECK-NEXT: 2 5 2.00 5 V1UnitV[2],V1UnitV0[2],V1UnitV01[2],V1UnitV02[2] MUL_ZPmZ_D mul z0.d, p7/m, z0.d, z31.d
40094009
# CHECK-NEXT: 1 4 1.00 4 V1UnitV,V1UnitV0,V1UnitV01,V1UnitV02 MUL_ZPmZ_H mul z0.h, p7/m, z0.h, z31.h

llvm/tools/llvm-mca/Views/InstructionInfoView.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ void InstructionInfoView::printView(raw_ostream &OS) const {
136136
FOS.PadToColumn(Paddings[2]);
137137
if (IIVDEntry.RThroughput) {
138138
double RT = *IIVDEntry.RThroughput;
139-
FOS << format("%.2f", RT);
139+
FOS << format("%.2f", floor((RT * 100) + 0.5) / 100);
140140
} else {
141141
FOS << " -";
142142
}

0 commit comments

Comments
 (0)