[llvm] r267440 - [LVI] Clarify comments describing the lattice values
Philip Reames via llvm-commits
llvm-commits at lists.llvm.org
Mon Apr 25 11:48:44 PDT 2016
Author: reames
Date: Mon Apr 25 13:48:43 2016
New Revision: 267440
URL: http://llvm.org/viewvc/llvm-project?rev=267440&view=rev
Log:
[LVI] Clarify comments describing the lattice values
There has been much recent confusion about the partition in the lattice between constant and non-constant values. Hopefully, documenting this will prevent confusion going forward.
Modified:
llvm/trunk/lib/Analysis/LazyValueInfo.cpp
Modified: llvm/trunk/lib/Analysis/LazyValueInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Analysis/LazyValueInfo.cpp?rev=267440&r1=267439&r2=267440&view=diff
==============================================================================
--- llvm/trunk/lib/Analysis/LazyValueInfo.cpp (original)
+++ llvm/trunk/lib/Analysis/LazyValueInfo.cpp Mon Apr 25 13:48:43 2016
@@ -63,19 +63,24 @@ namespace llvm {
namespace {
class LVILatticeVal {
enum LatticeValueTy {
- /// This Value has no known value yet.
+ /// This Value has no known value yet. As a result, this implies the
+ /// producing instruction is dead. Caution: We use this as the starting
+ /// state in our local meet rules. In this usage, it's taken to mean
+ /// "nothing known yet".
undefined,
- /// This Value has a specific constant value.
+ /// This Value has a specific constant value. (For integers, constantrange
+ /// is used instead.)
constant,
- /// This Value is known to not have the specified value.
+ /// This Value is known to not have the specified value. (For integers,
+ /// constantrange is used instead.)
notconstant,
- /// The Value falls within this range.
+ /// The Value falls within this range. (Used only for integer typed values.)
constantrange,
- /// This value is not known to be constant, and we know that it has a value.
+ /// We can not precisely model the dynamic values this value might take.
overdefined
};
More information about the llvm-commits
mailing list