[llvm-commits] [llvm] r76928 - /llvm/trunk/include/llvm/Analysis/ScalarEvolutionExpressions.h

Dan Gohman gohman at apple.com
Thu Jul 23 18:01:06 PDT 2009


Author: djg
Date: Thu Jul 23 20:01:06 2009
New Revision: 76928

URL: http://llvm.org/viewvc/llvm-project?rev=76928&view=rev
Log:
Give SCEVAddRecExpr no-signed-overflow and no-unsigned-overflow flags.

Modified:
    llvm/trunk/include/llvm/Analysis/ScalarEvolutionExpressions.h

Modified: llvm/trunk/include/llvm/Analysis/ScalarEvolutionExpressions.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Analysis/ScalarEvolutionExpressions.h?rev=76928&r1=76927&r2=76928&view=diff

==============================================================================
--- llvm/trunk/include/llvm/Analysis/ScalarEvolutionExpressions.h (original)
+++ llvm/trunk/include/llvm/Analysis/ScalarEvolutionExpressions.h Thu Jul 23 20:01:06 2009
@@ -459,6 +459,15 @@
       return SE.getAddExpr(this, getStepRecurrence(SE));
     }
 
+    bool hasNoUnsignedOverflow() const { return SubclassData & (1 << 0); }
+    void setHasNoUnsignedOverflow(bool B) {
+      SubclassData = (SubclassData & ~(1 << 0)) | (B << 0);
+    }
+    bool hasNoSignedOverflow() const { return SubclassData & (1 << 1); }
+    void setHasNoSignedOverflow(bool B) {
+      SubclassData = (SubclassData & ~(1 << 1)) | (B << 1);
+    }
+
     virtual void print(raw_ostream &OS) const;
 
     /// Methods for support type inquiry through isa, cast, and dyn_cast:





More information about the llvm-commits mailing list