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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           See Also|                            |https://gcc.gnu.org/bugzill
                   |                            |a/show_bug.cgi?id=115336

--- Comment #6 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to Robin Dapp from comment #3)
> Glad we went for rvv_ma_all_1s=true because otherwise this one would have
> gone unnoticed :)  The -fsigned-char -fno-strict-aliasing -fwrapv look
> unnecessary.  I see the problem without them as well, just the output is 255
> instead of 4294967295.
> 
> vect__3.14_56 = .MASK_LEN_LOAD (vectp_b.12_54, 8B, mask__15.11_52, _67, 0);
> // 1/0
> 
> The // 1/0 is unfortunately not true for RVV, it's rather 1/undefined which
> is where we go wrong.  So it looks pretty much like the missing else operand
> for the masked load again.  On my local "else operand" branch that merges
> with an empty vector the test succeeds.

Oh yes this issue. there was some recent discussion on the list saying the
semantics of MASK_LOAD is load and resulting of 0. Oh yes in reference to PR
115336.

https://inbox.sourceware.org/gcc-patches/7ea24dfc-34dd-4931-8614-6fd0ef869...@gmail.com/

Reply via email to