Scalable flow-sensitive pointer analysis for java with strong updates
The ability to perform strong updates is the main contributor to the precision of flow-sensitive pointer analysis algorithms. Traditional flow-sensitive pointer analyses cannot strongly update pointers residing in the heap. This is a severe restriction for Java programs. In this paper, we propose a...
Saved in:
Published in | ECOOP 2012 – Object-Oriented Programming pp. 665 - 687 |
---|---|
Main Authors | , |
Format | Conference Proceeding Book Chapter |
Language | English |
Published |
Berlin, Heidelberg
Springer-Verlag
11.06.2012
Springer Berlin Heidelberg |
Series | ACM Other Conferences |
Subjects | |
Online Access | Get full text |
Cover
Loading…
Abstract | The ability to perform strong updates is the main contributor to the precision of flow-sensitive pointer analysis algorithms. Traditional flow-sensitive pointer analyses cannot strongly update pointers residing in the heap. This is a severe restriction for Java programs. In this paper, we propose a new flow-sensitive pointer analysis algorithm for Java that can perform strong updates on heap-based pointers effectively. Instead of points-to graphs, we represent our points-to information as maps from access paths to sets of abstract objects. We have implemented our analysis and run it on several large Java benchmarks. The results show considerable improvement in precision over the points-to graph based flow-insensitive and flow-sensitive analyses, with reasonable running time. |
---|---|
AbstractList | The ability to perform strong updates is the main contributor to the precision of flow-sensitive pointer analysis algorithms. Traditional flow-sensitive pointer analyses cannot strongly update pointers residing in the heap. This is a severe restriction for Java programs. In this paper, we propose a new flow-sensitive pointer analysis algorithm for Java that can perform strong updates on heap-based pointers effectively. Instead of points-to graphs, we represent our points-to information as maps from access paths to sets of abstract objects. We have implemented our analysis and run it on several large Java benchmarks. The results show considerable improvement in precision over the points-to graph based flow-insensitive and flow-sensitive analyses, with reasonable running time. |
Author | D'Souza, Deepak De, Arnab |
Author_xml | – sequence: 1 givenname: Arnab surname: De fullname: De, Arnab email: arnabde@csa.iisc.ernet.in organization: Department of Computer Science and Automation, Indian Institute of Science, Bangalore, India – sequence: 2 givenname: Deepak surname: D'Souza fullname: D'Souza, Deepak email: deepakd@csa.iisc.ernet.in organization: Department of Computer Science and Automation, Indian Institute of Science, Bangalore, India |
BookMark | eNqVkMtOAzEMRQMUibb0D1jkBwJ5TR5LVJWHVIkFsI6cmaRMGWaqydCKvydtYQ_eWL6-tuwzQaO2awNCV4xeM0r1jdWGCKIkJ4LRQhPtuD1BsyyLLB40fYrGTDFGhJD2DE1-G0qP0JgKyonVUlygWUprmkPl0tgxWjyX0IBvAo5NtyMptKke6m3Am65uh9BjaKH5SnXCsevxGraAd_XwhtPQd-0Kf24qGEK6ROcRmhRmP3mKXu8WL_MHsny6f5zfLglwQweSLypCIT0vwcjSAvUgKw-RKyqtKUsWo9QVeBBVDFRzIU2MVVSlUMZrb8UU8ePetOnrdhV657vuPTlG3R6Uy0SccPl1d4Di9qDyEDkOQfnxN7_4j9_5vg5RfANrGXZl |
ContentType | Conference Proceeding Book Chapter |
Copyright | Springer-Verlag Berlin Heidelberg 2012 |
Copyright_xml | – notice: Springer-Verlag Berlin Heidelberg 2012 |
DOI | 10.1007/978-3-642-31057-7_29 |
DatabaseTitleList | |
DeliveryMethod | fulltext_linktorsrc |
Discipline | Computer Science |
EISBN | 9783642310577 3642310575 |
EISSN | 1611-3349 |
Editor | Noble, James |
Editor_xml | – sequence: 1 givenname: James surname: Noble fullname: Noble, James organization: School of Engineering and Computer Science, Victoria University of Wellington, Wellington, New Zealand – sequence: 1 givenname: James surname: Noble fullname: Noble, James email: kjx@ecs.vuw.ac.nz |
EndPage | 687 |
GroupedDBID | -EI 089 0D6 0DA 2HV 38. A4J AABBV AAFYB AAPKO ABBVZ ABFCL ABFCV ABMNI ACM ADPZR ADWNV AEDXK AEKFX AEZAY AIJHZ AIMOO ALMA_UNASSIGNED_HOLDINGS APO AZZ BBABE CZZ GUFHI I4C IEZ IX. LDH MA. NUC PH7 PI1 SAO SBO TGCOT TPJZQ TSXQS Z7R Z7X Z7Y Z83 Z88 -DT -GH -~X 1SB 29L 2HA 5QI 875 AASHB ACGFS ADCXD AEFIE EJD F5P FEDTE HVGLF LAS P2P RIG RNI RSU SVGTG VI1 ~02 |
ID | FETCH-LOGICAL-a280t-2315e54b2ca84c9a0ba4dbaf260498cc1ff47daba3dfe072348ffdf6c368b7b93 |
ISBN | 3642310567 9783642310560 |
ISSN | 0302-9743 |
IngestDate | Tue Oct 01 19:04:57 EDT 2024 Wed Jan 31 06:48:46 EST 2024 Wed Jan 31 06:52:58 EST 2024 |
IsPeerReviewed | true |
IsScholarly | true |
Language | English |
LinkModel | OpenURL |
MergedId | FETCHMERGED-LOGICAL-a280t-2315e54b2ca84c9a0ba4dbaf260498cc1ff47daba3dfe072348ffdf6c368b7b93 |
PageCount | 23 |
ParticipantIDs | springer_books_10_1007_978_3_642_31057_7_29 acm_books_10_1007_978_3_642_31057_7_29 acm_books_10_1007_978_3_642_31057_7_29_brief |
PublicationCentury | 2000 |
PublicationDate | 20120611 |
PublicationDateYYYYMMDD | 2012-06-11 |
PublicationDate_xml | – month: 06 year: 2012 text: 20120611 day: 11 |
PublicationDecade | 2010 |
PublicationPlace | Berlin, Heidelberg |
PublicationPlace_xml | – name: Berlin, Heidelberg |
PublicationSeriesTitle | ACM Other Conferences |
PublicationSubtitle | 26th European Conference, Beijing, China, June 11-16, 2012. Proceedings |
PublicationTitle | ECOOP 2012 – Object-Oriented Programming |
PublicationYear | 2012 |
Publisher | Springer-Verlag Springer Berlin Heidelberg |
Publisher_xml | – name: Springer-Verlag – name: Springer Berlin Heidelberg |
RelatedPersons | Kleinberg, Jon M. Mattern, Friedemann Nierstrasz, Oscar Steffen, Bernhard Kittler, Josef Vardi, Moshe Y. Weikum, Gerhard Sudan, Madhu Naor, Moni Mitchell, John C. Terzopoulos, Demetri Pandu Rangan, C. Kanade, Takeo Hutchison, David Tygar, Doug |
RelatedPersons_xml | – sequence: 1 givenname: David surname: Hutchison fullname: Hutchison, David organization: Lancaster University, Lancaster, UK – sequence: 2 givenname: Takeo surname: Kanade fullname: Kanade, Takeo organization: Carnegie Mellon University, Pittsburgh, USA – sequence: 3 givenname: Josef surname: Kittler fullname: Kittler, Josef organization: University of Surrey, Guildford, UK – sequence: 4 givenname: Jon M. surname: Kleinberg fullname: Kleinberg, Jon M. organization: Cornell University, Ithaca, USA – sequence: 5 givenname: Friedemann surname: Mattern fullname: Mattern, Friedemann organization: ETH Zurich, Zurich, Switzerland – sequence: 6 givenname: John C. surname: Mitchell fullname: Mitchell, John C. organization: Stanford University, Stanford, USA – sequence: 7 givenname: Moni surname: Naor fullname: Naor, Moni organization: Weizmann Institute of Science, Rehovot, Israel – sequence: 8 givenname: Oscar surname: Nierstrasz fullname: Nierstrasz, Oscar organization: University of Bern, Bern, Switzerland – sequence: 9 givenname: C. surname: Pandu Rangan fullname: Pandu Rangan, C. organization: Indian Institute of Technology, Madras, India – sequence: 10 givenname: Bernhard surname: Steffen fullname: Steffen, Bernhard organization: University of Dortmund, Dortmund, Germany – sequence: 11 givenname: Madhu surname: Sudan fullname: Sudan, Madhu organization: Massachusetts Institute of Technology, USA – sequence: 12 givenname: Demetri surname: Terzopoulos fullname: Terzopoulos, Demetri organization: University of California, Los Angeles, USA – sequence: 13 givenname: Doug surname: Tygar fullname: Tygar, Doug organization: University of California, Berkeley, USA – sequence: 14 givenname: Moshe Y. surname: Vardi fullname: Vardi, Moshe Y. organization: Rice University, Houston, USA – sequence: 15 givenname: Gerhard surname: Weikum fullname: Weikum, Gerhard organization: Max-Planck Institute of Computer Science, Saarbrücken, Germany |
SSID | ssj0000697489 ssj0002792 |
Score | 1.9878392 |
Snippet | The ability to perform strong updates is the main contributor to the precision of flow-sensitive pointer analysis algorithms. Traditional flow-sensitive... |
SourceID | springer acm |
SourceType | Publisher |
StartPage | 665 |
SubjectTerms | Access Path Binary Decision Diagram Interprocedural Analysis Program Fragment Program Language Design Theory of computation Theory of computation -- Semantics and reasoning Theory of computation -- Semantics and reasoning -- Program reasoning Theory of computation -- Semantics and reasoning -- Program reasoning -- Program analysis Theory of computation -- Semantics and reasoning -- Program semantics |
Title | Scalable flow-sensitive pointer analysis for java with strong updates |
URI | http://link.springer.com/10.1007/978-3-642-31057-7_29 |
hasFullText | 1 |
inHoldings | 1 |
isFullTextHit | |
isPrint | |
link | http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwnV3PT9swFLYGu-0AY0zrNCYf0C6ZJ2M7P3zgMKEiVDFaqRRxi-zU3mHQIAgg8dfzXhy3ZUUT7NCospI4eZ_z3vPze58J2fWWG6StYvBLmVIaPykOsxSfO-4Koa3B4uRfJ9nRRA3O0_NFCUFbXdLYH9XDs3Ul_4MqtAGuWCX7CmTnN4UG-A_4whEQhuNfzu_TMGuIox8Mh6MELKtIYsaCTIYW4ypsiOzF6EuOQvrVZTRQ6LKGECaMIDtvijfQ4_r2IawAObBTf5YH1BjQbOusDi_qezbGxPc27WhUI-XE9YLeBBMXB-bOhBjvGGPtv5PJFYYWggOPsnE3-8fd8sVJ3bRZYUncYSIqnJXoY_IPcq62UEShH5mGrQNivRboYpjNBPXmgvrNkFRRBhLTTqVmYS-JzjpnwTyvKP7lXA_ojGFvOctLodfIWq5B97392R8cn83jbzzTSLwzt9pIpBhWnMJTYR1QfOo8MDUt3mKpBvO5LtHTqS5X1tZbl-V0k7zDMhaK9SUg0vfkjZttkY0oYtqJ-APpR1zpU1xphyuNuFLAlSKuFHGlAVfa4bpNJof904Mj1u2twYwoeMPgRVKXKisqU6hKG26NmlrjYXoL32tV7Xmv8qmxRk6947mQqvB-6rNKZoXNrZYfyfqsnrlPhDqtHDdC-UJJmK1brYVN95BXr-KmELJHvoE0SvxQbsrIkg1iK2UJYitbsZUoth75_rITSwvD1PdIEuX7gms-v-rsL2S9ub51O-BwNvZrN3YeAQlNcFQ |
link.rule.ids | 310,311,782,783,787,792,793,796,27939 |
linkProvider | Library Specific Holdings |
openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.title=ECOOP+2012+%E2%80%93+Object-Oriented+Programming&rft.au=De%2C+Arnab&rft.au=D%E2%80%99Souza%2C+Deepak&rft.atitle=Scalable+Flow-Sensitive+Pointer+Analysis+for+Java+with+Strong+Updates&rft.series=Lecture+Notes+in+Computer+Science&rft.pub=Springer+Berlin+Heidelberg&rft.isbn=9783642310560&rft.issn=0302-9743&rft.eissn=1611-3349&rft.spage=665&rft.epage=687&rft_id=info:doi/10.1007%2F978-3-642-31057-7_29 |
thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=0302-9743&client=summon |
thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=0302-9743&client=summon |
thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=0302-9743&client=summon |