@@ -69,24 +69,24 @@ void* Arena::alloc(size_t size)
69
69
// This allocation strategy is best-fit. According to "Dynamic Storage Allocation: A Survey and Critical Review",
70
70
// Wilson et. al. 1995, http://www.scs.stanford.edu/14wi-cs140/sched/readings/wilson.pdf, best-fit and first-fit
71
71
// policies seem to work well in practice.
72
- auto sizePtrIt = size_to_free_chunk.lower_bound (size);
73
- if (sizePtrIt == size_to_free_chunk.end ())
72
+ auto size_ptr_it = size_to_free_chunk.lower_bound (size);
73
+ if (size_ptr_it == size_to_free_chunk.end ())
74
74
return nullptr ;
75
75
76
76
// Create the used-chunk, taking its space from the end of the free-chunk
77
- const size_t sizeRemaining = sizePtrIt ->first - size;
78
- auto alloced = chunks_used.emplace (sizePtrIt ->second + sizeRemaining , size).first ;
79
- chunks_free_end.erase (sizePtrIt ->second + sizePtrIt ->first );
80
- if (sizePtrIt ->first == size) {
77
+ const size_t size_remaining = size_ptr_it ->first - size;
78
+ auto alloced = chunks_used.emplace (size_ptr_it ->second + size_remaining , size).first ;
79
+ chunks_free_end.erase (size_ptr_it ->second + size_ptr_it ->first );
80
+ if (size_ptr_it ->first == size) {
81
81
// whole chunk is used up
82
- chunks_free.erase (sizePtrIt ->second );
82
+ chunks_free.erase (size_ptr_it ->second );
83
83
} else {
84
84
// still some memory left in the chunk
85
- auto itRemaining = size_to_free_chunk.emplace (sizeRemaining, sizePtrIt ->second );
86
- chunks_free[sizePtrIt ->second ] = itRemaining ;
87
- chunks_free_end.emplace (sizePtrIt ->second + sizeRemaining, itRemaining );
85
+ auto it_remaining = size_to_free_chunk.emplace (size_remaining, size_ptr_it ->second );
86
+ chunks_free[size_ptr_it ->second ] = it_remaining ;
87
+ chunks_free_end.emplace (size_ptr_it ->second + size_remaining, it_remaining );
88
88
}
89
- size_to_free_chunk.erase (sizePtrIt );
89
+ size_to_free_chunk.erase (size_ptr_it );
90
90
91
91
return reinterpret_cast <void *>(alloced->first );
92
92
}
@@ -106,7 +106,7 @@ void Arena::free(void *ptr)
106
106
std::pair<char *, size_t > freed = *i;
107
107
chunks_used.erase (i);
108
108
109
- // Coalesc freed with previous chunk
109
+ // coalesce freed with previous chunk
110
110
auto prev = chunks_free_end.find (freed.first );
111
111
if (prev != chunks_free_end.end ()) {
112
112
freed.first -= prev->second ->first ;
@@ -115,7 +115,7 @@ void Arena::free(void *ptr)
115
115
chunks_free_end.erase (prev);
116
116
}
117
117
118
- // Coalesc freed with chunk after freed
118
+ // coalesce freed with chunk after freed
119
119
auto next = chunks_free.find (freed.first + freed.second );
120
120
if (next != chunks_free.end ()) {
121
121
freed.second += next->second ->first ;
0 commit comments