markEscapingParameters(method, offset, 0); break; markEscapingParameters(method, offset, 0); break;
markEscapingParameters(method, offset, 0); break; markEscapingParameters(method, offset, 0); break;
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); } }
markEscapingParameters(method, offset, 0); break; markEscapingParameters(method, offset, 0); break;
markEscapingParameters(method, offset, 0); break; markEscapingParameters(method, offset, 0); break;
markEscapingParameters(method, offset, 0); break; markEscapingParameters(method, offset, 0); break;
markEscapingParameters(method, offset, 0); break; markEscapingParameters(method, offset, 0); break;
public void visitParameter(Clazz clazz, Member member, int parameterIndex, int parameterCount, int parameterOffset, int parameterSize, String parameterType, Clazz referencedClass) { if (!ClassUtil.isInternalPrimitiveType(parameterType.charAt(0))) { Method method = (Method)member; // Is the parameter escaping from the method, // or is it returned and then escaping? if (isParameterEscaping(method, parameterIndex) || (isParameterReturned(method, parameterIndex) && isReturnValueEscaping)) { markEscapingParameters(referencingMethod, referencingOffset, parameterSize - parameterOffset - 1); } // Is the parameter being modified in the method. // or is it returned and then modified? if (isParameterModified(method, parameterIndex) || (isParameterReturned(method, parameterIndex) && isReturnValueModified)) { markModifiedParameters(referencingMethod, referencingOffset, parameterSize - parameterOffset - 1); } } }
/** * Marks the producing reference parameters (and the classes) of the * specified stack entry at the given instruction offset. */ private void markEscapingParameters(Method method, int consumerOffset, int stackEntryIndex) { TracedStack stackBefore = partialEvaluator.getStackBefore(consumerOffset); Value stackEntry = stackBefore.getTop(stackEntryIndex); if (stackEntry.computationalType() == Value.TYPE_REFERENCE) { ReferenceValue referenceValue = stackEntry.referenceValue(); // The null reference value may not have a trace value. if (referenceValue.isNull() != Value.ALWAYS) { markEscapingParameters(method, referenceValue); } } }
public void visitParameter(Clazz clazz, Member member, int parameterIndex, int parameterCount, int parameterOffset, int parameterSize, String parameterType, Clazz referencedClass) { if (!ClassUtil.isInternalPrimitiveType(parameterType.charAt(0))) { Method method = (Method)member; // Is the parameter escaping from the method, // or is it returned and then escaping? if (isParameterEscaping(method, parameterIndex) || (isParameterReturned(method, parameterIndex) && isReturnValueEscaping)) { markEscapingParameters(referencingMethod, referencingOffset, parameterSize - parameterOffset - 1); } // Is the parameter being modified in the method. // or is it returned and then modified? if (isParameterModified(method, parameterIndex) || (isParameterReturned(method, parameterIndex) && isReturnValueModified)) { markModifiedParameters(referencingMethod, referencingOffset, parameterSize - parameterOffset - 1); } } }
public void visitParameter(Clazz clazz, Member member, int parameterIndex, int parameterCount, int parameterOffset, int parameterSize, String parameterType, Clazz referencedClass) { if (!ClassUtil.isInternalPrimitiveType(parameterType.charAt(0))) { Method method = (Method)member; // Is the parameter escaping from the method, // or is it returned and then escaping? if (isParameterEscaping(method, parameterIndex) || (isParameterReturned(method, parameterIndex) && isReturnValueEscaping)) { markEscapingParameters(referencingMethod, referencingOffset, parameterSize - parameterOffset - 1); } // Is the parameter being modified in the method. // or is it returned and then modified? if (isParameterModified(method, parameterIndex) || (isParameterReturned(method, parameterIndex) && isReturnValueModified)) { markModifiedParameters(referencingMethod, referencingOffset, parameterSize - parameterOffset - 1); } } }
/** * Marks the producing reference parameters (and the classes) of the * specified stack entry at the given instruction offset. */ private void markEscapingParameters(Method method, int consumerOffset, int stackEntryIndex) { TracedStack stackBefore = partialEvaluator.getStackBefore(consumerOffset); Value stackEntry = stackBefore.getTop(stackEntryIndex); if (stackEntry.computationalType() == Value.TYPE_REFERENCE) { ReferenceValue referenceValue = stackEntry.referenceValue(); // The null reference value may not have a trace value. if (referenceValue.isNull() != Value.ALWAYS) { markEscapingParameters(method, referenceValue); } } }
/** * Marks the producing reference parameters (and the classes) of the * specified stack entry at the given instruction offset. */ private void markEscapingParameters(Method method, int consumerOffset, int stackEntryIndex) { TracedStack stackBefore = partialEvaluator.getStackBefore(consumerOffset); Value stackEntry = stackBefore.getTop(stackEntryIndex); if (stackEntry.computationalType() == Value.TYPE_REFERENCE) { ReferenceValue referenceValue = stackEntry.referenceValue(); // The null reference value may not have a trace value. if (referenceValue.isNull() != Value.ALWAYS) { markEscapingParameters(method, referenceValue); } } }
markEscapingParameters(referencingMethod, referencingOffset, stackEntryIndex);
markEscapingParameters(referencingMethod, referencingOffset, stackEntryIndex);
markEscapingParameters(referencingMethod, referencingOffset, stackEntryIndex);