1 write to LastBlockOrdinal
Microsoft.CodeAnalysis (1)
Operations\ControlFlowRegion.cs (1)
76LastBlockOrdinal = lastBlockOrdinal;
39 references to LastBlockOrdinal
ILLink.RoslynAnalyzer (1)
DataFlow\ControlFlowGraphProxy.cs (1)
235 new BlockProxy (ControlFlowGraph.Blocks[region.Region.LastBlockOrdinal]);
Microsoft.CodeAnalysis (10)
Operations\ControlFlowGraph.cs (1)
48Debug.Assert(root.LastBlockOrdinal == blocks.Length - 1);
Operations\ControlFlowGraphBuilder.cs (2)
382@finally.LastBlockOrdinal, 390blocks[@finally.LastBlockOrdinal].FallThrough.Kind == ControlFlowBranchSemantics.StructuredExceptionHandling;
Operations\ControlFlowGraphBuilder.RegionBuilder.cs (1)
361firstBlockWithoutRegion = region.LastBlockOrdinal + 1;
Operations\ControlFlowRegion.cs (6)
100Debug.Assert(NestedRegions[1].LastBlockOrdinal == lastBlockOrdinal); 101Debug.Assert(NestedRegions[0].LastBlockOrdinal + 1 == NestedRegions[1].FirstBlockOrdinal); 108previousLast = NestedRegions[0].LastBlockOrdinal; 114previousLast = r.LastBlockOrdinal; 135previousLast = r.LastBlockOrdinal; 149return FirstBlockOrdinal <= destinationOrdinal && LastBlockOrdinal >= destinationOrdinal;
Microsoft.CodeAnalysis.AnalyzerUtilities (13)
src\RoslynAnalyzers\Utilities\FlowAnalysis\Extensions\BasicBlockExtensions.cs (2)
24yield return (predecessorBlock: cfg.Blocks[lastFinally.LastBlockOrdinal], branchWithInfo); 124var ordinalToCompare = first ? enclosingRegion.FirstBlockOrdinal : enclosingRegion.LastBlockOrdinal;
src\RoslynAnalyzers\Utilities\FlowAnalysis\Extensions\ControlFlowRegionExtensions.cs (3)
13controlFlowRegion.LastBlockOrdinal >= nestedRegion.LastBlockOrdinal; 17for (var i = controlFlowRegion.FirstBlockOrdinal; i <= controlFlowRegion.LastBlockOrdinal; i++)
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Framework\DataFlow\DataFlowAnalysis.cs (6)
236p <= tryRegion.LastBlockOrdinal && 353for (int i = finallyRegion.FirstBlockOrdinal; i <= finallyRegion.LastBlockOrdinal; i++) 699if (finallyRegion.LastBlockOrdinal < catchRegion.FirstBlockOrdinal) 729if (!finallyBlockSuccessorsMap.TryGetValue(finallyRegion.LastBlockOrdinal, out var lastBlockSuccessors)) 732finallyBlockSuccessorsMap.Add(finallyRegion.LastBlockOrdinal, lastBlockSuccessors); 822maxSuccessorOrdinal = Math.Max(maxSuccessorOrdinal, branch.FinallyRegions[^1].LastBlockOrdinal);
src\RoslynAnalyzers\Utilities\FlowAnalysis\FlowAnalysis\Framework\DataFlow\DataFlowOperationVisitor.cs (2)
477block.EnclosingRegion.LastBlockOrdinal == block.Ordinal) 3795return tryRegion.FirstBlockOrdinal <= pendingThrow.BasicBlockOrdinal && tryRegion.LastBlockOrdinal >= pendingThrow.BasicBlockOrdinal;
Microsoft.CodeAnalysis.CodeStyle (2)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ControlFlowRegionExtensions.cs (1)
10=> region.FirstBlockOrdinal <= destinationOrdinal && region.LastBlockOrdinal >= destinationOrdinal;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (1)
291@finally.LastBlockOrdinal,
Microsoft.CodeAnalysis.Test.Utilities (11)
Compilation\ControlFlowGraphVerifier.cs (9)
163Assert.Equal(i, currentRegion.LastBlockOrdinal); 296Assert.Equal(block.EnclosingRegion.LastBlockOrdinal, block.Ordinal); 318if (currentRegion.LastBlockOrdinal == block.Ordinal && i != blocks.Length - 1) 464while (region.LastBlockOrdinal == block.Ordinal) 517if (region.LastBlockOrdinal != block.Ordinal && referencedIds.Contains(id)) 1076foreach (IFlowCaptureOperation candidate in getFlowCaptureOperationsFromBlocksInRegion(region, region.LastBlockOrdinal)) 1305Debug.Assert(lastBlockOrdinal <= region.LastBlockOrdinal); 1321for (int i = firstBlockOrdinal; i <= region.LastBlockOrdinal; i++) 1508if (region.LastBlockOrdinal != lastBlockOrdinal)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ControlFlowRegionExtensions.cs (1)
10=> region.FirstBlockOrdinal <= destinationOrdinal && region.LastBlockOrdinal >= destinationOrdinal;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (1)
291@finally.LastBlockOrdinal,
Microsoft.CodeAnalysis.Workspaces (2)
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\Extensions\ControlFlowRegionExtensions.cs (1)
10=> region.FirstBlockOrdinal <= destinationOrdinal && region.LastBlockOrdinal >= destinationOrdinal;
src\Workspaces\SharedUtilitiesAndExtensions\Compiler\Core\FlowAnalysis\CustomDataFlowAnalysis.cs (1)
291@finally.LastBlockOrdinal,