Author: raja
Date: 2006-05-16 09:18:22 -0400 (Tue, 16 May 2006)
New Revision: 60737
Modified:
trunk/mcs/gmcs/ChangeLog
trunk/mcs/gmcs/flowanalysis.cs
trunk/mcs/gmcs/statement.cs
trunk/mcs/mcs/ChangeLog
trunk/mcs/mcs/flowanalysis.cs
trunk/mcs/mcs/statement.cs
Log:
In mcs:
* statement.cs (Goto.Resolve): Merge jump origins here ...
* flowanalysis.cs (FlowBranching.Label): ... rather than here.
In gmcs:
* statement.cs (Goto.Resolve): Merge jump origins here ...
* flowanalysis.cs (FlowBranching.Label): ... rather than here.
Modified: trunk/mcs/gmcs/ChangeLog
===================================================================
--- trunk/mcs/gmcs/ChangeLog 2006-05-16 13:10:46 UTC (rev 60736)
+++ trunk/mcs/gmcs/ChangeLog 2006-05-16 13:18:22 UTC (rev 60737)
@@ -1,5 +1,8 @@
2006-05-16 Raja R Harinath <[EMAIL PROTECTED]>
+ * statement.cs (Goto.Resolve): Merge jump origins here ...
+ * flowanalysis.cs (FlowBranching.Label): ... rather than here.
+
* flowanalysis.cs (FlowBranching.LookupLabel): Move CS0159 check ...
(FlowBranchingToplevel.LookupLabel): ... here. Add CS1632 check.
(FlowBranchingGoto.LookupLabel): New. Handle back jumps.
Modified: trunk/mcs/gmcs/flowanalysis.cs
===================================================================
--- trunk/mcs/gmcs/flowanalysis.cs 2006-05-16 13:10:46 UTC (rev 60736)
+++ trunk/mcs/gmcs/flowanalysis.cs 2006-05-16 13:18:22 UTC (rev 60737)
@@ -623,8 +623,6 @@
return Parent.LookupLabel (name, loc);
}
- public abstract void Label (UsageVector origin_vectors);
-
protected abstract UsageVector Merge ();
// <summary>
@@ -744,17 +742,6 @@
return stmt;
}
- public override void Label (UsageVector origin_vectors)
- {
- if (!CurrentUsageVector.Reachability.IsUnreachable) {
- UsageVector vector = CurrentUsageVector.Clone
();
- vector.Next = origin_vectors;
- origin_vectors = vector;
- }
-
- CurrentUsageVector.MergeOrigins (origin_vectors);
- }
-
protected override UsageVector Merge ()
{
Report.Debug (2, " MERGING SIBLINGS", Name);
@@ -1039,11 +1026,6 @@
return base.LookupLabel (name, loc);
}
- public override void Label (UsageVector origin_vectors)
- {
- CurrentUsageVector.MergeOrigins (origin_vectors);
- }
-
protected override UsageVector Merge ()
{
Report.Debug (2, " MERGING TRY/CATCH", Name);
Modified: trunk/mcs/gmcs/statement.cs
===================================================================
--- trunk/mcs/gmcs/statement.cs 2006-05-16 13:10:46 UTC (rev 60736)
+++ trunk/mcs/gmcs/statement.cs 2006-05-16 13:18:22 UTC (rev 60737)
@@ -734,7 +734,7 @@
public override bool Resolve (EmitContext ec)
{
- ec.CurrentBranching.Label (vectors);
+ ec.CurrentBranching.CurrentUsageVector.MergeOrigins
(vectors);
// this flow-branching will be terminated when the
surrounding block ends
ec.StartFlowBranching (this);
Modified: trunk/mcs/mcs/ChangeLog
===================================================================
--- trunk/mcs/mcs/ChangeLog 2006-05-16 13:10:46 UTC (rev 60736)
+++ trunk/mcs/mcs/ChangeLog 2006-05-16 13:18:22 UTC (rev 60737)
@@ -1,5 +1,8 @@
2006-05-16 Raja R Harinath <[EMAIL PROTECTED]>
+ * statement.cs (Goto.Resolve): Merge jump origins here ...
+ * flowanalysis.cs (FlowBranching.Label): ... rather than here.
+
* flowanalysis.cs (FlowBranching.LookupLabel): Move CS0159 check ...
(FlowBranchingToplevel.LookupLabel): ... here. Add CS1632 check.
(FlowBranchingGoto.LookupLabel): New. Handle back jumps.
Modified: trunk/mcs/mcs/flowanalysis.cs
===================================================================
--- trunk/mcs/mcs/flowanalysis.cs 2006-05-16 13:10:46 UTC (rev 60736)
+++ trunk/mcs/mcs/flowanalysis.cs 2006-05-16 13:18:22 UTC (rev 60737)
@@ -623,8 +623,6 @@
return Parent.LookupLabel (name, loc);
}
- public abstract void Label (UsageVector origin_vectors);
-
protected abstract UsageVector Merge ();
// <summary>
@@ -744,17 +742,6 @@
return stmt;
}
- public override void Label (UsageVector origin_vectors)
- {
- if (!CurrentUsageVector.Reachability.IsUnreachable) {
- UsageVector vector = CurrentUsageVector.Clone
();
- vector.Next = origin_vectors;
- origin_vectors = vector;
- }
-
- CurrentUsageVector.MergeOrigins (origin_vectors);
- }
-
protected override UsageVector Merge ()
{
Report.Debug (2, " MERGING SIBLINGS", Name);
@@ -1039,11 +1026,6 @@
return base.LookupLabel (name, loc);
}
- public override void Label (UsageVector origin_vectors)
- {
- CurrentUsageVector.MergeOrigins (origin_vectors);
- }
-
protected override UsageVector Merge ()
{
Report.Debug (2, " MERGING TRY/CATCH", Name);
Modified: trunk/mcs/mcs/statement.cs
===================================================================
--- trunk/mcs/mcs/statement.cs 2006-05-16 13:10:46 UTC (rev 60736)
+++ trunk/mcs/mcs/statement.cs 2006-05-16 13:18:22 UTC (rev 60737)
@@ -734,7 +734,7 @@
public override bool Resolve (EmitContext ec)
{
- ec.CurrentBranching.Label (vectors);
+ ec.CurrentBranching.CurrentUsageVector.MergeOrigins
(vectors);
// this flow-branching will be terminated when the
surrounding block ends
ec.StartFlowBranching (this);
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches