Home

Language support for regions


Author(s) : Alex Aiken David Gay, 
Publisher : N/A
Publication Date : 2001
ISSN : N/A
Abstract : Region-based memory management systems structure memory by grouping objects in regions under program control. Memory is reclaimed by deleting regions, freeing all objects stored therein. Our compiler for C with regions, RC, prevents unsafe region deletions by keeping a count of references to each region. Using type annotations that make the structure of a program's regions more explicit, we reduce the overhead of reference counting from a maximum of 27 % to a maximum of 11 % on a suite of realistic benchmarks. We generalise these annotations in a region type system whose regions to represent pointers to objects whose region is partially or totally unknown. A distribution of RC is available,