diff --git a/llvm/include/llvm/CodeGen/MachinePipeliner.h b/llvm/include/llvm/CodeGen/MachinePipeliner.h index f95a02aad4559..0362b501ed347 100644 --- a/llvm/include/llvm/CodeGen/MachinePipeliner.h +++ b/llvm/include/llvm/CodeGen/MachinePipeliner.h @@ -468,9 +468,10 @@ class NodeSet { SUnit *SuccSUnit = Succ.getDst(); if (V != SuccSUnit) continue; - if (SUnitToDistance[U] + Succ.getLatency() > SUnitToDistance[V]) { - SUnitToDistance[V] = SUnitToDistance[U] + Succ.getLatency(); - } + unsigned &DU = SUnitToDistance[U]; + unsigned &DV = SUnitToDistance[V]; + if (DU + Succ.getLatency() > DV) + DV = DU + Succ.getLatency(); } } // Handle a back-edge in loop carried dependencies