aboutsummaryrefslogtreecommitdiff
path: root/vm/compiler/codegen/CompilerCodegen.h
diff options
context:
space:
mode:
authorBarry Hayes <bhayes@google.com>2009-05-20 12:10:36 -0700
committerJean-Baptiste Queru <jbq@google.com>2009-08-07 16:36:27 -0700
commitdde8ab037540aaec554a471d67613b959cc0e9f4 (patch)
tree9eb7b7046f879f861006b2680c0f829ae09e0886 /vm/compiler/codegen/CompilerCodegen.h
parent1d24288d662786dc5374de7615b0b550cc035068 (diff)
Change strategy for freeing objects in the sweep.
dlfree() in dlmalloc.c is fairly expensive. It checks the previous and next block to see if the curent block can be merged into one of the free blocks, and if it does merge, that involves manipulating the internal free lists. The sweep phase of the GC is already visiting free objects in address order, and has a list of objects to be freed. The new strategy is: Loop over the list of objects to be freed, merging when possible, and only calling free() when a either the list has run out or a non-adjacent free object is found.
Diffstat (limited to 'vm/compiler/codegen/CompilerCodegen.h')
0 files changed, 0 insertions, 0 deletions