@@ -20,12 +20,21 @@ astGuards
20
20
| test.c:109:9:109:14 | ... == ... |
21
21
| test.c:109:9:109:23 | ... \|\| ... |
22
22
| test.c:109:19:109:23 | ... < ... |
23
+ | test.c:126:7:126:7 | 1 |
24
+ | test.c:126:7:126:28 | ... && ... |
25
+ | test.c:126:12:126:26 | call to test3_condition |
26
+ | test.c:131:7:131:7 | b |
27
+ | test.c:137:7:137:7 | 0 |
23
28
| test.c:146:7:146:8 | ! ... |
29
+ | test.c:152:10:152:10 | x |
30
+ | test.c:152:10:152:15 | ... && ... |
31
+ | test.c:152:15:152:15 | y |
24
32
| test.c:156:9:156:19 | ... == ... |
25
33
| test.c:159:9:159:19 | ... == ... |
26
34
| test.c:162:9:162:18 | ... < ... |
27
35
| test.c:165:9:165:18 | ... < ... |
28
36
| test.c:175:13:175:32 | ... == ... |
37
+ | test.c:181:9:181:9 | x |
29
38
| test.cpp:18:8:18:10 | call to get |
30
39
| test.cpp:31:7:31:13 | ... == ... |
31
40
| test.cpp:42:13:42:20 | call to getABool |
@@ -232,12 +241,44 @@ astGuardsCompare
232
241
| 109 | y < 0+0 when ... < ... is true |
233
242
| 109 | y >= 0+0 when ... < ... is false |
234
243
| 109 | y >= 0+0 when ... \|\| ... is false |
244
+ | 126 | 1 != 0 when 1 is true |
245
+ | 126 | 1 != 0 when ... && ... is true |
246
+ | 126 | 1 != 1 when 1 is false |
247
+ | 126 | 1 == 0 when 1 is false |
248
+ | 126 | 1 == 1 when 1 is true |
249
+ | 126 | 1 == 1 when ... && ... is true |
250
+ | 126 | call to test3_condition != 0 when ... && ... is true |
251
+ | 126 | call to test3_condition != 0 when call to test3_condition is true |
252
+ | 126 | call to test3_condition != 1 when call to test3_condition is false |
253
+ | 126 | call to test3_condition == 0 when call to test3_condition is false |
254
+ | 126 | call to test3_condition == 1 when ... && ... is true |
255
+ | 126 | call to test3_condition == 1 when call to test3_condition is true |
256
+ | 131 | b != 0 when b is true |
257
+ | 131 | b != 1 when b is false |
258
+ | 131 | b == 0 when b is false |
259
+ | 131 | b == 1 when b is true |
260
+ | 137 | 0 != 0 when 0 is true |
261
+ | 137 | 0 != 1 when 0 is false |
262
+ | 137 | 0 == 0 when 0 is false |
263
+ | 137 | 0 == 1 when 0 is true |
235
264
| 146 | ! ... != 0 when ! ... is true |
236
265
| 146 | ! ... != 1 when ! ... is false |
237
266
| 146 | ! ... == 0 when ! ... is false |
238
267
| 146 | ! ... == 1 when ! ... is true |
239
268
| 146 | x != 0 when ! ... is false |
240
269
| 146 | x == 0 when ! ... is true |
270
+ | 152 | x != 0 when ... && ... is true |
271
+ | 152 | x != 0 when x is true |
272
+ | 152 | x != 1 when x is false |
273
+ | 152 | x == 0 when x is false |
274
+ | 152 | x == 1 when ... && ... is true |
275
+ | 152 | x == 1 when x is true |
276
+ | 152 | y != 0 when ... && ... is true |
277
+ | 152 | y != 0 when y is true |
278
+ | 152 | y != 1 when y is false |
279
+ | 152 | y == 0 when y is false |
280
+ | 152 | y == 1 when ... && ... is true |
281
+ | 152 | y == 1 when y is true |
241
282
| 156 | ... + ... != x+0 when ... == ... is false |
242
283
| 156 | ... + ... == x+0 when ... == ... is true |
243
284
| 156 | ... == ... != 0 when ... == ... is true |
@@ -296,6 +337,10 @@ astGuardsCompare
296
337
| 175 | call to foo != 0+0 when ... == ... is false |
297
338
| 175 | call to foo == 0 when ... == ... is true |
298
339
| 175 | call to foo == 0+0 when ... == ... is true |
340
+ | 181 | x != 0 when x is true |
341
+ | 181 | x != 1 when x is false |
342
+ | 181 | x == 0 when x is false |
343
+ | 181 | x == 1 when x is true |
299
344
astGuardsControl
300
345
| test.c:7:9:7:13 | ... > ... | false | 10 | 11 |
301
346
| test.c:7:9:7:13 | ... > ... | true | 7 | 9 |
@@ -367,13 +412,29 @@ astGuardsControl
367
412
| test.c:109:9:109:14 | ... == ... | false | 113 | 113 |
368
413
| test.c:109:9:109:23 | ... \|\| ... | false | 113 | 113 |
369
414
| test.c:109:19:109:23 | ... < ... | false | 113 | 113 |
415
+ | test.c:126:7:126:7 | 1 | true | 126 | 126 |
416
+ | test.c:126:7:126:7 | 1 | true | 126 | 128 |
417
+ | test.c:126:7:126:7 | 1 | true | 131 | 131 |
418
+ | test.c:126:7:126:7 | 1 | true | 131 | 132 |
419
+ | test.c:126:7:126:7 | 1 | true | 134 | 123 |
420
+ | test.c:126:7:126:28 | ... && ... | true | 126 | 128 |
421
+ | test.c:126:12:126:26 | call to test3_condition | true | 126 | 128 |
422
+ | test.c:131:7:131:7 | b | true | 131 | 132 |
423
+ | test.c:137:7:137:7 | 0 | false | 142 | 136 |
370
424
| test.c:146:7:146:8 | ! ... | true | 146 | 147 |
425
+ | test.c:152:10:152:10 | x | true | 151 | 152 |
426
+ | test.c:152:10:152:10 | x | true | 152 | 152 |
427
+ | test.c:152:10:152:15 | ... && ... | true | 151 | 152 |
428
+ | test.c:152:15:152:15 | y | true | 151 | 152 |
371
429
| test.c:156:9:156:19 | ... == ... | true | 156 | 157 |
372
430
| test.c:159:9:159:19 | ... == ... | true | 159 | 160 |
373
431
| test.c:162:9:162:18 | ... < ... | true | 162 | 163 |
374
432
| test.c:165:9:165:18 | ... < ... | true | 165 | 166 |
375
433
| test.c:175:13:175:32 | ... == ... | false | 175 | 175 |
376
434
| test.c:175:13:175:32 | ... == ... | true | 175 | 175 |
435
+ | test.c:181:9:181:9 | x | false | 183 | 184 |
436
+ | test.c:181:9:181:9 | x | true | 181 | 182 |
437
+ | test.c:181:9:181:9 | x | true | 186 | 180 |
377
438
| test.cpp:18:8:18:10 | call to get | true | 19 | 19 |
378
439
| test.cpp:31:7:31:13 | ... == ... | false | 30 | 30 |
379
440
| test.cpp:31:7:31:13 | ... == ... | false | 34 | 34 |
@@ -753,9 +814,39 @@ astGuardsEnsure_const
753
814
| test.c:109:9:109:23 | ... \|\| ... | test.c:109:19:109:23 | ... < ... | == | 0 | 113 | 113 |
754
815
| test.c:109:19:109:23 | ... < ... | test.c:109:19:109:23 | ... < ... | != | 1 | 113 | 113 |
755
816
| test.c:109:19:109:23 | ... < ... | test.c:109:19:109:23 | ... < ... | == | 0 | 113 | 113 |
817
+ | test.c:126:7:126:7 | 1 | test.c:126:7:126:7 | 1 | != | 0 | 126 | 126 |
818
+ | test.c:126:7:126:7 | 1 | test.c:126:7:126:7 | 1 | != | 0 | 126 | 128 |
819
+ | test.c:126:7:126:7 | 1 | test.c:126:7:126:7 | 1 | != | 0 | 131 | 131 |
820
+ | test.c:126:7:126:7 | 1 | test.c:126:7:126:7 | 1 | != | 0 | 131 | 132 |
821
+ | test.c:126:7:126:7 | 1 | test.c:126:7:126:7 | 1 | != | 0 | 134 | 123 |
822
+ | test.c:126:7:126:7 | 1 | test.c:126:7:126:7 | 1 | == | 1 | 126 | 126 |
823
+ | test.c:126:7:126:7 | 1 | test.c:126:7:126:7 | 1 | == | 1 | 126 | 128 |
824
+ | test.c:126:7:126:7 | 1 | test.c:126:7:126:7 | 1 | == | 1 | 131 | 131 |
825
+ | test.c:126:7:126:7 | 1 | test.c:126:7:126:7 | 1 | == | 1 | 131 | 132 |
826
+ | test.c:126:7:126:7 | 1 | test.c:126:7:126:7 | 1 | == | 1 | 134 | 123 |
827
+ | test.c:126:7:126:28 | ... && ... | test.c:126:7:126:7 | 1 | != | 0 | 126 | 128 |
828
+ | test.c:126:7:126:28 | ... && ... | test.c:126:7:126:7 | 1 | == | 1 | 126 | 128 |
829
+ | test.c:126:7:126:28 | ... && ... | test.c:126:12:126:26 | call to test3_condition | != | 0 | 126 | 128 |
830
+ | test.c:126:7:126:28 | ... && ... | test.c:126:12:126:26 | call to test3_condition | == | 1 | 126 | 128 |
831
+ | test.c:126:12:126:26 | call to test3_condition | test.c:126:12:126:26 | call to test3_condition | != | 0 | 126 | 128 |
832
+ | test.c:126:12:126:26 | call to test3_condition | test.c:126:12:126:26 | call to test3_condition | == | 1 | 126 | 128 |
833
+ | test.c:131:7:131:7 | b | test.c:131:7:131:7 | b | != | 0 | 131 | 132 |
834
+ | test.c:131:7:131:7 | b | test.c:131:7:131:7 | b | == | 1 | 131 | 132 |
835
+ | test.c:137:7:137:7 | 0 | test.c:137:7:137:7 | 0 | != | 1 | 142 | 136 |
836
+ | test.c:137:7:137:7 | 0 | test.c:137:7:137:7 | 0 | == | 0 | 142 | 136 |
756
837
| test.c:146:7:146:8 | ! ... | test.c:146:7:146:8 | ! ... | != | 0 | 146 | 147 |
757
838
| test.c:146:7:146:8 | ! ... | test.c:146:7:146:8 | ! ... | == | 1 | 146 | 147 |
758
839
| test.c:146:7:146:8 | ! ... | test.c:146:8:146:8 | x | == | 0 | 146 | 147 |
840
+ | test.c:152:10:152:10 | x | test.c:152:10:152:10 | x | != | 0 | 151 | 152 |
841
+ | test.c:152:10:152:10 | x | test.c:152:10:152:10 | x | != | 0 | 152 | 152 |
842
+ | test.c:152:10:152:10 | x | test.c:152:10:152:10 | x | == | 1 | 151 | 152 |
843
+ | test.c:152:10:152:10 | x | test.c:152:10:152:10 | x | == | 1 | 152 | 152 |
844
+ | test.c:152:10:152:15 | ... && ... | test.c:152:10:152:10 | x | != | 0 | 151 | 152 |
845
+ | test.c:152:10:152:15 | ... && ... | test.c:152:10:152:10 | x | == | 1 | 151 | 152 |
846
+ | test.c:152:10:152:15 | ... && ... | test.c:152:15:152:15 | y | != | 0 | 151 | 152 |
847
+ | test.c:152:10:152:15 | ... && ... | test.c:152:15:152:15 | y | == | 1 | 151 | 152 |
848
+ | test.c:152:15:152:15 | y | test.c:152:15:152:15 | y | != | 0 | 151 | 152 |
849
+ | test.c:152:15:152:15 | y | test.c:152:15:152:15 | y | == | 1 | 151 | 152 |
759
850
| test.c:156:9:156:19 | ... == ... | test.c:156:9:156:19 | ... == ... | != | 0 | 156 | 157 |
760
851
| test.c:156:9:156:19 | ... == ... | test.c:156:9:156:19 | ... == ... | == | 1 | 156 | 157 |
761
852
| test.c:159:9:159:19 | ... == ... | test.c:159:9:159:19 | ... == ... | != | 0 | 159 | 160 |
@@ -770,6 +861,12 @@ astGuardsEnsure_const
770
861
| test.c:175:13:175:32 | ... == ... | test.c:175:13:175:32 | ... == ... | != | 1 | 175 | 175 |
771
862
| test.c:175:13:175:32 | ... == ... | test.c:175:13:175:32 | ... == ... | == | 0 | 175 | 175 |
772
863
| test.c:175:13:175:32 | ... == ... | test.c:175:13:175:32 | ... == ... | == | 1 | 175 | 175 |
864
+ | test.c:181:9:181:9 | x | test.c:181:9:181:9 | x | != | 0 | 181 | 182 |
865
+ | test.c:181:9:181:9 | x | test.c:181:9:181:9 | x | != | 0 | 186 | 180 |
866
+ | test.c:181:9:181:9 | x | test.c:181:9:181:9 | x | != | 1 | 183 | 184 |
867
+ | test.c:181:9:181:9 | x | test.c:181:9:181:9 | x | == | 0 | 183 | 184 |
868
+ | test.c:181:9:181:9 | x | test.c:181:9:181:9 | x | == | 1 | 181 | 182 |
869
+ | test.c:181:9:181:9 | x | test.c:181:9:181:9 | x | == | 1 | 186 | 180 |
773
870
| test.cpp:18:8:18:10 | call to get | test.cpp:18:8:18:10 | call to get | != | 0 | 19 | 19 |
774
871
| test.cpp:18:8:18:10 | call to get | test.cpp:18:8:18:10 | call to get | == | 1 | 19 | 19 |
775
872
| test.cpp:31:7:31:13 | ... == ... | test.cpp:31:7:31:7 | x | != | -1 | 30 | 30 |
@@ -1012,23 +1109,35 @@ irGuardsCompare
1012
1109
| 109 | y >= 0 when CompareLT: ... < ... is false |
1013
1110
| 109 | y >= 0+0 when CompareLT: ... < ... is false |
1014
1111
| 126 | 1 != 0 when CompareNE: 1 is true |
1112
+ | 126 | 1 != 1 when CompareNE: 1 is false |
1015
1113
| 126 | 1 == 0 when CompareNE: 1 is false |
1114
+ | 126 | 1 == 1 when CompareNE: 1 is true |
1016
1115
| 126 | call to test3_condition != 0 when CompareNE: call to test3_condition is true |
1116
+ | 126 | call to test3_condition != 1 when CompareNE: call to test3_condition is false |
1017
1117
| 126 | call to test3_condition == 0 when CompareNE: call to test3_condition is false |
1118
+ | 126 | call to test3_condition == 1 when CompareNE: call to test3_condition is true |
1018
1119
| 131 | b != 0 when CompareNE: b is true |
1120
+ | 131 | b != 1 when CompareNE: b is false |
1019
1121
| 131 | b == 0 when CompareNE: b is false |
1122
+ | 131 | b == 1 when CompareNE: b is true |
1020
1123
| 137 | 0 != 0 when CompareNE: 0 is true |
1124
+ | 137 | 0 != 1 when CompareNE: 0 is false |
1021
1125
| 137 | 0 == 0 when CompareNE: 0 is false |
1126
+ | 137 | 0 == 1 when CompareNE: 0 is true |
1022
1127
| 146 | ! ... != 0 when CompareEQ: ! ... is true |
1023
1128
| 146 | ! ... != 1 when CompareEQ: ! ... is false |
1024
1129
| 146 | ! ... == 0 when CompareEQ: ! ... is false |
1025
1130
| 146 | ! ... == 1 when CompareEQ: ! ... is true |
1026
1131
| 146 | x != 0 when CompareEQ: ! ... is false |
1027
1132
| 146 | x == 0 when CompareEQ: ! ... is true |
1028
1133
| 152 | x != 0 when CompareNE: x is true |
1134
+ | 152 | x != 1 when CompareNE: x is false |
1029
1135
| 152 | x == 0 when CompareNE: x is false |
1136
+ | 152 | x == 1 when CompareNE: x is true |
1030
1137
| 152 | y != 0 when CompareNE: y is true |
1138
+ | 152 | y != 1 when CompareNE: y is false |
1031
1139
| 152 | y == 0 when CompareNE: y is false |
1140
+ | 152 | y == 1 when CompareNE: y is true |
1032
1141
| 156 | ... + ... != x+0 when CompareEQ: ... == ... is false |
1033
1142
| 156 | ... + ... == x+0 when CompareEQ: ... == ... is true |
1034
1143
| 156 | ... == ... != 0 when CompareEQ: ... == ... is true |
@@ -1088,7 +1197,9 @@ irGuardsCompare
1088
1197
| 175 | call to foo == 0 when CompareEQ: ... == ... is true |
1089
1198
| 175 | call to foo == 0+0 when CompareEQ: ... == ... is true |
1090
1199
| 181 | x != 0 when CompareNE: x is true |
1200
+ | 181 | x != 1 when CompareNE: x is false |
1091
1201
| 181 | x == 0 when CompareNE: x is false |
1202
+ | 181 | x == 1 when CompareNE: x is true |
1092
1203
irGuardsControl
1093
1204
| test.c:7:9:7:13 | CompareGT: ... > ... | false | 11 | 11 |
1094
1205
| test.c:7:9:7:13 | CompareGT: ... > ... | true | 8 | 8 |
0 commit comments