>> I didn't mean to say that splitters should be used, just that I had similary >>"ugly" patterns with splitters and there will be more in the future. I think some "ugly" patterns can not be avoid for now and I don't think we need to waste too much on it currently. You can take a look at ARM SVE. There are also many combine "unspecs" patterns.
juzhe.zh...@rivai.ai From: Robin Dapp Date: 2023-06-06 19:42 To: 钟居哲; gcc-patches CC: rdapp.gcc; kito.cheng; kito.cheng; palmer; palmer; Jeff Law; pan2.li Subject: Re: [PATCH] RISC-V: Add RVV vwmacc/vwmaccu/vwmaccsu combine lowering optmization > These enhance patterns are generated in complicate combining situations. Yes, that's clear. One strategy is to look through combine's output and see which combination results make sense for a particular backend. I was wondering where the unspec-less patterns originate (when we expand everything to predicated, unspec insns). > Splitters can not work in complicate case, you could try my testcase. > I am 100% it should be define_insn_and_split. I didn't mean to say that splitters should be used, just that I had similary "ugly" patterns with splitters and there will be more in the future. Regards Robin