[PATCH] D76931: [ValueLattice] Distinguish between constant ranges with/without undef.

Eli Friedman via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Mar 27 11:28:37 PDT 2020


efriedma added a comment.

The natural definition of undef extends to branches without any special extensions.  It might make sense to redefine it to have some poison-like characteristics if that would make our life easier; I don't think any frontends would care.  But I think really, you're just trading one set of problems for another.  For example, if you have a switch on "x & -2", right now we can eliminate the "&".  If branching on poison is UB, that requires freezing x.

Ultimately, I'm think trying to redefine undef at this point would act as a distraction for the poison work.  That seems worse than whatever minor improvement we might get from redefining it.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D76931





More information about the llvm-commits mailing list