Skip to content

Commit d9ea371

Browse files
committed
WI #2014 make DumpDominators static
1 parent ff21062 commit d9ea371

File tree

2 files changed

+7
-5
lines changed

2 files changed

+7
-5
lines changed

TypeCobol.Analysis.Test/CfgDfaDominatorTests.cs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
11
using Microsoft.VisualStudio.TestTools.UnitTesting;
22
using System.IO;
3+
using TypeCobol.Analysis.Graph;
34
using TypeCobol.Test;
45
using static TypeCobol.Analysis.Test.CfgTestUtils;
6+
using CFG = TypeCobol.Analysis.Graph.ControlFlowGraph<TypeCobol.Compiler.Nodes.Node,
7+
TypeCobol.Analysis.Dfa.DfaBasicBlockInfo<TypeCobol.Compiler.Symbols.VariableSymbol>>;
58

69
namespace TypeCobol.Analysis.Test
710
{
@@ -19,7 +22,7 @@ public void HanoiPrgCfgExtendedDominator()
1922

2023
string expectedDomsFile = Path.Combine(BasicCfgPrograms, "HanoiPrg.doms");
2124
StringWriter writer = new StringWriter();
22-
dfaResults.Graphs[0].DumpDominators(blocks_dominators.Item2, writer);
25+
CFG.DumpDominators(blocks_dominators.Item2, writer);
2326
// compare with expected result
2427
string result = writer.ToString();
2528
string expected = File.ReadAllText(expectedDomsFile);
@@ -36,7 +39,7 @@ private static void HanoiPrgCfgExtendedImmediateDominator(bool duplicate)
3639

3740
string expectedDomsFile = Path.Combine(BasicCfgPrograms, "HanoiPrg.idoms");
3841
StringWriter writer = new StringWriter();
39-
dfaResults.Graphs[0].DumpDominators(idoms, writer);
42+
CFG.DumpDominators(idoms, writer);
4043
// compare with expected result
4144
string result = writer.ToString();
4245
string expected = File.ReadAllText(expectedDomsFile);

TypeCobol.Analysis/Graph/ControlFlowGraph.Dominator.cs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -110,15 +110,14 @@ public BitSet[] ComputeImmediateDominators(List<int> blocks, BitSet[] dominators
110110
/// </summary>
111111
/// <param name="dominators">The set of Dominators</param>
112112
/// <param name="writer"></param>
113-
public void DumpDominators(BitSet[] dominators, System.IO.TextWriter writer)
113+
public static void DumpDominators(BitSet[] dominators, System.IO.TextWriter writer)
114114
{
115115
for (int i = 0; i < dominators.Length; i++)
116116
{
117117
BitSet doms = dominators[i];
118118
if (doms != null)
119119
{
120-
BasicBlock<N, D> b = this.AllBlocks[i];
121-
writer.WriteLine($"Dominators[Block{b.Index}]={doms.ToString()}");
120+
writer.WriteLine($"Dominators[Block{i}]={doms.ToString()}");
122121
}
123122
}
124123
}

0 commit comments

Comments
 (0)