Neural code comprehension: A learnable representation of code semantics

T Ben-Nun, AS Jakobovits… - Advances in neural …, 2018 - proceedings.neurips.cc
With the recent success of embeddings in natural language processing, research has been
conducted into applying similar methods to code analysis. Most works attempt to process the …

Efficient context-sensitive pointer analysis for C programs

RP Wilson, MS Lam - ACM Sigplan Notices, 1995 - dl.acm.org
This paper proposes an efficient technique for context-sensitive pointer analysis that is
applicable to real C programs. For efficiency, we summarize the effects of procedures using …

[图书][B] Data flow analysis: theory and practice

U Khedker, A Sanyal, B Sathe - 2017 - taylorfrancis.com
Data flow analysis is used to discover information for a wide variety of useful applications,
ranging from compiler optimizations to software engineering and verification. Modern …

Interprocedural pointer alias analysis

M Hind, M Burke, P Carini, JD Choi - ACM Transactions on Programming …, 1999 - dl.acm.org
We present practical approximation methods for computing and representing
interprocedural aliases for a program written in a language that includes pointers, reference …

Sparse representation of implicit flows with applications to side-channel detection

B Rodrigues, FM Quintão Pereira… - Proceedings of the 25th …, 2016 - dl.acm.org
Information flow analyses traditionally use the Program Dependence Graph (PDG) as a
supporting data-structure. This graph relies on Ferrante et al.'s notion of control …

[图书][B] The compiler design handbook: optimizations and machine code generation

YN Srikant, P Shankar - 2002 - taylorfrancis.com
The widespread use of object-oriented languages and Internet security concerns are just the
beginning. Add embedded systems, multiple memory banks, highly pipelined units …

Practical improvements to the construction and destruction of static single assignment form

P Briggs, KD Cooper, TJ Harvey… - Software: Practice and …, 1998 - Wiley Online Library
Abstract Static Single Assignment (SSA) form is a program representation that is becoming
increasingly popular for compiler-based code optimization. In this paper, we address three …

Formal verification of SSA-based optimizations for LLVM

J Zhao, S Nagarakatte, MMK Martin… - Proceedings of the 34th …, 2013 - dl.acm.org
Modern compilers, such as LLVM and GCC, use a static single assignment (SSA)
intermediate representation (IR) to simplify and enable many advanced optimizations …

Simple and efficient construction of static single assignment form

M Braun, S Buchwald, S Hack, R Leißa… - … CC 2013, Held as Part of …, 2013 - Springer
We present a simple SSA construction algorithm, which allows direct translation from an
abstract syntax tree or bytecode into an SSA-based intermediate representation. The …

A new algorithm for partial redundancy elimination based on SSA form

F Chow, S Chan, R Kennedy, SM Liu, R Lo, P Tu - ACM Sigplan Notices, 1997 - dl.acm.org
A new algorithm, SSAPRE, for performing partial redundancy elimination based entirely on
SSA form is presented. It achieves optimal code motion similar to lazy code motion [KRS94a …