93 references to BasicBlockKind
ILLink.RoslynAnalyzer (2)
DataFlow\ControlFlowGraphExtensions.cs (2)
18 Debug.Assert (firstBlock.Kind == BasicBlockKind.Entry); 25 Debug.Assert (lastBlock.Kind == BasicBlockKind.Exit);
Microsoft.CodeAnalysis (78)
Operations\BasicBlock.cs (2)
29BasicBlockKind kind, 49public BasicBlockKind Kind { get; }
Operations\ControlFlowBranchSemantics.cs (1)
25/// Represents a <see cref="ControlFlowBranch"/> to the exit block, i.e. the destination block has <see cref="BasicBlockKind.Exit"/>.
Operations\ControlFlowGraph.cs (2)
43Debug.Assert(blocks.First().Kind == BasicBlockKind.Entry); 44Debug.Assert(blocks.Last().Kind == BasicBlockKind.Exit);
Operations\ControlFlowGraphBuilder.BasicBlockBuilder.cs (2)
18public readonly BasicBlockKind Kind; 35public BasicBlockBuilder(BasicBlockKind kind)
Operations\ControlFlowGraphBuilder.cs (71)
30private readonly BasicBlockBuilder _entry = new BasicBlockBuilder(BasicBlockKind.Entry); 31private readonly BasicBlockBuilder _exit = new BasicBlockBuilder(BasicBlockKind.Exit); 201return blockBuilder.Kind != BasicBlockKind.Exit ? 700predecessor.Kind != BasicBlockKind.Entry && 859if (next.Destination.Kind != BasicBlockKind.Exit || 872predecessor.Kind == BasicBlockKind.Entry || 971if (predecessor.Kind != BasicBlockKind.Entry && 1138else if (predecessor.Kind == BasicBlockKind.Entry && destinationRegionOpt == null) 1263AppendNewBlock(new BasicBlockBuilder(BasicBlockKind.Block)); 1345AppendNewBlock(new BasicBlockBuilder(BasicBlockKind.Block)); 1576var afterIf = new BasicBlockBuilder(BasicBlockKind.Block); 1608var afterIf = new BasicBlockBuilder(BasicBlockKind.Block); 2343var done = new BasicBlockBuilder(BasicBlockKind.Block); 2344var checkRight = new BasicBlockBuilder(BasicBlockKind.Block); 2345var resultIsLeft = new BasicBlockBuilder(BasicBlockKind.Block); 2412var done = new BasicBlockBuilder(BasicBlockKind.Block); 2413var checkRight = new BasicBlockBuilder(BasicBlockKind.Block); 2475var done = new BasicBlockBuilder(BasicBlockKind.Block); 2476var doBitWise = new BasicBlockBuilder(BasicBlockKind.Block); 2572var done = new BasicBlockBuilder(BasicBlockKind.Block); 2573var doBitWise = new BasicBlockBuilder(BasicBlockKind.Block); 2681var labEnd = new BasicBlockBuilder(BasicBlockKind.Block); 2787dest ??= new BasicBlockBuilder(BasicBlockKind.Block); 2808BasicBlockBuilder? fallThrough = new BasicBlockBuilder(BasicBlockKind.Block); 2872var afterIf = new BasicBlockBuilder(BasicBlockKind.Block); 2891var whenNull = new BasicBlockBuilder(BasicBlockKind.Block); 2897dest ??= new BasicBlockBuilder(BasicBlockKind.Block); 2901var afterCoalesce = new BasicBlockBuilder(BasicBlockKind.Block); 2925dest ??= new BasicBlockBuilder(BasicBlockKind.Block); 2935dest ??= new BasicBlockBuilder(BasicBlockKind.Block); 3045var whenNull = new BasicBlockBuilder(BasicBlockKind.Block); 3049var afterCoalesce = new BasicBlockBuilder(BasicBlockKind.Block); 3118var whenNull = new BasicBlockBuilder(BasicBlockKind.Block); 3119var afterCoalesce = new BasicBlockBuilder(BasicBlockKind.Block); 3372var whenNull = new BasicBlockBuilder(BasicBlockKind.Block); 3441var afterAccess = new BasicBlockBuilder(BasicBlockKind.Block); 3615var start = new BasicBlockBuilder(BasicBlockKind.Block); 3687var catchBlock = new BasicBlockBuilder(BasicBlockKind.Block); 3700var continueDispatchBlock = new BasicBlockBuilder(BasicBlockKind.Block); 3760AppendNewBlock(new BasicBlockBuilder(BasicBlockKind.Block)); 3762var continueDispatchBlock = new BasicBlockBuilder(BasicBlockKind.Block); 3864labeled = new BasicBlockBuilder(BasicBlockKind.Block); 3874return new BasicBlockBuilder(BasicBlockKind.Block); 3888labeledBlock = new BasicBlockBuilder(BasicBlockKind.Block); 3918AppendNewBlock(new BasicBlockBuilder(BasicBlockKind.Block), linkToPrevious: false); 4079var afterTryFinally = new BasicBlockBuilder(BasicBlockKind.Block); 4111var endOfFinally = new BasicBlockBuilder(BasicBlockKind.Block); 4116AppendNewBlock(new BasicBlockBuilder(BasicBlockKind.Block)); 4351var afterTryFinally = new BasicBlockBuilder(BasicBlockKind.Block); 4393var endOfFinally = new BasicBlockBuilder(BasicBlockKind.Block); 4397AppendNewBlock(new BasicBlockBuilder(BasicBlockKind.Block)); 4524var afterTryFinally = new BasicBlockBuilder(BasicBlockKind.Block); 4739BasicBlockBuilder checkConditionBlock = new BasicBlockBuilder(BasicBlockKind.Block); 4740BasicBlockBuilder bodyBlock = new BasicBlockBuilder(BasicBlockKind.Block); 4932var afterPositiveCheck = new BasicBlockBuilder(BasicBlockKind.Block); 4936var whenNotNull = new BasicBlockBuilder(BasicBlockKind.Block); 5043var notPositive = new BasicBlockBuilder(BasicBlockKind.Block); 5161var whenBothNotNull = new BasicBlockBuilder(BasicBlockKind.Block); 5182var notPositive = new BasicBlockBuilder(BasicBlockKind.Block); 5312BasicBlockBuilder afterIncrement = new BasicBlockBuilder(BasicBlockKind.Block); 5324BasicBlockBuilder whenNotNull = new BasicBlockBuilder(BasicBlockKind.Block); 5500var body = new BasicBlockBuilder(BasicBlockKind.Block); 5501var nextSection = new BasicBlockBuilder(BasicBlockKind.Block); 5516var nextCase = new BasicBlockBuilder(BasicBlockKind.Block); 5611AppendNewBlock(new BasicBlockBuilder(BasicBlockKind.Block)); 5698AppendNewBlock(new BasicBlockBuilder(BasicBlockKind.Block), linkToPrevious: false); 5742var start = new BasicBlockBuilder(BasicBlockKind.Block); 5824afterInitialization = new BasicBlockBuilder(BasicBlockKind.Block); 6795resultBlock = new BasicBlockBuilder(BasicBlockKind.Block); 7711var afterSwitch = new BasicBlockBuilder(BasicBlockKind.Block); 7718var afterArm = new BasicBlockBuilder(BasicBlockKind.Block);
Microsoft.CodeAnalysis.CodeStyle (4)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ControlFlowGraphExtensions.cs (2)
16Debug.Assert(firstBlock.Kind == BasicBlockKind.Entry); 23Debug.Assert(lastBlock.Kind == BasicBlockKind.Exit);
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.DataFlowAnalyzer.cs (1)
102if (basicBlock.Kind == BasicBlockKind.Entry)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.DataFlowAnalyzer.FlowGraphAnalysisData.cs (1)
354basicBlock.Kind == BasicBlockKind.Entry ||
Microsoft.CodeAnalysis.Test.Utilities (5)
Compilation\ControlFlowGraphVerifier.cs (5)
130case BasicBlockKind.Block: 135case BasicBlockKind.Entry: 155case BasicBlockKind.Exit: 228else if (block.Kind != BasicBlockKind.Entry) 277if (block.Kind == BasicBlockKind.Exit)
Microsoft.CodeAnalysis.Workspaces (4)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ControlFlowGraphExtensions.cs (2)
16Debug.Assert(firstBlock.Kind == BasicBlockKind.Entry); 23Debug.Assert(lastBlock.Kind == BasicBlockKind.Exit);
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.DataFlowAnalyzer.cs (1)
102if (basicBlock.Kind == BasicBlockKind.Entry)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\SymbolUsageAnalysis\SymbolUsageAnalysis.DataFlowAnalyzer.FlowGraphAnalysisData.cs (1)
354basicBlock.Kind == BasicBlockKind.Entry ||