Commit ba26823
segher
rs6000: Improve comparison rtx_cost (PR81288)
The current rs6000 rtx_cost for comparisons against 0 is very high if
TARGET_ISEL && !TARGET_MFCRF, much higher than for reg-reg comparisons,
much higher than a load of 0 and such a reg-reg-comparison. This leads
to infinite recursion in CSE (see PR81288).
This patch removes the too-high cost, also simplifying this code.
PR 81288/target
* config/rs6000/rs6000.c (rs6000_rtx_costs): Do not handle
TARGET_ISEL && !TARGET_MFCRF differently. Simplify code.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@255188 138bc75d-0d04-0410-961f-82ee72b054a41 parent b1023d0 commit ba26823
2 files changed
+12
-17
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
1 | 7 | | |
2 | 8 | | |
3 | 9 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
34889 | 34889 | | |
34890 | 34890 | | |
34891 | 34891 | | |
| 34892 | + | |
| 34893 | + | |
| 34894 | + | |
| 34895 | + | |
| 34896 | + | |
34892 | 34897 | | |
34893 | 34898 | | |
34894 | 34899 | | |
34895 | 34900 | | |
34896 | | - | |
34897 | | - | |
34898 | | - | |
34899 | | - | |
| 34901 | + | |
34900 | 34902 | | |
34901 | 34903 | | |
34902 | 34904 | | |
| |||
34905 | 34907 | | |
34906 | 34908 | | |
34907 | 34909 | | |
34908 | | - | |
34909 | | - | |
34910 | | - | |
34911 | | - | |
34912 | | - | |
34913 | | - | |
34914 | | - | |
34915 | | - | |
34916 | | - | |
34917 | | - | |
34918 | | - | |
34919 | | - | |
34920 | | - | |
34921 | 34910 | | |
34922 | 34911 | | |
34923 | 34912 | | |
| |||
0 commit comments