public ClassVisitor createClassVisitor() { // Perform partial evaluation again, now loading any previously stored // values for fields, method parameters, and method return values. ValueFactory valueFactory = new IdentifiedValueFactory(); SimplifiedInvocationUnit loadingInvocationUnit = new LoadingInvocationUnit(valueFactory, fieldPropagationValue, methodPropagationParameter, methodPropagationReturnvalue); // Trace the construction of reference values. ReferenceTracingValueFactory referenceTracingValueFactory = new ReferenceTracingValueFactory(valueFactory); return new AllMethodVisitor( new AllAttributeVisitor( new DebugAttributeVisitor("Shrinking code", new OptimizationCodeAttributeFilter( new EvaluationShrinker( new InstructionUsageMarker( new PartialEvaluator(referenceTracingValueFactory, new ParameterTracingInvocationUnit(loadingInvocationUnit), !codeSimplificationAdvanced, referenceTracingValueFactory), true), true, deletedCounter, addedCounter))))); } };
public ClassVisitor createClassVisitor() { // Perform partial evaluation again, now loading any previously stored // values for fields, method parameters, and method return values. ValueFactory valueFactory = new IdentifiedValueFactory(); SimplifiedInvocationUnit loadingInvocationUnit = new LoadingInvocationUnit(valueFactory, fieldPropagationValue, methodPropagationParameter, methodPropagationReturnvalue); // Trace the construction of reference values. ReferenceTracingValueFactory referenceTracingValueFactory = new ReferenceTracingValueFactory(valueFactory); return new AllMethodVisitor( new AllAttributeVisitor( new DebugAttributeVisitor("Shrinking code", new OptimizationCodeAttributeFilter( new EvaluationShrinker( new InstructionUsageMarker( new PartialEvaluator(referenceTracingValueFactory, new ParameterTracingInvocationUnit(loadingInvocationUnit), !codeSimplificationAdvanced, referenceTracingValueFactory), true), true, deletedCounter, addedCounter))))); } };
public ClassVisitor createClassVisitor() { // Perform partial evaluation again, now loading any previously stored // values for fields, method parameters, and method return values. ValueFactory valueFactory = new IdentifiedValueFactory(); SimplifiedInvocationUnit loadingInvocationUnit = new LoadingInvocationUnit(valueFactory, fieldPropagationValue, methodPropagationParameter, methodPropagationReturnvalue); // Trace the construction of reference values. ReferenceTracingValueFactory referenceTracingValueFactory = new ReferenceTracingValueFactory(valueFactory); return new AllMethodVisitor( new AllAttributeVisitor( new DebugAttributeVisitor("Shrinking code", new OptimizationCodeAttributeFilter( new EvaluationShrinker( new InstructionUsageMarker( new PartialEvaluator(referenceTracingValueFactory, new ParameterTracingInvocationUnit(loadingInvocationUnit), !codeSimplificationAdvanced, referenceTracingValueFactory), true), true, deletedCounter, addedCounter))))); } };
new AllMethodVisitor( new AllAttributeVisitor( new EvaluationShrinker( new PartialEvaluator(valueFactory, loadingInvocationUnit, !codeSimplificationAdvanced), deletedCounter, addedCounter))));