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)); 1562var afterIf = new BasicBlockBuilder(BasicBlockKind.Block); 1614var afterIf = new BasicBlockBuilder(BasicBlockKind.Block); 2349var done = new BasicBlockBuilder(BasicBlockKind.Block); 2350var checkRight = new BasicBlockBuilder(BasicBlockKind.Block); 2351var resultIsLeft = new BasicBlockBuilder(BasicBlockKind.Block); 2418var done = new BasicBlockBuilder(BasicBlockKind.Block); 2419var checkRight = new BasicBlockBuilder(BasicBlockKind.Block); 2481var done = new BasicBlockBuilder(BasicBlockKind.Block); 2482var doBitWise = new BasicBlockBuilder(BasicBlockKind.Block); 2578var done = new BasicBlockBuilder(BasicBlockKind.Block); 2579var doBitWise = new BasicBlockBuilder(BasicBlockKind.Block); 2687var labEnd = new BasicBlockBuilder(BasicBlockKind.Block); 2793dest ??= new BasicBlockBuilder(BasicBlockKind.Block); 2814BasicBlockBuilder? fallThrough = new BasicBlockBuilder(BasicBlockKind.Block); 2878var afterIf = new BasicBlockBuilder(BasicBlockKind.Block); 2897var whenNull = new BasicBlockBuilder(BasicBlockKind.Block); 2903dest ??= new BasicBlockBuilder(BasicBlockKind.Block); 2907var afterCoalesce = new BasicBlockBuilder(BasicBlockKind.Block); 2931dest ??= new BasicBlockBuilder(BasicBlockKind.Block); 2941dest ??= new BasicBlockBuilder(BasicBlockKind.Block); 3051var whenNull = new BasicBlockBuilder(BasicBlockKind.Block); 3055var afterCoalesce = new BasicBlockBuilder(BasicBlockKind.Block); 3124var whenNull = new BasicBlockBuilder(BasicBlockKind.Block); 3125var afterCoalesce = new BasicBlockBuilder(BasicBlockKind.Block); 3378var whenNull = new BasicBlockBuilder(BasicBlockKind.Block); 3447var afterAccess = new BasicBlockBuilder(BasicBlockKind.Block); 3621var start = new BasicBlockBuilder(BasicBlockKind.Block); 3693var catchBlock = new BasicBlockBuilder(BasicBlockKind.Block); 3706var continueDispatchBlock = new BasicBlockBuilder(BasicBlockKind.Block); 3766AppendNewBlock(new BasicBlockBuilder(BasicBlockKind.Block)); 3768var continueDispatchBlock = new BasicBlockBuilder(BasicBlockKind.Block); 3870labeled = new BasicBlockBuilder(BasicBlockKind.Block); 3880return new BasicBlockBuilder(BasicBlockKind.Block); 3894labeledBlock = new BasicBlockBuilder(BasicBlockKind.Block); 3924AppendNewBlock(new BasicBlockBuilder(BasicBlockKind.Block), linkToPrevious: false); 4085var afterTryFinally = new BasicBlockBuilder(BasicBlockKind.Block); 4117var endOfFinally = new BasicBlockBuilder(BasicBlockKind.Block); 4122AppendNewBlock(new BasicBlockBuilder(BasicBlockKind.Block)); 4357var afterTryFinally = new BasicBlockBuilder(BasicBlockKind.Block); 4399var endOfFinally = new BasicBlockBuilder(BasicBlockKind.Block); 4403AppendNewBlock(new BasicBlockBuilder(BasicBlockKind.Block)); 4530var afterTryFinally = new BasicBlockBuilder(BasicBlockKind.Block); 4745BasicBlockBuilder checkConditionBlock = new BasicBlockBuilder(BasicBlockKind.Block); 4746BasicBlockBuilder bodyBlock = new BasicBlockBuilder(BasicBlockKind.Block); 4938var afterPositiveCheck = new BasicBlockBuilder(BasicBlockKind.Block); 4942var whenNotNull = new BasicBlockBuilder(BasicBlockKind.Block); 5049var notPositive = new BasicBlockBuilder(BasicBlockKind.Block); 5167var whenBothNotNull = new BasicBlockBuilder(BasicBlockKind.Block); 5188var notPositive = new BasicBlockBuilder(BasicBlockKind.Block); 5318BasicBlockBuilder afterIncrement = new BasicBlockBuilder(BasicBlockKind.Block); 5330BasicBlockBuilder whenNotNull = new BasicBlockBuilder(BasicBlockKind.Block); 5506var body = new BasicBlockBuilder(BasicBlockKind.Block); 5507var nextSection = new BasicBlockBuilder(BasicBlockKind.Block); 5522var nextCase = new BasicBlockBuilder(BasicBlockKind.Block); 5617AppendNewBlock(new BasicBlockBuilder(BasicBlockKind.Block)); 5704AppendNewBlock(new BasicBlockBuilder(BasicBlockKind.Block), linkToPrevious: false); 5748var start = new BasicBlockBuilder(BasicBlockKind.Block); 5830afterInitialization = new BasicBlockBuilder(BasicBlockKind.Block); 6801resultBlock = new BasicBlockBuilder(BasicBlockKind.Block); 7745var afterSwitch = new BasicBlockBuilder(BasicBlockKind.Block); 7752var 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 ||