> And we fail to fold vect_patt_384.36_436 | { 1, ... } to { 1, ... }?
> Or is the issue that vector masks contain padding and with
> non-zero masking we'd have garbage in the padding and that leaks
> here? That is, _47 ? 1 : iftmp.0_113 -> _47 | iftmp.0_113 assumes
> there's exactly one bit in a
On Wed, 21 Aug 2024, Robin Dapp wrote:
> > > > > _Bool iftmp.0_113;
> > > > > _Bool iftmp.0_114;
> > > > > iftmp.0_113 = .MASK_LOAD (_170, 8B, _169, _171(D));
> > > > > iftmp.0_114 = _47 | iftmp.0_113;
>
> > > _BoolD.2746 _47;
> > > iftmp.0_114 = _47 ? 1 : iftmp.0_113;
> > > which is
> > > > _Bool iftmp.0_113;
> > > > _Bool iftmp.0_114;
> > > > iftmp.0_113 = .MASK_LOAD (_170, 8B, _169, _171(D));
> > > > iftmp.0_114 = _47 | iftmp.0_113;
> > _BoolD.2746 _47;
> > iftmp.0_114 = _47 ? 1 : iftmp.0_113;
> > which is folded into
> > iftmp.0_114 = _47 | iftmp.0_113;
>
>
On Wed, 21 Aug 2024, Robin Dapp wrote:
> > > > Why? I don't think the vectorizer relies on a particular else
> > > > value? I'd say it would be appropriate for if-conversion to
> > > > use "ANY" and for the vectorizer to then pick a supported
> > > > version and/or enforce the else value it need
> > > Why? I don't think the vectorizer relies on a particular else
> > > value? I'd say it would be appropriate for if-conversion to
> > > use "ANY" and for the vectorizer to then pick a supported
> > > version and/or enforce the else value it needs via a blend?
> >
> > In PR115336 we have some
On Wed, 21 Aug 2024, Robin Dapp wrote:
> > > > When predicating a load we implicitly assume that the else value is
> > > > zero. In order to formalize this this patch queries the target for
> > > > its supported else operand and uses that for the maskload call.
> > > > Subsequently, if the else o
> > > When predicating a load we implicitly assume that the else value is
> > > zero. In order to formalize this this patch queries the target for
> > > its supported else operand and uses that for the maskload call.
> > > Subsequently, if the else operand is nonzero, a cond_expr enforcing
> > > a
On Tue, 13 Aug 2024, Jeff Law wrote:
>
>
> On 8/11/24 3:00 PM, Robin Dapp wrote:
> > When predicating a load we implicitly assume that the else value is
> > zero. In order to formalize this this patch queries the target for
> > its supported else operand and uses that for the maskload call.
> >
On 8/11/24 3:00 PM, Robin Dapp wrote:
When predicating a load we implicitly assume that the else value is
zero. In order to formalize this this patch queries the target for
its supported else operand and uses that for the maskload call.
Subsequently, if the else operand is nonzero, a cond_exp
When predicating a load we implicitly assume that the else value is
zero. In order to formalize this this patch queries the target for
its supported else operand and uses that for the maskload call.
Subsequently, if the else operand is nonzero, a cond_expr enforcing
a zero else value is emitted.
10 matches
Mail list logo