Class CopyPropagator

java.lang.Object
sootup.interceptors.CopyPropagator
All Implemented Interfaces:
BodyInterceptor

public class CopyPropagator extends Object implements BodyInterceptor
The CopyPropagator performs cascaded copy propagation. If the propagator encounters situations of the form: A: a = ...; ... B: x = a; ... C: ... = ... x; where a and x are each defined only once (at A and B, respectively), then it can propagate immediately without checking between B and C for redefinitions of a. In this case the propagator is global. Otherwise, if a has multiple definitions then the propagator checks for redefinitions and propagates copies only within extended basic blocks.
Author:
Zun Wang