Code Review for JEP-181: Nest-based
Access Control
Prepared by: |
dholmes on Mon May 14 04:06:20 EDT 2018 |
Workspace: |
/export/users/dh198349/valhalla/repos/jdk-jep181/open |
Compare against: |
http://hg.openjdk.java.net/jdk/jdk
|
Summary of changes: |
18340
lines changed: 17844 ins; 86 del; 410 mod; 138158 unchg |
Patch of changes: |
|
Legend: |
Modified
file |
Langtools
:
Summary of changes:
·
Define new NestHost
and NestMembers attributes
------
------ ------ ------ --- New
Patch
Raw
src/jdk.jdeps/share/classes/com/sun/tools/classfile/NestHost_attribute.java
------
------ ------ ------ --- New
Patch
Raw
src/jdk.jdeps/share/classes/com/sun/tools/classfile/NestMembers_attribute.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/jdk.compiler/share/classes/com/sun/tools/javac/util/Names.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/jdk.jdeps/share/classes/com/sun/tools/classfile/Attribute.java
·
Generate
new nestmate attributes
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/ClassWriter.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/jdk.jdeps/share/classes/com/sun/tools/classfile/ClassWriter.java
·
Disable
generation of access bridges
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Lower.java
·
Generate invokevirtual/invokeinterface for private methods
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Gen.java
·
Control new features
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Target.java
Javap
:
·
Recognise and
print nestmate attributes
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/jdk.jdeps/share/classes/com/sun/tools/javap/AttributeWriter.java
Test updates:
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
test/langtools/jdk/jshell/ClassesTest.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
test/langtools/jdk/jshell/ForwardReferenceTest.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
test/langtools/jdk/jshell/GetResourceTest.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
test/langtools/lib/annotations/annotations/classfile/ClassfileInspector.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
test/langtools/tools/javac/6917288/GraphicalInstallerTest.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
test/langtools/tools/javac/6917288/T6917288.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
test/langtools/tools/javac/7199823/InnerClassCannotBeVerified.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
test/langtools/tools/javac/MethodParameters/AttributeVisitor.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
test/langtools/tools/javac/classfiles/attributes/SourceFile/SyntheticClassTest.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
test/langtools/tools/javac/classfiles/attributes/Synthetic/AccessToPrivateInnerClassMembersTest.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
test/langtools/tools/javac/classfiles/attributes/Synthetic/AccessToPrivateSiblingsTest.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
test/langtools/tools/javac/classfiles/attributes/Synthetic/BridgeMethodsForLambdaTest.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
test/langtools/tools/javac/classfiles/attributes/innerclasses/InnerClassesInInnerClassTest.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
test/langtools/tools/javac/classfiles/attributes/innerclasses/InnerClassesInInnerEnumTest.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
test/langtools/tools/javac/classfiles/attributes/innerclasses/InnerClassesTest.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
test/langtools/tools/javac/classfiles/attributes/innerclasses/InnerClassesTestBase.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
test/langtools/tools/javac/nativeHeaders/NativeHeaderTest.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
test/langtools/tools/javac/processing/model/completionfailure/NoAbortForBadClassFile.java
------
------ ------ ------ --- New
Patch
Raw
test/langtools/tools/javac/nestmates/CheckNestmateAttrs.java
Core-libs:
Summary of
changes:
·
New Core
Reflection API
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/java.base/share/classes/java/lang/Class.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/java.base/share/native/libjava/Class.c
·
Core
reflection Access Control Update
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/java.base/share/classes/java/lang/reflect/AccessibleObject.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/java.base/share/classes/java/lang/reflect/Method.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/java.base/share/classes/jdk/internal/reflect/MethodAccessorGenerator.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/java.base/share/classes/jdk/internal/reflect/Reflection.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/java.base/share/classes/sun/invoke/util/VerifyAccess.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/java.base/share/native/libjava/Reflection.c
·
ASM Update for new attributes
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/java.base/share/classes/jdk/internal/org/objectweb/asm/Attribute.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/java.base/share/classes/jdk/internal/org/objectweb/asm/ClassReader.java
·
MethodHandle
updates for spec adjustment and handling private interface methods
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/java.base/share/classes/java/lang/invoke/DirectMethodHandle.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/java.base/share/classes/java/lang/invoke/MethodHandle.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/java.base/share/classes/java/lang/invoke/MethodHandles.java
·
Pack Update for new attributes
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/java.base/share/classes/com/sun/java/util/jar/pack/intrinsic.properties
Test
updates:
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
test/jdk/java/lang/invoke/AccessControlTest.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
test/jdk/java/lang/invoke/SpecialInterfaceCall.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
test/jdk/jdk/lambda/vm/InterfaceAccessFlagsTest.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
test/jdk/tools/pack200/BandIntegrity.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
test/jdk/tools/pack200/pack200-verifier/make/build.xml
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
test/jdk/tools/pack200/pack200-verifier/src/xmlkit/ClassReader.java
------
------ ------ ------ --- New
Patch
Raw
test/jdk/java/lang/invoke/FinalVirtualCallFromInterface.java
------
------ ------ ------ --- New
Patch
Raw
test/jdk/java/lang/invoke/PrivateInterfaceCall.java
------
------ ------ ------ --- New
Patch
Raw
test/jdk/java/lang/invoke/PrivateInterfaceCallI4.jasm
Hotspot:
Summary of changes:
·
Classfile parsing of
new attributes
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/share/classfile/classFileParser.cpp
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/share/classfile/classFileParser.hpp
·
Klass support for new
attributes, nest membership validation, and nestmate check
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/share/oops/instanceKlass.cpp
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/share/oops/instanceKlass.hpp
·
Interpreter/compiler
changes for invokeinterface use with private methods
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/cpu/aarch64/templateTable_aarch64.cpp
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/cpu/arm/templateTable_arm.cpp
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/cpu/ppc/templateTable_ppc_64.cpp
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/cpu/s390/templateTable_s390.cpp
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/cpu/sparc/templateTable_sparc.cpp
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/cpu/x86/templateTable_x86.cpp
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/share/oops/cpCache.cpp
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/share/opto/doCall.cpp
·
Core
reflection API support
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
make/hotspot/symbols/symbols-unix
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/share/include/jvm.h
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/share/prims/jvm.cpp
·
Method
resolution changes
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/share/interpreter/linkResolver.cpp
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/share/interpreter/linkResolver.hpp
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/share/code/dependencies.cpp
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/share/oops/arrayKlass.cpp
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/share/oops/arrayKlass.hpp
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/share/oops/klass.cpp
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/share/oops/klass.hpp
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/share/oops/klassVtable.cpp
·
Access
control changes
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/share/runtime/reflection.cpp
·
Miscellaneous
changes
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/share/ci/ciField.cpp
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/share/classfile/systemDictionary.cpp
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/share/classfile/vmSymbols.hpp
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/share/logging/logTag.hpp
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/share/memory/heapInspection.hpp
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/share/prims/methodHandles.cpp
Test
updates:
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
test/hotspot/jtreg/ProblemList.txt
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
test/hotspot/jtreg/compiler/jsr292/methodHandleExceptions/TestAMEnotNPE.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/ResolvedJavaTypeResolveConcreteMethodTest.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/ResolvedJavaTypeResolveMethodTest.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
test/hotspot/jtreg/runtime/SelectionResolution/InvokeInterfaceICCE.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
test/hotspot/jtreg/runtime/SelectionResolution/InvokeInterfaceSuccessTest.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
test/hotspot/jtreg/runtime/SelectionResolution/classes/selectionresolution/Template.java
New Nestmate Tests:
The new tests within
runtime/Nestmates are broken down into groups
These are the basic
functional tests that check that nestmates have access to each
others private members. They are broken down
across the kinds of members: method (instance and static), field (instance and
static) and constructors; the means of accessing (direct access via bytecode,
use of core reflection, use of MethodHandles, JNI**,
JDI**) and then within the actual test the different kinds of nestmates: nested
classes, inner classes, nested interfaces, anonymous inner classes). Then there
are some negative tests (using malformed bytecode) and some specific tests
relating to access through the inheritance hierarchy both inside and outside
the nest. So, for example we have the privateMethods
directory containing tests: TestInvoke.java, TestReflection.java, TestMethodHandles.java
etc.
** The JNI and JDI tests are
still forthcoming. There are no issues to address in these areas and initial testing
reflects that. It is just somewhat laborious to produce a complete set of
tests, so that will continue in parallel.
These are TCK style tests
that ensure we process the nestmate classfile
attributes correctly and detect all errors as specified by the JVMS.
These are also TCK style
tests that check all the rules listed in the JVMS with regard to nest
membership.
These are also TCK style
tests that check the functionality of the new methods added to the core
reflection API for nestmates.
These are functional tests
for the updated method selection rules that come with nestmates. Logically
these would be new testcases in the existing SelectionResolution
tests, but those tests are not amenable to easy modification, so standalone
tests were written.
Checks that functionality
that has changed under nestmates still works correctly for classes compiled
with earlier JDK's. The only test here is testing private Lookups with MethodHandles (and it served as a regression test for an
earlier mistake in how the Lookup changes were done).
For some tests there are
additional testing variants, such as interpreted versus compiled mode; and for
core reflection method invocations the two different kinds of accessors used
(native accessors and generated accessors).
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/classFileParsing/BadNestHost.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/classFileParsing/BadNestHostLength.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/classFileParsing/BadNestMembersEntry.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/classFileParsing/BadNestMembersLength.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/classFileParsing/ConflictingAttributesInNestHost.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/classFileParsing/ConflictingAttributesInNestMember.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/classFileParsing/TestFinalMethodOverride.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/classFileParsing/TestNestmateAttributes.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/classFileParsing/TwoNestHost.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/classFileParsing/TwoNestMembers.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/legacy/TestPrivateLookup.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/membership/CallerMissingHost.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/membership/CallerNoHost.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/membership/CallerNotInstanceHost.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/membership/CallerNotOurHost.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/membership/CallerSelfHost.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/membership/InvalidNestHost.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/membership/PackagedNestHost.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/membership/PackagedNestHost.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/membership/PackagedNestHost2.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/membership/PackagedNestHost2Member.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/membership/PackagedNestHostMember.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/membership/TargetMissingHost.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/membership/TargetNoHost.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/membership/TargetNotInstanceHost.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/membership/TargetNotOurHost.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/membership/TargetSelfHost.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/membership/TestNestmateMembership.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/methodSelection/PA_I.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/methodSelection/PB_A.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/methodSelection/PB_A_I.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/methodSelection/PB_A_PI.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/methodSelection/PB_PA_I.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/methodSelection/PC_B_A.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/methodSelection/PC_B_PA.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/methodSelection/PC_PB_A.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/methodSelection/TestInterfaceMethodSelection.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/methodSelection/TestMethodSelection.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/privateConstructors/ExternalSub.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/privateConstructors/ExternalSuper.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/privateConstructors/TestConstructorHierarchy.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/privateConstructors/TestInvokeSpecial.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/privateConstructors/TestMethodHandles.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/privateConstructors/TestReflection.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/privateFields/TestMethodHandles.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/privateFields/TestPrivateField.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/privateFields/TestReflection.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/privateMethods/ExternalSub.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/privateMethods/ExternalSuper.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/privateMethods/MissingMethod.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/privateMethods/MissingMethodWithSuper.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/privateMethods/MissingNestHost.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/privateMethods/TestInvoke.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/privateMethods/TestInvokeErrors.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/privateMethods/TestInvokeHierarchy.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/privateMethods/TestMethodHandles.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/privateMethods/TestMethodHandlesHierarchy.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/privateMethods/TestReflection.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/privateMethods/TestReflectionHierarchy.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/privateStaticFields/TestMethodHandles.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/privateStaticFields/TestPrivateStaticField.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/privateStaticFields/TestReflection.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/privateStaticMethods/TestInvokeStatic.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/privateStaticMethods/TestMethodHandles.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/privateStaticMethods/TestReflection.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/reflectionAPI/HostOfMemberMalformedHost.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/reflectionAPI/HostOfMemberMissingHost.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/reflectionAPI/HostOfMemberNoHost.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/reflectionAPI/HostOfMemberNotInstanceHost.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/reflectionAPI/HostOfMemberNotOurHost.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/reflectionAPI/HostWithDuplicateMembers.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/reflectionAPI/HostWithSelfMember.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/reflectionAPI/Hosts.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/reflectionAPI/InvalidNestHost.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/reflectionAPI/MalformedHost.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/reflectionAPI/MemberMalformedHost.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/reflectionAPI/MemberMissingHost.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/reflectionAPI/MemberNoHost.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/reflectionAPI/MemberNotInstanceHost.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/reflectionAPI/MemberNotOurHost.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/reflectionAPI/PackagedNestHost.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/reflectionAPI/PackagedNestHost.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/reflectionAPI/PackagedNestHost2.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/reflectionAPI/PackagedNestHost2Member.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/reflectionAPI/PackagedNestHostMember.jcod
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/reflectionAPI/SampleNest.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/reflectionAPI/TestReflectionAPI.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/reflectionAPI/TestSecurityManagerChecks.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/reflectionAPI/empty.policy
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/reflectionAPI/testPkg/Host.java
------
------ ------ ------ --- New
Patch
Raw
test/hotspot/jtreg/runtime/Nestmates/reflectionAPI/testPkg/Singleton.java
Serviceability:
The JVM TI / JDWP
/ Instrument API’s for redefining and transforming classes are updated to
prohibit the changing of nestmate attributes.
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
make/data/jdwp/jdwp.spec
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/share/prims/jvmti.xml
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/share/prims/jvmtiClassFileReconstituter.cpp
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/share/prims/jvmtiClassFileReconstituter.hpp
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/share/prims/jvmtiExport.cpp
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/share/prims/jvmtiH.xsl
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/share/prims/jvmtiRedefineClasses.cpp
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/hotspot/share/prims/jvmtiRedefineClasses.hpp
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/java.instrument/share/classes/java/lang/instrument/Instrumentation.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/java.instrument/share/native/libinstrument/JavaExceptions.c
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/jdk.jdi/share/classes/com/sun/jdi/VirtualMachine.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/jdk.jdi/share/classes/com/sun/tools/jdi/VirtualMachineImpl.java
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/jdk.jdwp.agent/share/native/libjdwp/error_messages.c
Cdiffs Udiffs Sdiffs Frames
Old
New
Patch
Raw
src/jdk.jdwp.agent/share/native/libjdwp/util.c
New Tests:
------
------ ------ ------ --- New
Patch
Raw
test/jdk/java/lang/instrument/RedefineNestmateAttr/Host/Host.java
------
------ ------ ------ --- New
Patch
Raw
test/jdk/java/lang/instrument/RedefineNestmateAttr/Host/redef/Host.java
------
------ ------ ------ --- New
Patch
Raw
test/jdk/java/lang/instrument/RedefineNestmateAttr/HostA/Host.java
------
------ ------ ------ --- New
Patch
Raw
test/jdk/java/lang/instrument/RedefineNestmateAttr/HostA/redef/Host.java
------
------ ------ ------ --- New
Patch
Raw
test/jdk/java/lang/instrument/RedefineNestmateAttr/HostAB/Host.java
------
------ ------ ------ --- New
Patch
Raw
test/jdk/java/lang/instrument/RedefineNestmateAttr/HostAB/redef/Host.java
------
------ ------ ------ --- New
Patch
Raw
test/jdk/java/lang/instrument/RedefineNestmateAttr/HostABC/Host.java
------
------ ------ ------ --- New
Patch
Raw
test/jdk/java/lang/instrument/RedefineNestmateAttr/HostABC/redef/Host.java
------
------ ------ ------ --- New
Patch
Raw
test/jdk/java/lang/instrument/RedefineNestmateAttr/HostABCD/redef/Host.java
------
------ ------ ------ --- New
Patch
Raw
test/jdk/java/lang/instrument/RedefineNestmateAttr/HostABD/redef/Host.java
------
------ ------ ------ --- New
Patch
Raw
test/jdk/java/lang/instrument/RedefineNestmateAttr/HostAC/redef/Host.java
------
------ ------ ------ --- New
Patch
Raw
test/jdk/java/lang/instrument/RedefineNestmateAttr/HostACB/redef/Host.java
------
------ ------ ------ --- New
Patch
Raw
test/jdk/java/lang/instrument/RedefineNestmateAttr/HostB/redef/Host.java
------
------ ------ ------ --- New
Patch
Raw
test/jdk/java/lang/instrument/RedefineNestmateAttr/HostBA/redef/Host.java
------
------ ------ ------ --- New
Patch
Raw
test/jdk/java/lang/instrument/RedefineNestmateAttr/HostBAC/redef/Host.java
------
------ ------ ------ --- New
Patch
Raw
test/jdk/java/lang/instrument/RedefineNestmateAttr/HostBCA/redef/Host.java
------
------ ------ ------ --- New
Patch
Raw
test/jdk/java/lang/instrument/RedefineNestmateAttr/HostCAB/redef/Host.java
------
------ ------ ------ --- New
Patch
Raw
test/jdk/java/lang/instrument/RedefineNestmateAttr/HostCBA/redef/Host.java
------
------ ------ ------ --- New
Patch
Raw
test/jdk/java/lang/instrument/RedefineNestmateAttr/TestNestmateAttr.java