Specialization of heap objects is critical for pointer analysis to effectively a
nalyze complex memory activity. This paper discusses heap specialization with re
spect to call chains. Due to the sheer number of distinct call chains, exhausti
ve specialization can be cumbersome. On the other hand, insufficient specializat
ion can miss valuable opportunities to prevent spurious data flow, which results
in not only reduced accuracy but also increased overhead.
In determining whether further specialization will be fruitful, an object's esca
pe information can be exploited. From empirical study, we found that restrictio
n based on escape information is often, but not always, sufficient at prohibitin
g the explosive nature of specialization.
For in-depth case study, four representative benchmarks are selected.
For each benchmark, we vary the degree of heap specialization and examine its im
pact on analysis results and time. To provide better visibility into the impact
, we present the points-to set and pointed-to-by set sizes in the form
of histograms.