From 7ea8afa20439c579c4a1ccb251a78770ef873787 Mon Sep 17 00:00:00 2001 From: Daniel Dunbar Date: Sat, 27 Jun 2009 00:55:57 +0000 Subject: Start move to using APFloat (support long double). - Incomplete, still have to move some conversion operations. - Also, there isn't support yet for copying long double values to native memory. - Still, should be a monotonic improvement and we are no longer faking long double support. git-svn-id: https://llvm.org/svn/llvm-project/klee/trunk@74363 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/klee/Expr.h | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'include') diff --git a/include/klee/Expr.h b/include/klee/Expr.h index e3a57123..6e55cdd3 100644 --- a/include/klee/Expr.h +++ b/include/klee/Expr.h @@ -310,6 +310,12 @@ public: unsigned getNumKids() const { return 0; } ref getKid(unsigned i) const { return 0; } + /// getAPValue - Return the arbitrary precision value directly. + /// + /// Clients should generally not use the APInt value directly and instead use + /// native ConstantExpr APIs. + const llvm::APInt &getAPValue() const { return value; } + /// getZExtValue - Return the constant value for a limited number of bits. /// /// This routine should be used in situations where the width of the constant @@ -410,6 +416,9 @@ public: ref Shl(const ref &RHS); ref LShr(const ref &RHS); ref AShr(const ref &RHS); + + // Comparisons return a constant expression of width 1. + ref Eq(const ref &RHS); ref Ne(const ref &RHS); ref Ult(const ref &RHS); -- cgit 1.4.1