Class CastAndReturnInliner

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

public class CastAndReturnInliner extends Object implements BodyInterceptor
Transformers that inlines returns that cast and return an object. We take
 a = ...;
 goto label0;
 label0:
 b = (B) a;
 return b;
 
and transform it into
 a = ...;
 return a;
 
This makes it easier for the local splitter to split distinct uses of the same variable. Imagine that "a" can come from different parts of the code and have different types. To be able to find a valid typing at all, we must break apart the uses of "a".
Author:
Steven Arzt, Christian Brüggemann, Marcus Nachtigall, Markus Schmidt
  • Constructor Details

    • CastAndReturnInliner

      public CastAndReturnInliner()
  • Method Details