aboutsummaryrefslogtreecommitdiffstats
path: root/src/proguard/evaluation/BasicInvocationUnit.java
diff options
context:
space:
mode:
authorYing Wang <wangying@google.com>2012-02-27 18:34:24 -0800
committerYing Wang <wangying@google.com>2012-02-27 18:34:24 -0800
commit9f606f95f03a75961498803e24bee6799a7c0885 (patch)
treea45f4d74feda9b76277a0c9ced55ad15d82248a1 /src/proguard/evaluation/BasicInvocationUnit.java
parentcfead78069f3dc32998dc118ee08cab3867acea2 (diff)
downloadandroid_external_proguard-jellybean.tar.gz
android_external_proguard-jellybean.tar.bz2
android_external_proguard-jellybean.zip
This reverts commit cfead78069f3dc32998dc118ee08cab3867acea2. Bug: 6079915
Diffstat (limited to 'src/proguard/evaluation/BasicInvocationUnit.java')
-rw-r--r--src/proguard/evaluation/BasicInvocationUnit.java47
1 files changed, 1 insertions, 46 deletions
diff --git a/src/proguard/evaluation/BasicInvocationUnit.java b/src/proguard/evaluation/BasicInvocationUnit.java
index 33b0d0c..bccd866 100644
--- a/src/proguard/evaluation/BasicInvocationUnit.java
+++ b/src/proguard/evaluation/BasicInvocationUnit.java
@@ -2,7 +2,7 @@
* ProGuard -- shrinking, optimization, obfuscation, and preverification
* of Java bytecode.
*
- * Copyright (c) 2002-2011 Eric Lafortune (eric@graphics.cornell.edu)
+ * Copyright (c) 2002-2009 Eric Lafortune (eric@graphics.cornell.edu)
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the Free
@@ -162,7 +162,6 @@ implements InvocationUnit,
break;
case InstructionConstants.OP_INVOKESTATIC:
- case InstructionConstants.OP_INVOKEDYNAMIC:
isStatic = true;
break;
@@ -231,31 +230,6 @@ implements InvocationUnit,
}
}
- public void visitInvokeDynamicConstant(Clazz clazz, InvokeDynamicConstant invokeDynamicConstant)
- {
- String type = invokeDynamicConstant.getType(clazz);
-
- // Count the number of parameters.
- int parameterCount = ClassUtil.internalMethodParameterCount(type);
- if (!isStatic)
- {
- parameterCount++;
- }
-
- // Pop the parameters and the class reference, in reverse order.
- for (int parameterIndex = parameterCount-1; parameterIndex >= 0; parameterIndex--)
- {
- stack.pop();
- }
-
- // Push the return value, if applicable.
- String returnType = ClassUtil.internalMethodReturnType(type);
- if (returnType.charAt(0) != ClassConstants.INTERNAL_TYPE_VOID)
- {
- stack.push(getMethodReturnValue(clazz, invokeDynamicConstant, returnType));
- }
- }
-
/**
* Sets the class through which the specified field is accessed.
@@ -366,25 +340,6 @@ implements InvocationUnit,
}
- /**
- * Returns the return value of the specified method.
- */
- protected Value getMethodReturnValue(Clazz clazz,
- InvokeDynamicConstant invokeDynamicConstant,
- String type)
- {
- // Try to figure out the class of the return type.
- Clazz[] referencedClasses = invokeDynamicConstant.referencedClasses;
-
- Clazz returnTypeClass = referencedClasses == null ? null :
- referencedClasses[referencedClasses.length - 1];
-
- return valueFactory.createValue(type,
- returnTypeClass,
- true);
- }
-
-
// Implementations for MemberVisitor.
public void visitProgramField(ProgramClass programClass, ProgramField programField)