diff --git a/vm/generic_arrays.hpp b/vm/generic_arrays.hpp index ccb42f0462..c28ee5f3ba 100644 --- a/vm/generic_arrays.hpp +++ b/vm/generic_arrays.hpp @@ -1,64 +1,57 @@ -namespace factor -{ +namespace factor { -template cell array_capacity(const Array *array) -{ +template cell array_capacity(const Array* array) { #ifdef FACTOR_DEBUG - FACTOR_ASSERT(array->type() == Array::type_number); + FACTOR_ASSERT(array->type() == Array::type_number); #endif - return array->capacity >> TAG_BITS; + return array->capacity >> TAG_BITS; } -template cell array_size(cell capacity) -{ - return sizeof(Array) + capacity * Array::element_size; +template cell array_size(cell capacity) { + return sizeof(Array) + capacity * Array::element_size; } -template cell array_size(Array *array) -{ - return array_size(array_capacity(array)); +template cell array_size(Array* array) { + return array_size(array_capacity(array)); } /* Allocates memory */ -template Array *factor_vm::allot_uninitialized_array(cell capacity) -{ - Array *array = allot(array_size(capacity)); - array->capacity = tag_fixnum(capacity); - return array; +template +Array* factor_vm::allot_uninitialized_array(cell capacity) { + Array* array = allot(array_size(capacity)); + array->capacity = tag_fixnum(capacity); + return array; } -template bool factor_vm::reallot_array_in_place_p(Array *array, cell capacity) -{ - return nursery.contains_p(array) && capacity <= array_capacity(array); +template +bool factor_vm::reallot_array_in_place_p(Array* array, cell capacity) { + return nursery.contains_p(array) && capacity <= array_capacity(array); } /* Allocates memory (sometimes) */ -template Array *factor_vm::reallot_array(Array *array_, cell capacity) -{ - data_root array(array_,this); +template +Array* factor_vm::reallot_array(Array* array_, cell capacity) { + data_root array(array_, this); - if (array_capacity(array.untagged()) == capacity) - return array.untagged(); + if (array_capacity(array.untagged()) == capacity) + return array.untagged(); - if(reallot_array_in_place_p(array.untagged(),capacity)) - { - array->capacity = tag_fixnum(capacity); - return array.untagged(); - } - else - { - cell to_copy = array_capacity(array.untagged()); - if(capacity < to_copy) - to_copy = capacity; + if (reallot_array_in_place_p(array.untagged(), capacity)) { + array->capacity = tag_fixnum(capacity); + return array.untagged(); + } else { + cell to_copy = array_capacity(array.untagged()); + if (capacity < to_copy) + to_copy = capacity; - Array *new_array = allot_uninitialized_array(capacity); + Array* new_array = allot_uninitialized_array(capacity); - memcpy(new_array + 1,array.untagged() + 1,to_copy * Array::element_size); - memset((char *)(new_array + 1) + to_copy * Array::element_size, - 0,(capacity - to_copy) * Array::element_size); + memcpy(new_array + 1, array.untagged() + 1, to_copy * Array::element_size); + memset((char*)(new_array + 1) + to_copy * Array::element_size, 0, + (capacity - to_copy) * Array::element_size); - return new_array; - } + return new_array; + } } }