L
Laurie Hendren
Researcher at McGill University
Publications - 178
Citations - 11093
Laurie Hendren is an academic researcher from McGill University. The author has contributed to research in topics: Compiler & Pointer (computer programming). The author has an hindex of 49, co-authored 177 publications receiving 10680 citations. Previous affiliations of Laurie Hendren include University of California, Irvine & Cornell University.
Papers
More filters
Proceedings ArticleDOI
Soot: a Java bytecode optimization framework
TL;DR: Soot, a framework for optimizing Java* bytecode, is implemented in Java and supports three intermediate representations for representing Java bytecode: Baf, a streamlined representation of bytecode which is simple to manipulate; Jimple, a typed 3-address intermediate representation suitable for optimization; and Grimp, an aggregated version of Jimple suitable for decompilation.
Proceedings ArticleDOI
Context-sensitive interprocedural points-to analysis in the presence of function pointers
TL;DR: This paper reports on the design, implementation, and empirical results of a new method for dealing with the aliasing problem in C based on approximating the points-to relationships between accessible stack locations that allows the smooth integration for handling general function pointers in C.
Proceedings ArticleDOI
Adding trace matching with free variables to AspectJ
Chris Allan,Pavel Avgustinov,Aske Simon Christensen,Laurie Hendren,Sascha Kuzins,Ondřej Lhoták,Oege de Moor,Damien Sereni,Ganesh Sittampalam,Julian Tibble +9 more
TL;DR: A new history-based language feature called tracematches is presented that enables the programmer to trigger the execution of extra code by specifying a regular pattern of events in a computation trace by exploiting the introduction of free variables in the matching patterns.
Book ChapterDOI
Scaling Java points-to analysis using SPARK
Ondřej Lhoták,Laurie Hendren +1 more
TL;DR: SPARK is introduced, a flexible framework for experimenting with points-to analyses for Java that supports equality- and subset-based analyses, variations in field sensitivity, respect for declared types, variationsIn call graph construction, off-line simplification, and several solving algorithms.