public void MarkLabel(Operand label) { if (_irLabels.TryGetValue(label, out BasicBlock nextBlock)) { nextBlock.Index = _irBlocks.Count; _irBlocks.AddLast(nextBlock); NextBlock(nextBlock); } else { NewNextBlock(); _irLabels.Add(label, _irBlock); } }
public void MarkLabel(Operand label, BasicBlockFrequency nextFreq = default) { _nextBlockFreq = nextFreq; if (_irLabels.TryGetValue(label, out BasicBlock nextBlock)) { nextBlock.Index = _irBlocks.Count; _irBlocks.AddLast(nextBlock); NextBlock(nextBlock); } else { NewNextBlock(); _irLabels.Add(label, _irBlock); } }