Denotational static analysis of Java bytecode has anice and clean compositional definition and an efficientimplementation with binary decision diagrams.But it models only the functionalie input/output behaviour of a program P,not enough if one needs P's internal behavioursie from the input to some internal program points.We overcome this limitation with a technique used up to nowfor logic programs only. It adds new magic blocks of codeto P, whose functional behaviours are the internal behaviours of P.We prove this transformation correct with an operationalsemantics. We define an equivalent denotational semantics, whosedenotations for the magic blocks are hence the internal behavioursof P. We implement our transformationand instantiate it with abstract domains modelling sharingof two variables and non-cyclicity of variables.We get a static analyser for full Java bytecode that is faster andscales better than another operational pair-sharing analyserand a constraint-based pointer analyser.

Magic-Sets Transformation for the Analysis of Java Bytecode

SPOTO, Nicola Fausto
2007-01-01

Abstract

Denotational static analysis of Java bytecode has anice and clean compositional definition and an efficientimplementation with binary decision diagrams.But it models only the functionalie input/output behaviour of a program P,not enough if one needs P's internal behavioursie from the input to some internal program points.We overcome this limitation with a technique used up to nowfor logic programs only. It adds new magic blocks of codeto P, whose functional behaviours are the internal behaviours of P.We prove this transformation correct with an operationalsemantics. We define an equivalent denotational semantics, whosedenotations for the magic blocks are hence the internal behavioursof P. We implement our transformationand instantiate it with abstract domains modelling sharingof two variables and non-cyclicity of variables.We get a static analyser for full Java bytecode that is faster andscales better than another operational pair-sharing analyserand a constraint-based pointer analyser.
2007
magic-sets; static analysis; abstract interpretation; sharing analysis; cyclicity analysis
File in questo prodotto:
File Dimensione Formato  
MagicSets-conference.pdf

solo utenti autorizzati

Tipologia: Versione dell'editore
Licenza: Accesso ristretto
Dimensione 570.97 kB
Formato Adobe PDF
570.97 kB Adobe PDF   Visualizza/Apri   Richiedi una copia

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/11562/311745
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 10
  • ???jsp.display-item.citation.isi??? 9
social impact