https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120297

Robin Dapp <rdapp at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|WAITING                     |ASSIGNED

--- Comment #8 from Robin Dapp <rdapp at gcc dot gnu.org> ---
Ok, following the rule I mentioned above we fuse
  vsetvl e8,mf2,...
  vsetvl e64,m1,...
into
  vsetvl e64,m4,...

Individually, that's ok but we also change the new vsetvl's demand to "SEW
only" even though the first original one demanded SEW >= 8 and ratio = 16.

As we forget the ratio after the merge we find that the vsetvl following the
merged one has ratio = 64 demand and we fuse into
  vsetvl e64,m1,..
which obviously doesn't have ratio = 16 any more.

Testing a patch.

While looking through the vsetvl dump I noticed that we use "demand SEW >= 8"
when this is always true.  I haven't checked if that would help us anywhere but
we could use an "always true" predicate here.

Reply via email to