mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-27 06:45:07 +02:00
6863023: need non-perm oops in code cache for JSR 292
Make a special root-list for those few nmethods which might contain non-perm oops. Reviewed-by: twisti, kvn, never, jmasa, ysr
This commit is contained in:
parent
1cf5b7ae11
commit
e261aecad8
74 changed files with 979 additions and 279 deletions
|
@ -2639,16 +2639,22 @@ jint Arguments::parse(const JavaVMInitArgs* args) {
|
|||
|
||||
if (EnableInvokeDynamic && !EnableMethodHandles) {
|
||||
if (!FLAG_IS_DEFAULT(EnableMethodHandles)) {
|
||||
warning("forcing EnableMethodHandles true to allow EnableInvokeDynamic");
|
||||
warning("forcing EnableMethodHandles true because EnableInvokeDynamic is true");
|
||||
}
|
||||
EnableMethodHandles = true;
|
||||
}
|
||||
if (EnableMethodHandles && !AnonymousClasses) {
|
||||
if (!FLAG_IS_DEFAULT(AnonymousClasses)) {
|
||||
warning("forcing AnonymousClasses true to enable EnableMethodHandles");
|
||||
warning("forcing AnonymousClasses true because EnableMethodHandles is true");
|
||||
}
|
||||
AnonymousClasses = true;
|
||||
}
|
||||
if ((EnableMethodHandles || AnonymousClasses) && ScavengeRootsInCode == 0) {
|
||||
if (!FLAG_IS_DEFAULT(ScavengeRootsInCode)) {
|
||||
warning("forcing ScavengeRootsInCode non-zero because EnableMethodHandles or AnonymousClasses is true");
|
||||
}
|
||||
ScavengeRootsInCode = 1;
|
||||
}
|
||||
|
||||
if (PrintGCDetails) {
|
||||
// Turn on -verbose:gc options as well
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue