Exploiting the Structure of the Constraint Graph for Efficient Points-to Analysis


Autoria(s): Nasre, Rupesh
Data(s)

2012

Resumo

Points-to analysis is a key compiler analysis. Several memory related optimizations use points-to information to improve their effectiveness. Points-to analysis is performed by building a constraint graph of pointer variables and dynamically updating it to propagate more and more points-to information across its subset edges. So far, the structure of the constraint graph has been only trivially exploited for efficient propagation of information, e.g., in identifying cyclic components or to propagate information in topological order. We perform a careful study of its structure and propose a new inclusion-based flow-insensitive context-sensitive points-to analysis algorithm based on the notion of dominant pointers. We also propose a new kind of pointer-equivalence based on dominant pointers which provides significantly more opportunities for reducing the number of pointers tracked during the analysis. Based on this hitherto unexplored form of pointer-equivalence, we develop a new context-sensitive flow-insensitive points-to analysis algorithm which uses incremental dominator update to efficiently compute points-to information. Using a large suite of programs consisting of SPEC 2000 benchmarks and five large open source programs we show that our points-to analysis is 88% faster than BDD-based Lazy Cycle Detection and 2x faster than Deep Propagation. We argue that our approach of detecting dominator-based pointer-equivalence is a key to improve points-to analysis efficiency.

Formato

application/pdf

Identificador

http://eprints.iisc.ernet.in/45831/1/acm_sig_not_47-11_121_2012.pdf

Nasre, Rupesh (2012) Exploiting the Structure of the Constraint Graph for Efficient Points-to Analysis. In: ACM SIGPLAN NOTICES, 47 (11). pp. 121-132.

Publicador

ASSOC COMPUTING MACHINERY

Relação

http://dx.doi.org/10.1145/2426642.2259013

http://eprints.iisc.ernet.in/45831/

Palavras-Chave #Computer Science & Automation (Formerly, School of Automation)
Tipo

Journal Article

PeerReviewed