Mercurial > hg > truffle
diff src/share/vm/runtime/arguments.cpp @ 1149:0579c695832f
Merge
author | ysr |
---|---|
date | Sat, 09 Jan 2010 09:01:41 -0800 |
parents | 75bd253e25dd e66fd840cb6b |
children | 1fc01a2425ce |
line wrap: on
line diff
--- a/src/share/vm/runtime/arguments.cpp Thu Jan 07 08:14:45 2010 -0800 +++ b/src/share/vm/runtime/arguments.cpp Sat Jan 09 09:01:41 2010 -0800 @@ -2715,6 +2715,15 @@ } ScavengeRootsInCode = 1; } +#ifdef COMPILER2 + if (EnableInvokeDynamic && DoEscapeAnalysis) { + // TODO: We need to find rules for invokedynamic and EA. For now, + // simply disable EA by default. + if (FLAG_IS_DEFAULT(DoEscapeAnalysis)) { + DoEscapeAnalysis = false; + } + } +#endif if (PrintGCDetails) { // Turn on -verbose:gc options as well @@ -2735,6 +2744,15 @@ // Set flags based on ergonomics. set_ergonomics_flags(); +#ifdef _LP64 + // XXX JSR 292 currently does not support compressed oops. + if (EnableMethodHandles && UseCompressedOops) { + if (FLAG_IS_DEFAULT(UseCompressedOops) || FLAG_IS_ERGO(UseCompressedOops)) { + UseCompressedOops = false; + } + } +#endif // _LP64 + // Check the GC selections again. if (!check_gc_consistency()) { return JNI_EINVAL; @@ -2771,9 +2789,16 @@ set_aggressive_opts_flags(); #ifdef CC_INTERP - // Biased locking is not implemented with c++ interpreter + // Clear flags not supported by the C++ interpreter + FLAG_SET_DEFAULT(ProfileInterpreter, false); FLAG_SET_DEFAULT(UseBiasedLocking, false); -#endif /* CC_INTERP */ + LP64_ONLY(FLAG_SET_DEFAULT(UseCompressedOops, false)); +#endif // CC_INTERP + +#ifdef ZERO + // Clear flags not supported by Zero + FLAG_SET_DEFAULT(TaggedStackInterpreter, false); +#endif // ZERO #ifdef COMPILER2 if (!UseBiasedLocking || EmitSync != 0) {