[PATCH] D78224: ValueLattice, LVI, SCCP: Use floating point constant ranges

Jan Vesely via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 15 14:55:24 PDT 2020


jvesely added a comment.

In D78224#1984569 <https://reviews.llvm.org/D78224#1984569>, @fhahn wrote:

> Very interesting! On a high-level, it would probably be good to split those changes into 3 (ValueLattice, LVI & SCCP); not sure how tricky that's going to be given adding automatic support in markConstant & co. If it's too tricky splitting LVI & SCCP would be great.


the original implementation for llvm-10 split the changes in 3 patches. I wasn't able to cleanly do this in llvm 11, since changing value lattice to represent floats as ranges breaks sccp's assumptions that range is only used for int types.
splitting it would still mean changes in the other places to avoid crashes, and include test regressions. I can take another try.

> Also, the existing tests cover very little floating point stuff, at least for SCCP (and probably LVI too), It would be good to add FP versions of llvm/tests/Transforms/{ip-ranges-binaryops.ll,  ip-ranges-casts.ll, ip-ranges-select.ll ip-constant-ranges.ll, conditions-ranges.ll, conditions-ranges-with-undef.ll} for example.

thanks. I'll add those and update.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D78224





More information about the llvm-commits mailing list