< prev index next >
src/hotspot/share/ci/ciField.cpp
Print this page
rev 57242 : imported patch 8234049.patch
*** 217,227 ****
return false;
if (holder->name() == ciSymbol::java_lang_System())
// Never trust strangely unstable finals: System.out, etc.
return false;
// Even if general trusting is disabled, trust system-built closures in these packages.
! if (holder->is_in_package("java/lang/invoke") || holder->is_in_package("sun/invoke"))
return true;
// Trust VM unsafe anonymous classes. They are private API (jdk.internal.misc.Unsafe)
// and can't be serialized, so there is no hacking of finals going on with them.
if (holder->is_unsafe_anonymous())
return true;
--- 217,229 ----
return false;
if (holder->name() == ciSymbol::java_lang_System())
// Never trust strangely unstable finals: System.out, etc.
return false;
// Even if general trusting is disabled, trust system-built closures in these packages.
! if (holder->is_in_package("java/lang/invoke") || holder->is_in_package("sun/invoke") ||
! holder->is_in_package("jdk/internal/foreign") || holder->is_in_package("jdk/incubator/foreign") ||
! holder->is_in_package("java/lang"))
return true;
// Trust VM unsafe anonymous classes. They are private API (jdk.internal.misc.Unsafe)
// and can't be serialized, so there is no hacking of finals going on with them.
if (holder->is_unsafe_anonymous())
return true;
< prev index next >