Browse Source

fix bug in predecessors filling code

Quentin Carbonneaux 9 years ago
parent
commit
6b1b97c996
1 changed files with 2 additions and 2 deletions
  1. 2 2
      ssa.c

+ 2 - 2
ssa.c

@@ -108,13 +108,13 @@ fillpreds(Fn *f)
 	for (b=f->start; b; b=b->link) {
 	for (b=f->start; b; b=b->link) {
 		if (b->s1)
 		if (b->s1)
 			b->s1->npred++;
 			b->s1->npred++;
-		if (b->s2)
+		if (b->s2 && b->s2 != b->s1)
 			b->s2->npred++;
 			b->s2->npred++;
 	}
 	}
 	for (b=f->start; b; b=b->link) {
 	for (b=f->start; b; b=b->link) {
 		if (b->s1)
 		if (b->s1)
 			addpred(b, b->s1);
 			addpred(b, b->s1);
-		if (b->s2)
+		if (b->s2 && b->s2 != b->s1)
 			addpred(b, b->s2);
 			addpred(b, b->s2);
 	}
 	}
 }
 }