[PATCH] D115526: [InstCombine] don't automatically drop poison-generating flags in SimplifyVectorDemandedElts

Philip Reames via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Dec 10 08:30:49 PST 2021


reames added a comment.

I was thinking about this as well, but you have more history on the discussion than I do.

Let me briefly mention the case which I was unclear about.  For most of the demanded lane stuff, leaving the flags is clearly fine as we make only undemanded lanes "more poison".  However, is there an interaction with undef and demanded lanes?  Do any callers assume that flags hold for any value of undef chosen?  It seems like we might have a version of the undef commit problem.  (i.e. where two different places assume different values for an undef, and the first doesn't commit that to IR.)  Not sure, but I was uncomfortable when trying to think it through.

In a local patch, I'd tried preserving the existing drop flags functionality for undef lanes.  That appeared to allow all the test changes, but I didn't post it because I wasn't clear if it was actually needed or not.


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

https://reviews.llvm.org/D115526



More information about the llvm-commits mailing list