On Tue, May 02, 2023 at 10:11:27AM -0400, Paul Koning wrote: > > On May 2, 2023, at 9:18 AM, Roger Sayle <ro...@nextmovesoftware.com> wrote: > > Yes, see the section -fsplit-wide-types in > > https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html > > Thanks. So I'm wondering why that would be a problem. > > The obvious question is whether it interacts badly with MD file entries that > describe wide operations, perhaps with constraints that require things like > odd/even register pairs. But I would assume all that gets handled. > > Along the same lines, why would a target, or a user, not do early wide > splitting all the time? The documentation for that option gives no clue why > it would ever be bad.
In <https://inbox.sourceware.org/gcc-patches/0c1cd0e5706087d51c0d981a313786990ddcad89.1562518763.git.seg...@kernel.crashing.org/> (the patch that created -fsplit-wide-types-early) I say "At least for targets that do not have RTL patterns for operations on multi-register modes it is a lot better to split patterns earlier, before combine and all related passes." If your target does in fact have patterns for multi-reg modes it presumably wants those to be used preferably. The patch did not change the default because that always is a lot of pain. The cost-benefit analysis did not work out here (for me!) Segher