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