Skip to main content
Popular Press
Compiler Support for Garbage Collection in a Statically Typed Language
ACM SIGPLAN ’92 Conference on Programming Language Design and Implementation (PLDI 1992) (1992)
  • Eliot B. Moss
Abstract

We cortsidertheproblemof supportingcompactinggarbage collectioninthepresenceof moderncompileroptimizations. Sinceour colleetormay move any heapobject, it mustaccuratelylocate, follow, and updateall pointersand vahtes derivedfrompointers.To assist the collector,we extendthe compilerto emittablesdescribinglive pointers,andvalues derivedfrompointers,at eachprogramlocationwherecollectionmay occur. Significant results include identification of a number of problems posed by optimizations, solutions to those problems, a working compiler, and experimental data concerning table sizes, table compression, and time overhead of decoding tables during collection. While gc support can affect the code produced, our sample programs show no significant changes, the table sizes are a modest fraction of the size of the optimized code, and stack tracing is a small fraction of total gc time. Since the compiler enhancements are atso modest, we conclude that the approach is practical,

Disciplines
Publication Date
June, 1992
Citation Information
Eliot B. Moss. "Compiler Support for Garbage Collection in a Statically Typed Language" ACM SIGPLAN ’92 Conference on Programming Language Design and Implementation (PLDI 1992) (1992)
Available at: http://works.bepress.com/eliot_moss/58/