comparison src/share/vm/runtime/arguments.cpp @ 2416:38fea01eb669

6817525: turn on method handle functionality by default for JSR 292 Summary: After appropriate testing, we need to turn on EnableMethodHandles and EnableInvokeDynamic by default. Reviewed-by: never, kvn, jrose, phh
author twisti
date Thu, 31 Mar 2011 02:31:57 -0700
parents 924777755fad
children 98c560260039 f177ddd59c60
comparison
equal deleted inserted replaced
2415:09f96c3ff1ad 2416:38fea01eb669
2972 UseCounterDecay = false; 2972 UseCounterDecay = false;
2973 } 2973 }
2974 } 2974 }
2975 #endif // PRODUCT 2975 #endif // PRODUCT
2976 2976
2977 if (EnableInvokeDynamic && !EnableMethodHandles) { 2977 // Transitional
2978 if (!FLAG_IS_DEFAULT(EnableMethodHandles)) { 2978 if (EnableMethodHandles || AnonymousClasses) {
2979 warning("forcing EnableMethodHandles true because EnableInvokeDynamic is true"); 2979 if (!EnableInvokeDynamic && !FLAG_IS_DEFAULT(EnableInvokeDynamic)) {
2980 } 2980 warning("EnableMethodHandles and AnonymousClasses are obsolete. Keeping EnableInvokeDynamic disabled.");
2981 EnableMethodHandles = true; 2981 } else {
2982 } 2982 EnableInvokeDynamic = true;
2983 if (EnableMethodHandles && !AnonymousClasses) { 2983 }
2984 if (!FLAG_IS_DEFAULT(AnonymousClasses)) { 2984 }
2985 warning("forcing AnonymousClasses true because EnableMethodHandles is true"); 2985
2986 } 2986 // JSR 292 is not supported before 1.7
2987 AnonymousClasses = true; 2987 if (!JDK_Version::is_gte_jdk17x_version()) {
2988 } 2988 if (EnableInvokeDynamic) {
2989 if ((EnableMethodHandles || AnonymousClasses) && ScavengeRootsInCode == 0) { 2989 if (!FLAG_IS_DEFAULT(EnableInvokeDynamic)) {
2990 warning("JSR 292 is not supported before 1.7. Disabling support.");
2991 }
2992 EnableInvokeDynamic = false;
2993 }
2994 }
2995
2996 if (EnableInvokeDynamic && ScavengeRootsInCode == 0) {
2990 if (!FLAG_IS_DEFAULT(ScavengeRootsInCode)) { 2997 if (!FLAG_IS_DEFAULT(ScavengeRootsInCode)) {
2991 warning("forcing ScavengeRootsInCode non-zero because EnableMethodHandles or AnonymousClasses is true"); 2998 warning("forcing ScavengeRootsInCode non-zero because EnableInvokeDynamic is true");
2992 } 2999 }
2993 ScavengeRootsInCode = 1; 3000 ScavengeRootsInCode = 1;
2994 } 3001 }
2995 if (!JavaObjectsInPerm && ScavengeRootsInCode == 0) { 3002 if (!JavaObjectsInPerm && ScavengeRootsInCode == 0) {
2996 if (!FLAG_IS_DEFAULT(ScavengeRootsInCode)) { 3003 if (!FLAG_IS_DEFAULT(ScavengeRootsInCode)) {