sdesmalen added a comment.

In D71556#1786465 <https://reviews.llvm.org/D71556#1786465>, @efriedma wrote:

> I'm not sure it's legal to transform a non-faulting load to a load with a 
> non-faulting flag?  At least, we'd need to consider the implications of that 
> very carefully.  In particular, I'm concerned about the interaction with 
> intrinsics that read/write FFR.  I mean, you could specify that loads marked 
> MONonFaulting actually write to the FFR register, but that seems confusing.
>
> It seems simpler to preserve the intrinsic until isel, at least for now.


I missed this comment earlier, but that's a valid point. For SVE having 
side-effects is assumed from the non-faulting flag. We hoped to latch on to the 
MLOAD here to reuse code and benefit from legalization in case we want to add a 
more generic mechanism in the future to use such loads directly in the 
loop-vectorizer.

Perhaps we can clarify the intent that the non-faulting mode may have 
side-effects by renaming the flag to something like 
`NonFaultingWithSideEffects`? Otherwise we can stick with the intrinsics as you 
suggest.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D71556/new/

https://reviews.llvm.org/D71556



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to