diff options
author | Chris Lattner <sabre@nondot.org> | 2008-06-02 01:29:46 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2008-06-02 01:29:46 +0000 |
commit | 833f25d79ee28f1049f9177c3d2f4c9fbad6f643 (patch) | |
tree | a220de2e1a1ee0a4a134b3b2e5975267b3139c0b /include/llvm/Analysis/ValueTracking.h | |
parent | 173234a68fb6ece106e77da443d87f09d5906cb9 (diff) | |
download | external_llvm-833f25d79ee28f1049f9177c3d2f4c9fbad6f643.zip external_llvm-833f25d79ee28f1049f9177c3d2f4c9fbad6f643.tar.gz external_llvm-833f25d79ee28f1049f9177c3d2f4c9fbad6f643.tar.bz2 |
move CannotBeNegativeZero to ValueTracking. Simplify some signbit comparisons.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51864 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Analysis/ValueTracking.h')
-rw-r--r-- | include/llvm/Analysis/ValueTracking.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/include/llvm/Analysis/ValueTracking.h b/include/llvm/Analysis/ValueTracking.h index d07e890..ca8d3e3 100644 --- a/include/llvm/Analysis/ValueTracking.h +++ b/include/llvm/Analysis/ValueTracking.h @@ -28,6 +28,9 @@ namespace llvm { APInt &KnownOne, TargetData *TD = 0, unsigned Depth = 0); + /// MaskedValueIsZero - Return true if 'V & Mask' is known to be zero. We use + /// this predicate to simplify operations downstream. Mask is known to be + /// zero for bits that V cannot have. bool MaskedValueIsZero(Value *V, const APInt &Mask, TargetData *TD = 0, unsigned Depth = 0); @@ -43,6 +46,10 @@ namespace llvm { unsigned ComputeNumSignBits(Value *Op, TargetData *TD = 0, unsigned Depth = 0); + /// CannotBeNegativeZero - Return true if we can prove that the specified FP + /// value is never equal to -0.0. + /// + bool CannotBeNegativeZero(const Value *V, unsigned Depth = 0); } // end namespace llvm #endif |