On 4/22/24 4:07 PM, 钟居哲 wrote:
Apologize that we didn't post our (me, kito and Li Pan) disscussions.
This is the story:
We found that my previous patches which support highpart register
overlap with register filter for instructions like (vwadd.wv)
cause ICE reported by:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114714 <https://
gcc.gnu.org/bugzilla/show_bug.cgi?id=114714>
and this is obviously a regression (No ICE on GCC 13.2, but ICE on GCC 14)
Just a note for the future, this wouldn't really be considered a
regression since GCC-13 didn't have any vector support. I'm happy to
help with this kind of judgment call, as are many other GCC developers
such as Jakub, Richi, etc. We've been making these kinds of judgment
calls for decades.
We have tried several fixes to work around this ICE, however, we failed.
And also I found my previous patches are quite wrong which is not the
perfect solution to support register group overlap
for vwadd.wv.
So, finally we decide to revert those patches.
It would have been useful to bring others into the discussion. Both
Robin and I would have likely wanted to understand why disabling the
alternative wasn't sufficient.
Looking at this more generally, we need to keep in mind that the closer
we get to a release, the more careful we need to be. We can take the
time to bring more engineers into the technical discussion. We can take
the time to evaluate the pros/cons of different approaches and balance
them against the needs of the upcoming release and other factors that
may come into play.
So let's learn, adjust & move on.
Thanks,
jeff