A computer system and method for compiling a program, where the program
executes pointer assignments from a source object to a destination
object, each source object being addressable through a first pointer and
each destination object being addressable through a second pointer. The
system and method eliminate write barrier code from association with
compiled program code when the first pointer points to a source object
whose type is prolific, eliminate write barrier code from association
with compiled program code when the second pointer points to a
destination object whose type is non-prolific, and associate write
barrier code with compiled program code when the source object is
non-prolific and the destination object is prolific. Additionally, the
system and method can determine not to associate write barrier code with
a compiled program code if the second pointer points to a destination
object whose type is non-prolific and if the first pointer points to a
source object whose type is prolific.