diff options
author | Martin Brain <martin.brain@cs.ox.ac.uk> | 2014-12-03 21:29:43 -0500 |
---|---|---|
committer | Morgan Deters <mdeters@cs.nyu.edu> | 2014-12-03 21:58:28 -0500 |
commit | cf6bc6c57dd579b8f75b7d20922eda0eaa92b2f7 (patch) | |
tree | 582afecddf7d64953d8562ab57dd915db6cc852f /src/expr/expr_manager_template.cpp | |
parent | 2121eaac7e63875f1e6ba53076535d25fd561c04 (diff) |
Floating point infrastructure.
Signed-off-by: Morgan Deters <mdeters@cs.nyu.edu>
Diffstat (limited to 'src/expr/expr_manager_template.cpp')
-rw-r--r-- | src/expr/expr_manager_template.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/expr/expr_manager_template.cpp b/src/expr/expr_manager_template.cpp index c5249075b..7eb93b8ff 100644 --- a/src/expr/expr_manager_template.cpp +++ b/src/expr/expr_manager_template.cpp @@ -154,6 +154,12 @@ IntegerType ExprManager::integerType() const { return IntegerType(Type(d_nodeManager, new TypeNode(d_nodeManager->integerType()))); } +RoundingModeType ExprManager::roundingModeType() const { + NodeManagerScope nms(d_nodeManager); + return RoundingModeType(Type(d_nodeManager, new TypeNode(d_nodeManager->roundingModeType()))); +} + + Expr ExprManager::mkExpr(Kind kind, Expr child1) { const kind::MetaKind mk = kind::metaKindOf(kind); const unsigned n = 1 - (mk == kind::metakind::PARAMETERIZED ? 1 : 0); @@ -573,6 +579,11 @@ SExprType ExprManager::mkSExprType(const std::vector<Type>& types) { return SExprType(Type(d_nodeManager, new TypeNode(d_nodeManager->mkSExprType(typeNodes)))); } +FloatingPointType ExprManager::mkFloatingPointType(unsigned exp, unsigned sig) const { + NodeManagerScope nms(d_nodeManager); + return FloatingPointType(Type(d_nodeManager, new TypeNode(d_nodeManager->mkFloatingPointType(exp,sig)))); +} + BitVectorType ExprManager::mkBitVectorType(unsigned size) const { NodeManagerScope nms(d_nodeManager); return BitVectorType(Type(d_nodeManager, new TypeNode(d_nodeManager->mkBitVectorType(size)))); |