diff options
Diffstat (limited to 'lib/Expr/Expr.cpp')
-rw-r--r-- | lib/Expr/Expr.cpp | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/lib/Expr/Expr.cpp b/lib/Expr/Expr.cpp index 46ea30fc..baa85663 100644 --- a/lib/Expr/Expr.cpp +++ b/lib/Expr/Expr.cpp @@ -501,31 +501,30 @@ const Array * Array::CreateArray(const std::string &_name, uint64_t _size, const ref<ConstantExpr> *constantValuesBegin, const ref<ConstantExpr> *constantValuesEnd, Expr::Width _domain, - Expr::Width _range){ + Expr::Width _range) { const Array * array = new Array(_name, _size, constantValuesBegin, constantValuesEnd, _domain,_range); - if(array->constantValues.size() == 0){ - //means is a symbolic array and we should look up the values; + if (array->constantValues.size() == 0) { // symbolic array unsigned hash = array->hash(); std::vector<const Array *> * bucket = Array::symbolicArraySingletonMap[hash]; - if(bucket){ - for(std::vector<const Array*>::const_iterator it = bucket->begin(); - it != bucket->end(); it ++){ + if (bucket){ + for (std::vector<const Array*>::const_iterator it = bucket->begin(); + it != bucket->end(); it ++){ const Array* prospect = *it; - if(prospect->size == array->size && prospect->name == array->name){ + if (prospect->size == array->size && prospect->name == array->name){ delete array; return prospect; } } bucket->push_back(array); return array; - }else{ + } else { bucket = new std::vector<const Array *>(); bucket->push_back(array); Array::symbolicArraySingletonMap[hash] = bucket; return array; } - }else{ + } else { // concrete array return array; } } |