[clang] [llvm] [ValueTracking] Add dominating condition support in computeKnownBits() (PR #73662)

Nikita Popov via cfe-commits cfe-commits at lists.llvm.org
Mon Dec 4 09:00:59 PST 2023


nikic wrote:

@dtcxzyw Could you please run another test with this branch? https://github.com/nikic/llvm-project/tree/perf/dom-cond-3

I believe the issue with DILATE is that we have some icmps that get canonicalized from signed to unsigned predicate, and IndVars is not able to perform some reasoning anymore. I think a change like https://github.com/llvm/llvm-project/commit/7fa42da85418035e46e22e32df6d4626d2a9ea49 may help, but possibly not completely and it has compile-time impact. So I'm considering disabling the use of dominating conditions for the icmp known bits simplification to not go down this rabbit hole. (The proper solution is probably to have something similar to zext nneg for icmp.)

https://github.com/llvm/llvm-project/pull/73662


More information about the cfe-commits mailing list