public void visitInvokeDynamicConstant(Clazz clazz, InvokeDynamicConstant invokeDynamicConstant) { markAnythingModified(referencingMethod); }
public void visitInvokeDynamicConstant(Clazz clazz, InvokeDynamicConstant invokeDynamicConstant) { markAnythingModified(referencingMethod); }
public void visitInvokeDynamicConstant(Clazz clazz, InvokeDynamicConstant invokeDynamicConstant) { markAnythingModified(referencingMethod); }
public void visitStringConstant(Clazz clazz, StringConstant stringConstant) { Clazz referencedClass = stringConstant.referencedClass; // If a static initializer may modify anything, so does the referencing // method. if (referencedClass == null || SideEffectClassChecker.mayHaveSideEffects(clazz, referencedClass)) { markAnythingModified(referencingMethod); } }
public void visitClassConstant(Clazz clazz, ClassConstant classConstant) { Clazz referencedClass = classConstant.referencedClass; // If a static initializer may modify anything, so does the referencing // method. if (referencedClass == null || SideEffectClassChecker.mayHaveSideEffects(clazz, referencedClass)) { markAnythingModified(referencingMethod); } }
public void visitClassConstant(Clazz clazz, ClassConstant classConstant) { Clazz referencedClass = classConstant.referencedClass; // If a static initializer may modify anything, so does the referencing // method. if (referencedClass == null || SideEffectClassChecker.mayHaveSideEffects(clazz, referencedClass)) { markAnythingModified(referencingMethod); } }
public void visitClassConstant(Clazz clazz, ClassConstant classConstant) { Clazz referencedClass = classConstant.referencedClass; // If a static initializer may modify anything, so does the referencing // method. if (referencedClass == null || SideEffectClassChecker.mayHaveSideEffects(clazz, referencedClass)) { markAnythingModified(referencingMethod); } }
public void visitStringConstant(Clazz clazz, StringConstant stringConstant) { Clazz referencedClass = stringConstant.referencedClass; // If a static initializer may modify anything, so does the referencing // method. if (referencedClass == null || SideEffectClassChecker.mayHaveSideEffects(clazz, referencedClass)) { markAnythingModified(referencingMethod); } }
public void visitStringConstant(Clazz clazz, StringConstant stringConstant) { Clazz referencedClass = stringConstant.referencedClass; // If a static initializer may modify anything, so does the referencing // method. if (referencedClass == null || SideEffectClassChecker.mayHaveSideEffects(clazz, referencedClass)) { markAnythingModified(referencingMethod); } }
public void visitProgramMethod(ProgramClass programClass, ProgramMethod programMethod) { int accessFlags = programMethod.getAccessFlags(); // Is it a native method? if ((accessFlags & ClassConstants.ACC_NATIVE) != 0) { // Mark all parameters. markModifiedParameters(programMethod, -1L); markEscapingParameters(programMethod, -1L); markReturnedParameters(programMethod, -1L); markAnythingModified(programMethod); } }
public void visitProgramMethod(ProgramClass programClass, ProgramMethod programMethod) { int accessFlags = programMethod.getAccessFlags(); // Is it a native method? if ((accessFlags & ClassConstants.ACC_NATIVE) != 0) { // Mark all parameters. markModifiedParameters(programMethod, -1L); markEscapingParameters(programMethod, -1L); markReturnedParameters(programMethod, -1L); markAnythingModified(programMethod); } }
public void visitProgramMethod(ProgramClass programClass, ProgramMethod programMethod) { int accessFlags = programMethod.getAccessFlags(); // Is it a native method? if ((accessFlags & ClassConstants.ACC_NATIVE) != 0) { // Mark all parameters. markModifiedParameters(programMethod, -1L); markEscapingParameters(programMethod, -1L); markReturnedParameters(programMethod, -1L); markAnythingModified(programMethod); } }
referencedMethod)) markAnythingModified(referencingMethod);
referencedMethod)) markAnythingModified(referencingMethod);
referencedMethod)) markAnythingModified(referencingMethod);
/** * Marks the producing parameters of the given reference value. */ private void markModifiedParameters(Method method, ReferenceValue referenceValue) { TracedReferenceValue tracedReferenceValue = (TracedReferenceValue)referenceValue; InstructionOffsetValue producers = tracedReferenceValue.getTraceValue().instructionOffsetValue(); int producerCount = producers.instructionOffsetCount(); for (int index = 0; index < producerCount; index++) { if (producers.isMethodParameter(index)) { // We know exactly which parameter is being modified. markParameterModified(method, producers.methodParameter(index)); } else if (!producers.isNewinstance(index) && !producers.isExceptionHandler(index)) { // If some unknown instance is modified, any escaping parameters // may be modified. markModifiedParameters(method, getEscapingParameters(method)); markAnythingModified(method); } } }
/** * Marks the producing parameters of the given reference value. */ private void markModifiedParameters(Method method, ReferenceValue referenceValue) { TracedReferenceValue tracedReferenceValue = (TracedReferenceValue)referenceValue; InstructionOffsetValue producers = tracedReferenceValue.getTraceValue().instructionOffsetValue(); int producerCount = producers.instructionOffsetCount(); for (int index = 0; index < producerCount; index++) { if (producers.isMethodParameter(index)) { // We know exactly which parameter is being modified. markParameterModified(method, producers.methodParameter(index)); } else if (!producers.isNewinstance(index) && !producers.isExceptionHandler(index)) { // If some unknown instance is modified, any escaping parameters // may be modified. markModifiedParameters(method, getEscapingParameters(method)); markAnythingModified(method); } } }
/** * Marks the producing parameters of the given reference value. */ private void markModifiedParameters(Method method, ReferenceValue referenceValue) { TracedReferenceValue tracedReferenceValue = (TracedReferenceValue)referenceValue; InstructionOffsetValue producers = tracedReferenceValue.getTraceValue().instructionOffsetValue(); int producerCount = producers.instructionOffsetCount(); for (int index = 0; index < producerCount; index++) { if (producers.isMethodParameter(index)) { // We know exactly which parameter is being modified. markParameterModified(method, producers.methodParameter(index)); } else if (!producers.isNewinstance(index) && !producers.isExceptionHandler(index)) { // If some unknown instance is modified, any escaping parameters // may be modified. markModifiedParameters(method, getEscapingParameters(method)); markAnythingModified(method); } } }