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...

Full description

Saved in:
Bibliographic Details
Published inECOOP 2012 – Object-Oriented Programming pp. 665 - 687
Main Authors De, Arnab, D'Souza, Deepak
Format Conference Proceeding Book Chapter
LanguageEnglish
Published Berlin, Heidelberg Springer-Verlag 11.06.2012
Springer Berlin Heidelberg
SeriesACM Other Conferences
Subjects
Online AccessGet 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