[PATCH] D19002: [LazyValueInfo] Fix for a nasty compile-time problem with questions
Philip Reames via llvm-commits
llvm-commits at lists.llvm.org
Tue Apr 26 17:53:31 PDT 2016
reames added a comment.
I'm 99% sure this patch is no longer needed after "267642: [LVI] Reduce compile time by lazily scanning blocks if needed.". Can you test and confirm?
================
Comment at: lib/Analysis/LazyValueInfo.cpp:65
@@ +64,3 @@
+/// constantrange applies only to integers. constant/notconstant applies to
+/// non-integers, too.
+
----------------
I landed a change which clarifies this. Please rebase.
================
Comment at: lib/Analysis/LazyValueInfo.cpp:246
@@ -241,2 +245,3 @@
if (isNotConstant()) {
if (RHS.isConstant()) {
+ // A value is different on two paths -> mark as bottom (overdefined)
----------------
I re-read my previous comment and realized I was wrong. This code path is in the conservative meet (i.e. merge two paths at a phi). Conflicting facts here merely imply we can't reason precisely about the values flowing through the merge. It does not imply unreachable code. Sorry for the confusion.
http://reviews.llvm.org/D19002
More information about the llvm-commits
mailing list