|
ABSTRACT
We consider the problem of supporting compacting garbage collection in the presence of modern compiler optimizations. Since our collector may move any heap object, it must accurately locate, follow, and update all pointers and values derived from pointers. To assist the collector, we extend the compiler to emit tables describing live pointers, and values derived from pointers, at each program location where collection may 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 also modest, we conclude that the approach is practical.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
|
| |
2
|
|
| |
3
|
|
| |
4
|
A.L. Hosking, "Main memory management for persistence," Oct. 1991. Position paper for OOPSLA '91 Workshop on Garbage Collection.
|
| |
5
|
J. F. Bartlett,"Compacting garbage collection with ambiguous roots," Research Report 88/2, Western Research Laboratory, Digital Equipment Corporation, Feb. 1988.
|
| |
6
|
J. F. Bartlett, "Mostly-copying garbage collection picks up generations and C++," Technical Note TN. 12, Western Research Laboratory, Digital Equipment Corporation, Palo Alto, CA 94301, Oct. 1989.
|
| |
7
|
R.M. Stallman, GCC. Free Software Foundation, Cambridge, MA.
|
| |
8
|
|
 |
9
|
|
| |
10
|
S. Harbison. Personal Communication, 1992.
|
| |
11
|
|
| |
12
|
A. L. Hosking, J. E. B. Moss, and D. Stefanovid, "A comparative performance evaluation of write barrier implementations." Submitted for publication, Feb. 1992.
|
| |
13
|
H.-j. Boehm, "A proposal for GC-safe C compilation," Oct. 1991. Position paper for OOPSLA '91 Workshop on Garbage Collection.
|
 |
14
|
|
| |
15
|
|
| |
16
|
P. Branquart and J. Lewi, "A scheme for storage allocation and garbage collection in Algol-68," in Algol 68 Implementation (J. E. L. Peck, ed.), North-Holland Publishing Company, 1971.
|
 |
17
|
|
| |
18
|
H.-J. Boehm, "Personal communication," July 1991.
|
| |
19
|
A. Diwan, "Exception handling in Modula-3." Internal OOS Document, 1990.
|
| |
20
|
L. W. Zurawski and R. E. Johnson, "Debugging optimized code with expected behavior," ACM Trans. Programming Languages and Systems, To appear.
|
CITED BY 24
|
|
|
|
|
|
Michael Franz , Deepak Chandra , Andreas Gal , Vivek Haldar , Fermín Reig , Ning Wang, A portable Virtual Machine target for Proof-Carrying Code, Proceedings of the 2003 workshop on Interpreters, virtual machines and emulators, p.24-31, June 12-12, 2003, San Diego, California
|
|
|
Michael Franz , Deepak Chandra , Andreas Gal , Vivek Haldar , Christian W. Probst , Fermín Reig , Ning Wang, A portable virtual machine target for proof-carrying code, Science of Computer Programming, v.57 n.3, p.275-294, September 2005
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
D. Tarditi , G. Morrisett , P. Cheng , C. Stone , R. Harper , P. Lee, TIL: a type-directed optimizing compiler for ML, ACM SIGPLAN Notices, v.31 n.5, p.181-192, May 1996
|
|
|
|
|
|
|
|
|
|
|
|
|
David Tarditi , Greg Morrisett , Perry Cheng , Chris Stone , Robert Harper , Peter Lee, TIL: a type-directed, optimizing compiler for ML, ACM SIGPLAN Notices, v.39 n.4, April 2004
|
Peer to Peer - Readers of this Article have also read:
-
Data structures for quadtree approximation and compression
Communications of the ACM
28, 9
Hanan Samet
-
A hierarchical single-key-lock access control using the Chinese remainder theorem
Proceedings of the 1992 ACM/SIGAPP Symposium on Applied computing
Kim S. Lee
, Huizhu Lu
, D. D. Fisher
-
The GemStone object database management system
Communications of the ACM
34, 10
Paul Butterworth
, Allen Otis
, Jacob Stein
-
An intelligent component database for behavioral synthesis
Proceedings of the 27th ACM/IEEE Design Automation Conference on
Gwo-Dong Chen
, Daniel D. Gajski
-
Putting innovation to work: adoption strategies for multimedia communication systems
Communications of the ACM
34, 12
Ellen Francik
, Susan Ehrlich Rudman
, Donna Cooper
, Stephen Levine
|