Mercurial > hg > truffle
diff src/share/vm/runtime/reflection.cpp @ 10381:4552a7633a07
8015385: Remove RelaxAccessControlCheck for JDK 8 bytecodes
Summary: Check bytecode versions along with RelaxAccessControlCheck version
Reviewed-by: dholmes, acorn
author | hseigel |
---|---|
date | Mon, 03 Jun 2013 10:00:10 -0400 |
parents | efe8b7d64424 |
children | c1bd7b5bdc70 |
line wrap: on
line diff
--- a/src/share/vm/runtime/reflection.cpp Sat Jun 01 09:28:26 2013 -0700 +++ b/src/share/vm/runtime/reflection.cpp Mon Jun 03 10:00:10 2013 -0400 @@ -44,8 +44,6 @@ #include "runtime/signature.hpp" #include "runtime/vframe.hpp" -#define JAVA_1_5_VERSION 49 - static void trace_class_resolution(Klass* to_class) { ResourceMark rm; int line_number = -1; @@ -507,9 +505,11 @@ under_host_klass(accessee_ik, accessor)) return true; - if (RelaxAccessControlCheck || - (accessor_ik->major_version() < JAVA_1_5_VERSION && - accessee_ik->major_version() < JAVA_1_5_VERSION)) { + if ((RelaxAccessControlCheck && + accessor_ik->major_version() < Verifier::NO_RELAX_ACCESS_CTRL_CHECK_VERSION && + accessee_ik->major_version() < Verifier::NO_RELAX_ACCESS_CTRL_CHECK_VERSION) || + (accessor_ik->major_version() < Verifier::STRICTER_ACCESS_CTRL_CHECK_VERSION && + accessee_ik->major_version() < Verifier::STRICTER_ACCESS_CTRL_CHECK_VERSION)) { return classloader_only && Verifier::relax_verify_for(accessor_ik->class_loader()) && accessor_ik->protection_domain() == accessee_ik->protection_domain() &&