This repository was archived by the owner on Apr 23, 2020. It is now read-only.
Commit edbc0df
committed
[InstCombine] Rephrase fix to SimplifyWithOpReplaced
I don't have the IR which is causing the build bot breakage but I can
postulate as to why they are timing out:
1. SimplifyWithOpReplaced was stripping flags from the simplified value.
2. visitSelectInstWithICmp was overriding SimplifyWithOpReplaced because
it's simplification wasn't correct.
3. InstCombine would revisit the add instruction and note that it can
rederive the flags.
4. By modifying the value, we chose to revisit instructions which reuse
the value. One of the instructions is the original select, causing
LLVM to never reach fixpoint.
Instead, strip the flags only when we are sure we are going to perform
the simplification.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@239141 91177308-0d34-0410-b5e6-96231b3b80d81 parent 2a89c94 commit edbc0df
File tree
2 files changed
+32
-4
lines changed- lib/Transforms/InstCombine
- test/Transforms/InstCombine
2 files changed
+32
-4
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
598 | 598 | | |
599 | 599 | | |
600 | 600 | | |
| 601 | + | |
| 602 | + | |
| 603 | + | |
| 604 | + | |
| 605 | + | |
| 606 | + | |
| 607 | + | |
| 608 | + | |
| 609 | + | |
| 610 | + | |
| 611 | + | |
| 612 | + | |
| 613 | + | |
| 614 | + | |
| 615 | + | |
| 616 | + | |
| 617 | + | |
| 618 | + | |
601 | 619 | | |
602 | 620 | | |
603 | 621 | | |
| |||
606 | 624 | | |
607 | 625 | | |
608 | 626 | | |
609 | | - | |
| 627 | + | |
610 | 628 | | |
611 | 629 | | |
612 | 630 | | |
613 | 631 | | |
614 | | - | |
| 632 | + | |
615 | 633 | | |
616 | 634 | | |
617 | 635 | | |
618 | 636 | | |
619 | 637 | | |
620 | | - | |
| 638 | + | |
621 | 639 | | |
622 | 640 | | |
623 | 641 | | |
624 | 642 | | |
625 | | - | |
| 643 | + | |
626 | 644 | | |
627 | 645 | | |
628 | 646 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1532 | 1532 | | |
1533 | 1533 | | |
1534 | 1534 | | |
| 1535 | + | |
| 1536 | + | |
| 1537 | + | |
| 1538 | + | |
| 1539 | + | |
| 1540 | + | |
| 1541 | + | |
| 1542 | + | |
| 1543 | + | |
| 1544 | + | |
0 commit comments