changeset 15784:fb530b9fa474

ResolvedJavaType.resolveMethod: fix javadoc, add assert in native code. update changelog
author Gilles Duboscq <duboscq@ssw.jku.at>
date Tue, 20 May 2014 13:13:28 +0200
parents 99662e393b52
children 7a6f6a7ef886
files CHANGELOG.md graal/com.oracle.graal.api.meta/src/com/oracle/graal/api/meta/ResolvedJavaType.java src/share/vm/graal/graalCompilerToVM.cpp
diffstat 3 files changed, 3 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/CHANGELOG.md	Tue May 20 12:40:07 2014 +0200
+++ b/CHANGELOG.md	Tue May 20 13:13:28 2014 +0200
@@ -5,6 +5,7 @@
 * Made initialization of Graal runtime lazy in hosted mode.
 * Added supported for new 'jrelibrary' dependency type in mx/projects.
 * Java projects with compliance level higher than the JDKs specified by JAVA_HOME and EXTRA_JAVA_HOMES are ignored once mx/projects has been processed.
+* ResolvedJavaType.resolveMethod now takes a context type used to perform access checks. It now works correctly regarding default methods.
 
 ### Truffle
 * `truffle.jar`: strip out build-time only dependency into a seperated JAR file (`truffle-dsl-processor.jar`)
--- a/graal/com.oracle.graal.api.meta/src/com/oracle/graal/api/meta/ResolvedJavaType.java	Tue May 20 12:40:07 2014 +0200
+++ b/graal/com.oracle.graal.api.meta/src/com/oracle/graal/api/meta/ResolvedJavaType.java	Tue May 20 13:13:28 2014 +0200
@@ -211,6 +211,7 @@
      * {@link #findUniqueConcreteMethod(ResolvedJavaMethod)}.
      *
      * @param method the method to select the implementation of
+     * @param callerType the caller or context type used to perform access checks
      * @return the concrete method that would be selected at runtime, or {@code null} if there is no
      *         concrete implementation of {@code method} in this type or any of its superclasses
      */
--- a/src/share/vm/graal/graalCompilerToVM.cpp	Tue May 20 12:40:07 2014 +0200
+++ b/src/share/vm/graal/graalCompilerToVM.cpp	Tue May 20 13:13:28 2014 +0200
@@ -471,7 +471,7 @@
 C2V_VMENTRY(jint, getVtableIndexForInterface, (JNIEnv *, jobject, jlong metaspace_klass, jlong metaspace_method))
   Klass* klass = (Klass*) metaspace_klass;
   Method* method = (Method*) metaspace_method;
-
+  assert(!klass->is_interface(), "");
   return LinkResolver::vtable_index_of_interface_method(klass, method);
 C2V_END