aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/relooper/Relooper.cpp10
-rw-r--r--src/relooper/test.txt108
-rw-r--r--src/relooper/test2.txt12
-rw-r--r--src/relooper/test3.txt34
-rw-r--r--src/relooper/test4.txt24
-rw-r--r--src/relooper/test5.txt46
-rw-r--r--src/relooper/test6.txt12
-rw-r--r--src/relooper/test_debug.txt12
-rw-r--r--src/relooper/test_fuzz1.txt40
-rw-r--r--src/relooper/test_fuzz2.txt10
-rw-r--r--src/relooper/test_fuzz3.txt2
-rw-r--r--src/relooper/test_fuzz4.txt16
-rw-r--r--src/relooper/test_fuzz5.txt82
-rw-r--r--src/relooper/test_fuzz6.txt186
-rw-r--r--src/relooper/test_inf.txt698
-rw-r--r--tools/shared.py2
16 files changed, 648 insertions, 646 deletions
diff --git a/src/relooper/Relooper.cpp b/src/relooper/Relooper.cpp
index 7ceeb2f8..aa7e71a1 100644
--- a/src/relooper/Relooper.cpp
+++ b/src/relooper/Relooper.cpp
@@ -18,6 +18,8 @@ static void PrintDebug(const char *Format, ...);
#define DebugDump(x, ...)
#endif
+#define INDENTATION 1
+
struct Indenter {
static int CurrIndent;
@@ -34,8 +36,8 @@ static int OutputBufferSize = 0;
void PrintIndented(const char *Format, ...) {
assert(OutputBuffer);
- assert(OutputBuffer + Indenter::CurrIndent*2 - OutputBufferRoot < OutputBufferSize);
- for (int i = 0; i < Indenter::CurrIndent*2; i++, OutputBuffer++) *OutputBuffer = ' ';
+ assert(OutputBuffer + Indenter::CurrIndent*INDENTATION - OutputBufferRoot < OutputBufferSize);
+ for (int i = 0; i < Indenter::CurrIndent*INDENTATION; i++, OutputBuffer++) *OutputBuffer = ' ';
va_list Args;
va_start(Args, Format);
int left = OutputBufferSize - (OutputBuffer - OutputBufferRoot);
@@ -47,8 +49,8 @@ void PrintIndented(const char *Format, ...) {
void PutIndented(const char *String) {
assert(OutputBuffer);
- assert(OutputBuffer + Indenter::CurrIndent*2 - OutputBufferRoot < OutputBufferSize);
- for (int i = 0; i < Indenter::CurrIndent*2; i++, OutputBuffer++) *OutputBuffer = ' ';
+ assert(OutputBuffer + Indenter::CurrIndent*INDENTATION - OutputBufferRoot < OutputBufferSize);
+ for (int i = 0; i < Indenter::CurrIndent*INDENTATION; i++, OutputBuffer++) *OutputBuffer = ' ';
int left = OutputBufferSize - (OutputBuffer - OutputBufferRoot);
int needed = strlen(String)+1;
assert(needed < left);
diff --git a/src/relooper/test.txt b/src/relooper/test.txt
index b3535592..6c910846 100644
--- a/src/relooper/test.txt
+++ b/src/relooper/test.txt
@@ -6,11 +6,11 @@
// block A
if (check == 10) {
- atob();
- // block B
- btoc();
+ atob();
+ // block B
+ btoc();
} else {
- atoc();
+ atoc();
}
// block C
@@ -22,9 +22,9 @@ if (check == 10) {
// block A
if (check == 15) {
- // block B
+ // block B
} else {
- // block C
+ // block C
}
// block D
@@ -35,12 +35,12 @@ if (check == 15) {
while(1) {
- // block A
- var check = maybe();
- // block B
- if (!(check == 41)) {
- break;
- }
+ // block A
+ var check = maybe();
+ // block B
+ if (!(check == 41)) {
+ break;
+ }
}
// block C
@@ -51,25 +51,25 @@ while(1) {
// code 1
var $i_0 = 0;var $x_0 = 5;
while(1) {
- // code 2
- if (!($2)) {
- var $x_1 = $x_0;
- label = 18;
- break;
- }
- // code 3
- if ($6) {
- break;
- } else {
- var $i_0 = $7;var $x_0 = $5;
- }
+ // code 2
+ if (!($2)) {
+ var $x_1 = $x_0;
+ label = 18;
+ break;
+ }
+ // code 3
+ if ($6) {
+ break;
+ } else {
+ var $i_0 = $7;var $x_0 = $5;
+ }
}
if (label == 18) {
- // code 7
+ // code 7
}
// code 4
if ($10) {
- // code 5
+ // code 5
}
// code 6
var $x_1 = $13;
@@ -83,15 +83,15 @@ var $x_1 = $13;
// block A...................................................................................................
if (chak()) {
- atob();
- // block B...................................................................................................
- btod();
- // block D
+ atob();
+ // block B...................................................................................................
+ btod();
+ // block D
} else {
- atoc();
- // block C...................................................................................................
- ctod2();
- // block D
+ atoc();
+ // block C...................................................................................................
+ ctod2();
+ // block D
}
@@ -102,11 +102,11 @@ if (chak()) {
// block A
if (!(check == 10)) {
- return C;
+ return C;
}
while(1) {
- // block B
- // block D
+ // block B
+ // block D
}
@@ -117,23 +117,23 @@ while(1) {
// block A
do {
- if (expensive()) {
- label = 33;
- } else {
- // block B
- if (expensive2()) {
- label = 33;
- break;
- }
- // block D
+ if (expensive()) {
+ label = 33;
+ } else {
+ // block B
+ if (expensive2()) {
+ label = 33;
+ break;
}
+ // block D
+ }
} while(0);
if (label == 33) {
- // block C;
+ // block C;
}
while(1) {
- // block E
- // block F
+ // block E
+ // block F
}
@@ -144,12 +144,12 @@ while(1) {
// block A
if (shouldLoop()) {
- while(1) {
- // block B
- if (!(moarLoop())) {
- break;
- }
+ while(1) {
+ // block B
+ if (!(moarLoop())) {
+ break;
}
+ }
}
// block C
diff --git a/src/relooper/test2.txt b/src/relooper/test2.txt
index c77ce491..2f3e5ca1 100644
--- a/src/relooper/test2.txt
+++ b/src/relooper/test2.txt
@@ -1,12 +1,12 @@
ep
do {
- if (ep -> LBB1) {
- LBB1
- if (!(LBB1 -> LBB2)) {
- break;
- }
- LBB2
+ if (ep -> LBB1) {
+ LBB1
+ if (!(LBB1 -> LBB2)) {
+ break;
}
+ LBB2
+ }
} while(0);
LBB3
diff --git a/src/relooper/test3.txt b/src/relooper/test3.txt
index 6049ee48..51199f72 100644
--- a/src/relooper/test3.txt
+++ b/src/relooper/test3.txt
@@ -1,27 +1,27 @@
ep
do {
- if (ep -> LBB1) {
- LBB1
- if (!(LBB1 -> LBB2)) {
- break;
- }
- LBB2
+ if (ep -> LBB1) {
+ LBB1
+ if (!(LBB1 -> LBB2)) {
+ break;
}
+ LBB2
+ }
} while(0);
LBB3
do {
- if (LBB3 -> LBB4) {
- LBB4
- if (!(LBB4 -> LBB5)) {
- break;
- }
- while(1) {
- LBB5
- if (LBB5 -> LBB6) {
- break;
- }
- }
+ if (LBB3 -> LBB4) {
+ LBB4
+ if (!(LBB4 -> LBB5)) {
+ break;
}
+ while(1) {
+ LBB5
+ if (LBB5 -> LBB6) {
+ break;
+ }
+ }
+ }
} while(0);
LBB6
diff --git a/src/relooper/test4.txt b/src/relooper/test4.txt
index 3427ff18..ab7051c1 100644
--- a/src/relooper/test4.txt
+++ b/src/relooper/test4.txt
@@ -1,23 +1,23 @@
//19
do {
- if ( 1 ) {
- //20
- if (!( 1 )) {
- label = 4;
- break;
- }
- //21
- } else {
- label = 4;
+ if ( 1 ) {
+ //20
+ if (!( 1 )) {
+ label = 4;
+ break;
}
+ //21
+ } else {
+ label = 4;
+ }
} while(0);
if (label == 4) {
- //22
+ //22
}
//23
if ( 1 ) {
- //24
+ //24
} else {
- //28
+ //28
}
diff --git a/src/relooper/test5.txt b/src/relooper/test5.txt
index ad769ae7..83755289 100644
--- a/src/relooper/test5.txt
+++ b/src/relooper/test5.txt
@@ -1,32 +1,32 @@
//0
if (check(0)) {
- while(1) {
- //1
- if (!(check(1))) {
- break;
- }
+ while(1) {
+ //1
+ if (!(check(1))) {
+ break;
}
- while(1) {
- //2
- if (!(check(2))) {
- break;
- }
+ }
+ while(1) {
+ //2
+ if (!(check(2))) {
+ break;
}
- //3
+ }
+ //3
} else {
- goingFrom0to4();
- while(1) {
- //4
- if (!(check(4))) {
- break;
- }
+ goingFrom0to4();
+ while(1) {
+ //4
+ if (!(check(4))) {
+ break;
}
- while(1) {
- //5
- if (check(5)) {
- break;
- }
+ }
+ while(1) {
+ //5
+ if (check(5)) {
+ break;
}
- //3
+ }
+ //3
}
diff --git a/src/relooper/test6.txt b/src/relooper/test6.txt
index c5effd08..4f29f292 100644
--- a/src/relooper/test6.txt
+++ b/src/relooper/test6.txt
@@ -1,12 +1,12 @@
//0
do {
- if (check(0)) {
- //1
- if (!(check(1))) {
- break;
- }
- //2
+ if (check(0)) {
+ //1
+ if (!(check(1))) {
+ break;
}
+ //2
+ }
} while(0);
//3
diff --git a/src/relooper/test_debug.txt b/src/relooper/test_debug.txt
index d18ed875..4a42e642 100644
--- a/src/relooper/test_debug.txt
+++ b/src/relooper/test_debug.txt
@@ -116,13 +116,13 @@ int main() {
// Fusing Multiple to Simple
ep
do {
- if (ep -> LBB1) {
- LBB1
- if (!(LBB1 -> LBB2)) {
- break;
- }
- LBB2
+ if (ep -> LBB1) {
+ LBB1
+ if (!(LBB1 -> LBB2)) {
+ break;
}
+ LBB2
+ }
} while(0);
LBB3
diff --git a/src/relooper/test_fuzz1.txt b/src/relooper/test_fuzz1.txt
index b278e240..becbc0d2 100644
--- a/src/relooper/test_fuzz1.txt
+++ b/src/relooper/test_fuzz1.txt
@@ -4,29 +4,29 @@ print('entry'); var label; var state; var decisions = [4, 1, 7, 2, 6, 6, 8]; var
print(5); state = check();
print(6); state = check();
if (state == 7) {
- print(7); state = check();
- label = 3;
+ print(7); state = check();
+ label = 3;
}
L5: while(1) {
- if (label == 3) {
- label = 0;
- print(2); state = check();
+ if (label == 3) {
+ label = 0;
+ print(2); state = check();
+ }
+ print(1); state = check();
+ while(1) {
+ print(3); state = check();
+ if (!(state == 8)) {
+ continue L5;
}
- print(1); state = check();
- while(1) {
- print(3); state = check();
- if (!(state == 8)) {
- continue L5;
- }
- print(8); state = check();
- if (!(state == 4)) {
- label = 3;
- continue L5;
- }
- print(4); state = check();
- if (!(state == 3)) {
- continue L5;
- }
+ print(8); state = check();
+ if (!(state == 4)) {
+ label = 3;
+ continue L5;
}
+ print(4); state = check();
+ if (!(state == 3)) {
+ continue L5;
+ }
+ }
}
diff --git a/src/relooper/test_fuzz2.txt b/src/relooper/test_fuzz2.txt
index 572e819d..02b2c83b 100644
--- a/src/relooper/test_fuzz2.txt
+++ b/src/relooper/test_fuzz2.txt
@@ -2,12 +2,12 @@
print('entry'); var label; var state; var decisions = [4, 1, 4, 3, 4, 1, 2, 5, 1, 3, 5, 5, 1, 5, 2, 4, 4, 3]; var index = 0; function check() { if (index == decisions.length) throw 'HALT'; return decisions[index++] }
if (state == 1) {
- while(1) {
- print(1); state = check();
- }
+ while(1) {
+ print(1); state = check();
+ }
}
while(1) {
- print(3); state = check();
- print(2); state = check();
+ print(3); state = check();
+ print(2); state = check();
}
diff --git a/src/relooper/test_fuzz3.txt b/src/relooper/test_fuzz3.txt
index aeeccf87..b4b1831d 100644
--- a/src/relooper/test_fuzz3.txt
+++ b/src/relooper/test_fuzz3.txt
@@ -4,6 +4,6 @@ print('entry'); var label; var state; var decisions = [3, 3, 4, 1, 2, 1, 2, 4, 4
print(1); state = check();
print(3); state = check();
while(1) {
- print(4); state = check();
+ print(4); state = check();
}
diff --git a/src/relooper/test_fuzz4.txt b/src/relooper/test_fuzz4.txt
index 05a70582..766ebdb6 100644
--- a/src/relooper/test_fuzz4.txt
+++ b/src/relooper/test_fuzz4.txt
@@ -2,18 +2,18 @@
print('entry'); var label; var state; var decisions = [2, 2, 1, 3, 2, 2, 1, 3, 2, 3, 3, 1, 3, 2, 1]; var index = 0; function check() { if (index == decisions.length) throw 'HALT'; return decisions[index++] }
if (state == 2) {
- while(1) {
- print(2); state = check();
- }
+ while(1) {
+ print(2); state = check();
+ }
}
while(1) {
- print(4); state = check();
- if (!(state == 4)) {
- break;
- }
+ print(4); state = check();
+ if (!(state == 4)) {
+ break;
+ }
}
print(3); state = check();
while(1) {
- print(1); state = check();
+ print(1); state = check();
}
diff --git a/src/relooper/test_fuzz5.txt b/src/relooper/test_fuzz5.txt
index 29b2dba4..0f76d1ed 100644
--- a/src/relooper/test_fuzz5.txt
+++ b/src/relooper/test_fuzz5.txt
@@ -2,51 +2,51 @@
print('entry'); var label; var state; var decisions = [133, 98, 134, 143, 162, 187, 130, 87, 91, 49, 102, 47, 9, 132, 179, 176, 157, 25, 64, 161, 57, 107, 16, 167, 185, 45, 191, 180, 23, 131]; var index = 0; function check() { if (index == decisions.length) throw 'HALT'; return decisions[index++] }
L1: while(1) {
- print(7); state = check();
- if (state % 3 == 1) {
- label = 3;
- } else if (state % 3 == 0) {
- print(8); state = check();
- if (state % 2 == 0) {
- label = 5;
- } else {
- label = 7;
- }
+ print(7); state = check();
+ if (state % 3 == 1) {
+ label = 3;
+ } else if (state % 3 == 0) {
+ print(8); state = check();
+ if (state % 2 == 0) {
+ label = 5;
} else {
- break;
+ label = 7;
}
- while(1) {
- if (label == 3) {
- label = 0;
- print(2); state = check();
- print(1); state = check();
- if (state % 2 == 0) {
- label = 5;
- continue;
- } else {
- label = 7;
- continue;
- }
- }
- else if (label == 5) {
- label = 0;
- print(4); state = check();
- label = 3;
- continue;
- }
- else if (label == 7) {
- label = 0;
- print(6); state = check();
- if (state % 2 == 0) {
- continue L1;
- } else {
- label = 7;
- continue;
- }
- }
+ } else {
+ break;
+ }
+ while(1) {
+ if (label == 3) {
+ label = 0;
+ print(2); state = check();
+ print(1); state = check();
+ if (state % 2 == 0) {
+ label = 5;
+ continue;
+ } else {
+ label = 7;
+ continue;
+ }
}
+ else if (label == 5) {
+ label = 0;
+ print(4); state = check();
+ label = 3;
+ continue;
+ }
+ else if (label == 7) {
+ label = 0;
+ print(6); state = check();
+ if (state % 2 == 0) {
+ continue L1;
+ } else {
+ label = 7;
+ continue;
+ }
+ }
+ }
}
while(1) {
- print(3); state = check();
+ print(3); state = check();
}
diff --git a/src/relooper/test_fuzz6.txt b/src/relooper/test_fuzz6.txt
index d5a5ab7b..cd93958c 100644
--- a/src/relooper/test_fuzz6.txt
+++ b/src/relooper/test_fuzz6.txt
@@ -2,107 +2,107 @@
print('entry'); var label; var state; var decisions = [759, 1223, 618, 1805, 277, 512, 204, 1545, 606, 734, 585, 447, 1670, 1031, 665, 1728, 353, 634, 1033, 13, 658, 589, 474, 854, 405, 1111, 1640, 697, 1156, 1357, 317, 618, 990, 1401, 405, 564, 497, 829, 653, 1194, 25, 322, 1178, 198, 1565, 1419, 1608, 486, 368, 606, 813, 22, 148, 141, 261, 375, 472, 964, 1106, 694, 205, 771, 44, 675, 545, 1027, 1528, 240, 1289, 564, 792, 744, 366, 668, 823, 210, 428, 1009, 1662, 1317, 1183, 681, 14, 1334, 712, 506, 224, 695, 401, 1035, 384, 486, 1519, 122, 1186, 1487, 1819, 1702, 463, 1706, 660, 1642, 847, 991, 976, 940, 867, 46, 23, 1449, 56, 1711, 634, 404, 1558, 168, 710, 1581, 1302, 870, 997, 1295, 1739, 769, 1005, 291, 1638, 1771, 842, 659, 1695, 713, 935, 802, 1173, 1572, 850, 607, 996, 55, 1576, 321, 1815, 662, 1044, 1612, 1680, 1050, 844, 553, 278, 1447, 1662, 1094, 1797, 774, 1013, 1204, 907, 340, 1172, 1460, 869, 1264, 111, 1176, 484, 845, 258, 417, 1246, 1017, 745, 189, 333, 1658, 1395, 1764, 1786, 165, 404, 847, 1429, 1574, 403, 718, 1118, 1756, 94, 56, 1498, 1696, 1355, 840, 50, 82, 371, 1087, 875, 1337, 267, 958, 1209, 1167, 1025, 1684, 184, 962, 1496, 201, 127, 372, 1, 1005, 402, 1387, 213, 1143, 1271, 167, 10, 12, 1060, 1390, 1366, 893, 747, 1005, 481, 876, 227, 514, 589, 250, 273, 1188, 1052, 719, 219, 1006, 38, 120, 1454, 489, 672, 149, 534, 1081, 1721, 586, 330, 25, 356, 1743, 1607, 336, 981, 419, 1036, 1293, 1026, 1300, 1453, 792, 22, 45, 420, 409, 1027, 1437, 1421, 795, 136, 1276, 1610, 1593]; var index = 0; function check() { if (index == decisions.length) throw 'HALT'; return decisions[index++] }
while(1) {
- print(30); state = check();// .................................................................................................................................................................................................................
- if (state % 3 == 1) {
- label = 67;
- break;
- } else if (!(state % 3 == 0)) {
- break;
- }
- print(58); state = check();// ......................................................................................
+ print(30); state = check();// .................................................................................................................................................................................................................
+ if (state % 3 == 1) {
+ label = 67;
+ break;
+ } else if (!(state % 3 == 0)) {
+ break;
+ }
+ print(58); state = check();// ......................................................................................
}
if (label == 67) {
- print(66); state = check();// ...............................................................................................................
+ print(66); state = check();// ...............................................................................................................
}
print(6); state = check();// .........
while(1) {
- print(88); state = check();// ....................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
- print(70); state = check();// ..........................................................................................................................
- L10: while(1) {
- print(47); state = check();// ....................................................................................................................................
- print(28); state = check();// ..............................................................................................................
- while(1) {
- print(75); state = check();// .............................................
- print(7); state = check();// .............................................................................................................................................................................................
- if (!(state % 2 == 0)) {
- break;
- }
+ print(88); state = check();// ....................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
+ print(70); state = check();// ..........................................................................................................................
+ L10: while(1) {
+ print(47); state = check();// ....................................................................................................................................
+ print(28); state = check();// ..............................................................................................................
+ while(1) {
+ print(75); state = check();// .............................................
+ print(7); state = check();// .............................................................................................................................................................................................
+ if (!(state % 2 == 0)) {
+ break;
+ }
+ }
+ print(89); state = check();// ......................................................................................................................................................................................................................................................................................................................................................
+ print(68); state = check();// ......................................................................................................................................................................................................................................................................................................................
+ L18: while(1) {
+ print(51); state = check();// .............................................................................................
+ L20: while(1) {
+ print(36); state = check();// .........................
+ if (state % 2 == 0) {
+ break;
}
- print(89); state = check();// ......................................................................................................................................................................................................................................................................................................................................................
- print(68); state = check();// ......................................................................................................................................................................................................................................................................................................................
- L18: while(1) {
- print(51); state = check();// .............................................................................................
- L20: while(1) {
- print(36); state = check();// .........................
- if (state % 2 == 0) {
- break;
- }
- print(16); state = check();// ................................................................................................................................................................................................................................................................................................................................................................
- print(57); state = check();// ...........................................................................................................................................................................................................................................................................................................................
- print(39); state = check();// ................
- if (state % 3 == 1) {
- label = 74;
- } else if (!(state % 3 == 0)) {
- label = 32;
- break;
- }
- while(1) {
- if (label == 74) {
- label = 0;
- print(73); state = check();// .
- if (state % 3 == 1) {
- label = 32;
- break L20;
- } else if (state % 3 == 0) {
- break;
- }
- print(43); state = check();// .........
- print(32); state = check();// ......................................................................................................
- print(83); state = check();// ........................................................................................
- print(77); state = check();// ...........................................................................................................................................................................................................................................................................................
- print(76); state = check();// ..............................................................................................................................................................................................................................................................................................................................................................................................................................
- print(22); state = check();// .........................................................................................................
- }
- print(72); state = check();// ..........................................................................................................
- if (state % 2 == 0) {
- label = 92;
- break L20;
- }
- print(80); state = check();// ....................................
- if (state % 2 == 0) {
- continue L18;
- }
- print(50); state = check();// ........................................
- print(29); state = check();// ...............
- print(8); state = check();// ....................................................................................................................................................................................................................................................
- if (state % 2 == 0) {
- continue L10;
- }
- print(19); state = check();// ......................................................................................................................................................................................................................
- print(56); state = check();// ....................................................................................................................................................................................................................
- print(34); state = check();// ..........................................................................................................................................
- label = 74;
- }
- print(62); state = check();// .......................................................................................
- }
- if (label == 32) {
- label = 0;
- print(31); state = check();// ..........................................................................................................................................................................................................
- }
- else if (label == 92) {
- label = 0;
- print(91); state = check();// ..............................................
- print(33); state = check();// ....
- }
- print(60); state = check();// ......................................................................................................................................................................................................................................
- print(10); state = check();// ...................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
- print(52); state = check();// ..............................................................................
- if (state % 2 == 0) {
- break L10;
+ print(16); state = check();// ................................................................................................................................................................................................................................................................................................................................................................
+ print(57); state = check();// ...........................................................................................................................................................................................................................................................................................................................
+ print(39); state = check();// ................
+ if (state % 3 == 1) {
+ label = 74;
+ } else if (!(state % 3 == 0)) {
+ label = 32;
+ break;
+ }
+ while(1) {
+ if (label == 74) {
+ label = 0;
+ print(73); state = check();// .
+ if (state % 3 == 1) {
+ label = 32;
+ break L20;
+ } else if (state % 3 == 0) {
+ break;
}
- print(2); state = check();// .........
+ print(43); state = check();// .........
+ print(32); state = check();// ......................................................................................................
+ print(83); state = check();// ........................................................................................
+ print(77); state = check();// ...........................................................................................................................................................................................................................................................................................
+ print(76); state = check();// ..............................................................................................................................................................................................................................................................................................................................................................................................................................
+ print(22); state = check();// .........................................................................................................
+ }
+ print(72); state = check();// ..........................................................................................................
+ if (state % 2 == 0) {
+ label = 92;
+ break L20;
+ }
+ print(80); state = check();// ....................................
+ if (state % 2 == 0) {
+ continue L18;
+ }
+ print(50); state = check();// ........................................
+ print(29); state = check();// ...............
+ print(8); state = check();// ....................................................................................................................................................................................................................................................
+ if (state % 2 == 0) {
+ continue L10;
+ }
+ print(19); state = check();// ......................................................................................................................................................................................................................
+ print(56); state = check();// ....................................................................................................................................................................................................................
+ print(34); state = check();// ..........................................................................................................................................
+ label = 74;
}
+ print(62); state = check();// .......................................................................................
+ }
+ if (label == 32) {
+ label = 0;
+ print(31); state = check();// ..........................................................................................................................................................................................................
+ }
+ else if (label == 92) {
+ label = 0;
+ print(91); state = check();// ..............................................
+ print(33); state = check();// ....
+ }
+ print(60); state = check();// ......................................................................................................................................................................................................................................
+ print(10); state = check();// ...................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
+ print(52); state = check();// ..............................................................................
+ if (state % 2 == 0) {
+ break L10;
+ }
+ print(2); state = check();// .........
}
- print(61); state = check();// .........................................................................................................................................................
+ }
+ print(61); state = check();// .........................................................................................................................................................
}
diff --git a/src/relooper/test_inf.txt b/src/relooper/test_inf.txt
index 1dff59bb..bc2fad3e 100644
--- a/src/relooper/test_inf.txt
+++ b/src/relooper/test_inf.txt
@@ -1,385 +1,385 @@
code 0
if (uint(i4) >= uint(i5)) {
- code 2
+ code 2
} else {
- code 1
+ code 1
}
code 3
if (!(i2 == 0)) {
- code 4
- while(1) {
- code 5
- if (uint(i6) >= uint(i7)) {
- code 7
- } else {
- code 6
- }
- code 8
- if (uint(i6) >= uint(i7)) {
- code 10
- } else {
- code 9
- }
- code 11
- if (uint(i5) >= uint(i6)) {
- code 13
- } else {
- code 12
- }
- code 14
- if (!(i2 != 0)) {
- break;
- }
+ code 4
+ while(1) {
+ code 5
+ if (uint(i6) >= uint(i7)) {
+ code 7
+ } else {