https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86771
--- Comment #16 from Segher Boessenkool <segher at gcc dot gnu.org> --- (In reply to Wilco from comment #14) > Note there is also an issue with costs, if the cost is zero then it seems to > behave like infinite cost. 0 means unknown cost. Any known cost is treated as at least as good as unknown cost. > It would be better to properly cost an > instruction sequence given there is a new interface for this now. Yup. > If the > cost is still zero, it could get the default cost rather than being treated > like infinite cost, resulting in non-optimal replacements. Treating unknown cost as minimal cost is still non-optimal. It might work better for your case of course. But it means for example that combine will modify parallels less often.