Related articles |
---|
Decompiler, Expression Propagation, Intermediate Representation proble r3831110n@gmail.com (Rebel Lion) (2010-05-09) |
Re: Decompiler, Expression Propagation, Intermediate Representation pr jsinger@cs.man.ac.uk (Jeremy Singer) (2010-05-11) |
Re: Decompiler, Expression Propagation, Intermediate Representation pr r3831110n@gmail.com (Rebel Lion) (2010-05-13) |
From: | Jeremy Singer <jsinger@cs.man.ac.uk> |
Newsgroups: | comp.compilers |
Date: | Tue, 11 May 2010 10:11:35 +0100 |
Organization: | University of Manchester |
References: | 10-05-038 |
Keywords: | disassemble, analysis, bibliography |
Posted-Date: | 12 May 2010 00:55:55 EDT |
> (1) Expression Propagation Problem
> c = a + b
> e = c + d
>
> they will be the following after expression propagation
>
> c = a + b
> e = a + b + d
Cristina Cifuentes [1] refers to this as the "forward substitution"
method. She restricts its application to temporary variables that are
defined then used only once. Cifuentes' thesis [2] has lots of
nitty-gritty detail.
Regards,
Jeremy
[1]
@article{cifuentes1995decompilation,
title={Decompilation of binary programs},
author={Cifuentes, C. and Gough, K.J.},
journal={Software: Practice and Experience},
volume={25},
number={7},
pages={811--829},
year={1995},
doi = "10.1002/spe.4380250706",
}
[2] C Cifuentes, Reverse Compilation Techniques, PhD thesis, Faculty of
Information Technology, Queensland University of Technology, July 1994.
ftp://ftp.it.uq.edu.au/pub/CSM/dcc/decompilation_thesis.ps.gz
>
> in a situation it's not safe:
>
> c = a + b
> e = c + d
> a = 1
> some_use(e) ; we must forbid the propagation of e = c+d since a = 1
> kills c = a + b so does e = c + d
>
> Now is the question: How to efficently/correctly implement this
> propagation? What's the analysis' name in theory?
Return to the
comp.compilers page.
Search the
comp.compilers archives again.