Commit 2409daf
committed
[ConstraintElim] Handle trivial (ICMP_ULE, 0, B) in doesHold.
D152730 may add trivial pre-conditions of the form (ICMP_ULE, 0, B),
which won't be handled automatically by the constraint system, because
we don't add Var >= 0 for all variables in the unsigned system.
Handling the trivial condition explicitly here avoids having the
increase the number of rows in the system per variable.
https://alive2.llvm.org/ce/z/QC92ur
Depends on D152730.
Fixes llvm#63125.
Reviewed By: nikic
Differential Revision: https://reviews.llvm.org/D1587761 parent 2019612 commit 2409daf
File tree
14 files changed
+216
-69
lines changed- llvm
- lib/Transforms/Scalar
- test/Transforms
- ConstraintElimination
- PhaseOrdering
14 files changed
+216
-69
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
675 | 675 | | |
676 | 676 | | |
677 | 677 | | |
| 678 | + | |
| 679 | + | |
| 680 | + | |
| 681 | + | |
| 682 | + | |
| 683 | + | |
| 684 | + | |
| 685 | + | |
| 686 | + | |
| 687 | + | |
| 688 | + | |
678 | 689 | | |
679 | 690 | | |
680 | 691 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
774 | 774 | | |
775 | 775 | | |
776 | 776 | | |
777 | | - | |
778 | | - | |
| 777 | + | |
779 | 778 | | |
780 | 779 | | |
781 | 780 | | |
| |||
808 | 807 | | |
809 | 808 | | |
810 | 809 | | |
811 | | - | |
812 | | - | |
| 810 | + | |
813 | 811 | | |
814 | 812 | | |
815 | 813 | | |
| |||
842 | 840 | | |
843 | 841 | | |
844 | 842 | | |
845 | | - | |
846 | | - | |
| 843 | + | |
847 | 844 | | |
848 | 845 | | |
849 | 846 | | |
| |||
876 | 873 | | |
877 | 874 | | |
878 | 875 | | |
879 | | - | |
880 | | - | |
| 876 | + | |
881 | 877 | | |
882 | 878 | | |
883 | 879 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
227 | 227 | | |
228 | 228 | | |
229 | 229 | | |
230 | | - | |
231 | | - | |
232 | | - | |
| 230 | + | |
233 | 231 | | |
234 | 232 | | |
235 | 233 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
118 | 118 | | |
119 | 119 | | |
120 | 120 | | |
121 | | - | |
122 | 121 | | |
123 | 122 | | |
124 | | - | |
| 123 | + | |
125 | 124 | | |
126 | 125 | | |
127 | 126 | | |
| |||
Lines changed: 8 additions & 12 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
14 | 14 | | |
15 | 15 | | |
16 | 16 | | |
17 | | - | |
18 | | - | |
| 17 | + | |
19 | 18 | | |
20 | | - | |
| 19 | + | |
21 | 20 | | |
22 | 21 | | |
23 | 22 | | |
| |||
50 | 49 | | |
51 | 50 | | |
52 | 51 | | |
53 | | - | |
54 | | - | |
| 52 | + | |
55 | 53 | | |
56 | | - | |
| 54 | + | |
57 | 55 | | |
58 | 56 | | |
59 | 57 | | |
| |||
86 | 84 | | |
87 | 85 | | |
88 | 86 | | |
89 | | - | |
90 | | - | |
| 87 | + | |
91 | 88 | | |
92 | | - | |
| 89 | + | |
93 | 90 | | |
94 | 91 | | |
95 | 92 | | |
| |||
141 | 138 | | |
142 | 139 | | |
143 | 140 | | |
144 | | - | |
145 | | - | |
| 141 | + | |
146 | 142 | | |
147 | | - | |
| 143 | + | |
148 | 144 | | |
149 | 145 | | |
150 | 146 | | |
| |||
Lines changed: 12 additions & 18 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
325 | 325 | | |
326 | 326 | | |
327 | 327 | | |
328 | | - | |
329 | | - | |
330 | | - | |
| 328 | + | |
| 329 | + | |
331 | 330 | | |
332 | 331 | | |
333 | 332 | | |
| |||
381 | 380 | | |
382 | 381 | | |
383 | 382 | | |
384 | | - | |
385 | | - | |
386 | | - | |
| 383 | + | |
| 384 | + | |
387 | 385 | | |
388 | 386 | | |
389 | 387 | | |
| |||
432 | 430 | | |
433 | 431 | | |
434 | 432 | | |
435 | | - | |
436 | | - | |
437 | | - | |
| 433 | + | |
| 434 | + | |
438 | 435 | | |
439 | 436 | | |
440 | 437 | | |
| |||
485 | 482 | | |
486 | 483 | | |
487 | 484 | | |
488 | | - | |
489 | | - | |
490 | | - | |
| 485 | + | |
| 486 | + | |
491 | 487 | | |
492 | 488 | | |
493 | 489 | | |
| |||
541 | 537 | | |
542 | 538 | | |
543 | 539 | | |
544 | | - | |
545 | | - | |
546 | | - | |
| 540 | + | |
| 541 | + | |
547 | 542 | | |
548 | 543 | | |
549 | 544 | | |
| |||
596 | 591 | | |
597 | 592 | | |
598 | 593 | | |
599 | | - | |
600 | | - | |
601 | | - | |
| 594 | + | |
| 595 | + | |
602 | 596 | | |
603 | 597 | | |
604 | 598 | | |
| |||
Lines changed: 2 additions & 5 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
572 | 572 | | |
573 | 573 | | |
574 | 574 | | |
575 | | - | |
576 | | - | |
| 575 | + | |
577 | 576 | | |
578 | 577 | | |
579 | 578 | | |
580 | 579 | | |
581 | | - | |
582 | | - | |
583 | | - | |
| 580 | + | |
584 | 581 | | |
585 | 582 | | |
586 | 583 | | |
| |||
Lines changed: 1 addition & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
55 | 55 | | |
56 | 56 | | |
57 | 57 | | |
58 | | - | |
59 | | - | |
| 58 | + | |
60 | 59 | | |
61 | 60 | | |
62 | 61 | | |
| |||
0 commit comments