1 instantiation of ControlFlowBranch
ILLink.RoslynAnalyzer (1)
DataFlow\ControlFlowGraphProxy.cs (1)
90return new ControlFlowBranch(
26 references to ControlFlowBranch
ILLink.RoslynAnalyzer (26)
DataFlow\ControlFlowGraphProxy.cs (5)
16>.ControlFlowBranch; 61public static ControlFlowBranch CreateProxyBranch(Microsoft.CodeAnalysis.FlowAnalysis.ControlFlowBranch branch) 99public IEnumerable<ControlFlowBranch> GetPredecessors(BlockProxy block) 103if (CreateProxyBranch(predecessor) is ControlFlowBranch branch) 108public IEnumerable<ControlFlowBranch> GetSuccessors(BlockProxy block)
src\tools\illink\src\ILLink.Shared\DataFlow\ForwardDataFlowAnalysis.cs (13)
33private readonly Dictionary<IControlFlowGraph<TBlock, TRegion>.ControlFlowBranch, TState> branchInput; 51private readonly Dictionary<IControlFlowGraph<TBlock, TRegion>.ControlFlowBranch, TValue> exceptionFinallyState; 69IControlFlowGraph<TBlock, TRegion>.ControlFlowBranch? entryOut = cfg.GetSuccessors(cfg.Entry).SingleOrDefault(); 126public bool TryGetExceptionFinallyState(IControlFlowGraph<TBlock, TRegion>.ControlFlowBranch branch, out TValue state) 141public void SetExceptionFinallyState(IControlFlowGraph<TBlock, TRegion>.ControlFlowBranch branch, TValue state) 149public TState Get(IControlFlowGraph<TBlock, TRegion>.ControlFlowBranch branch) 173public virtual void TraceEdgeInput(IControlFlowGraph<TBlock, TRegion>.ControlFlowBranch branch, TValue state) { } 192Action<IControlFlowGraph<TBlock, TRegion>.ControlFlowBranch, TValue> updateState 196foreach (var successor in cfg.GetSuccessors(block)) 279foreach (var predecessor in cfg.GetPredecessors(block)) 318foreach (var predecessor in cfg.GetPredecessors(block)) 421IControlFlowGraph<TBlock, TRegion>.ControlFlowBranch predecessor, 438IControlFlowGraph<TBlock, TRegion>.ControlFlowBranch? finallyExit = cfg.GetSuccessors(lastFinallyBlock).SingleOrDefault();
src\tools\illink\src\ILLink.Shared\DataFlow\IControlFlowGraph.cs (6)
45public readonly struct ControlFlowBranch : IEquatable<ControlFlowBranch> 78public bool Equals(ControlFlowBranch other) 94return obj is ControlFlowBranch other && Equals(other); 101Destination?.GetHashCode() ?? typeof(ControlFlowBranch).GetHashCode(), 113IEnumerable<ControlFlowBranch> GetPredecessors(TBlock block); 115IEnumerable<ControlFlowBranch> GetSuccessors(TBlock block);
TrimAnalysis\TrimDataFlowAnalysis.cs (2)
129foreach (var predecessor in cfg.GetPredecessors(block)) 193IControlFlowGraph<BlockProxy, RegionProxy>.ControlFlowBranch branch,