diff options
author | Quentin Carbonneaux <quentin.carbonneaux@yale.edu> | 2016-04-12 14:22:06 -0400 |
---|---|---|
committer | Quentin Carbonneaux <quentin.carbonneaux@yale.edu> | 2016-04-12 14:51:50 -0400 |
commit | eb3a5b4457b141f28346b1b284db28c4bde1a6a1 (patch) | |
tree | ec1d64ec5be0f9134e18da098e8ed84951b42ac4 | |
parent | 3bb4f8a647e8d8c631fe128a0fca2d2bcacff7c7 (diff) | |
download | roux-eb3a5b4457b141f28346b1b284db28c4bde1a6a1.tar.gz |
simplify latmerge()
-rw-r--r-- | fold.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/fold.c b/fold.c index 6d62841..c3cb48f 100644 --- a/fold.c +++ b/fold.c @@ -45,7 +45,7 @@ latval(Ref r) static int latmerge(int v, int m) { - return m == Top ? v : (v == Top || (v != Bot && m != Bot && v == m)) ? m : Bot; + return m == Top ? v : (v == Top || v == m) ? m : Bot; } static void @@ -122,8 +122,7 @@ visitjmp(Blk *b, int n, Fn *fn) switch (b->jmp.type) { case JJnz: l = latval(b->jmp.arg); - assert(l != Top); - if (l == Bot) { + if (l == Top || l == Bot) { edge[n][1].work = flowrk; edge[n][0].work = &edge[n][1]; flowrk = &edge[n][0]; |