equal
deleted
inserted
replaced
2697 if (!FLAG_IS_DEFAULT(ScavengeRootsInCode)) { |
2697 if (!FLAG_IS_DEFAULT(ScavengeRootsInCode)) { |
2698 warning("forcing ScavengeRootsInCode non-zero because EnableMethodHandles or AnonymousClasses is true"); |
2698 warning("forcing ScavengeRootsInCode non-zero because EnableMethodHandles or AnonymousClasses is true"); |
2699 } |
2699 } |
2700 ScavengeRootsInCode = 1; |
2700 ScavengeRootsInCode = 1; |
2701 } |
2701 } |
|
2702 #ifdef COMPILER2 |
|
2703 if (EnableInvokeDynamic && DoEscapeAnalysis) { |
|
2704 // TODO: We need to find rules for invokedynamic and EA. For now, |
|
2705 // simply disable EA by default. |
|
2706 if (FLAG_IS_DEFAULT(DoEscapeAnalysis)) { |
|
2707 DoEscapeAnalysis = false; |
|
2708 } |
|
2709 } |
|
2710 #endif |
2702 |
2711 |
2703 if (PrintGCDetails) { |
2712 if (PrintGCDetails) { |
2704 // Turn on -verbose:gc options as well |
2713 // Turn on -verbose:gc options as well |
2705 PrintGC = true; |
2714 PrintGC = true; |
2706 if (FLAG_IS_DEFAULT(TraceClassUnloading)) { |
2715 if (FLAG_IS_DEFAULT(TraceClassUnloading)) { |
2719 no_shared_spaces(); |
2728 no_shared_spaces(); |
2720 #endif // KERNEL |
2729 #endif // KERNEL |
2721 |
2730 |
2722 // Set flags based on ergonomics. |
2731 // Set flags based on ergonomics. |
2723 set_ergonomics_flags(); |
2732 set_ergonomics_flags(); |
|
2733 |
|
2734 #ifdef _LP64 |
|
2735 // XXX JSR 292 currently does not support compressed oops. |
|
2736 if (EnableMethodHandles && UseCompressedOops) { |
|
2737 if (FLAG_IS_DEFAULT(UseCompressedOops) || FLAG_IS_ERGO(UseCompressedOops)) { |
|
2738 UseCompressedOops = false; |
|
2739 } |
|
2740 } |
|
2741 #endif // _LP64 |
2724 |
2742 |
2725 // Check the GC selections again. |
2743 // Check the GC selections again. |
2726 if (!check_gc_consistency()) { |
2744 if (!check_gc_consistency()) { |
2727 return JNI_EINVAL; |
2745 return JNI_EINVAL; |
2728 } |
2746 } |
2754 |
2772 |
2755 // Set flags if Aggressive optimization flags (-XX:+AggressiveOpts) enabled. |
2773 // Set flags if Aggressive optimization flags (-XX:+AggressiveOpts) enabled. |
2756 set_aggressive_opts_flags(); |
2774 set_aggressive_opts_flags(); |
2757 |
2775 |
2758 #ifdef CC_INTERP |
2776 #ifdef CC_INTERP |
2759 // Biased locking is not implemented with c++ interpreter |
2777 // Clear flags not supported by the C++ interpreter |
|
2778 FLAG_SET_DEFAULT(ProfileInterpreter, false); |
2760 FLAG_SET_DEFAULT(UseBiasedLocking, false); |
2779 FLAG_SET_DEFAULT(UseBiasedLocking, false); |
2761 #endif /* CC_INTERP */ |
2780 LP64_ONLY(FLAG_SET_DEFAULT(UseCompressedOops, false)); |
|
2781 #endif // CC_INTERP |
|
2782 |
|
2783 #ifdef ZERO |
|
2784 // Clear flags not supported by Zero |
|
2785 FLAG_SET_DEFAULT(TaggedStackInterpreter, false); |
|
2786 #endif // ZERO |
2762 |
2787 |
2763 #ifdef COMPILER2 |
2788 #ifdef COMPILER2 |
2764 if (!UseBiasedLocking || EmitSync != 0) { |
2789 if (!UseBiasedLocking || EmitSync != 0) { |
2765 UseOptoBiasInlining = false; |
2790 UseOptoBiasInlining = false; |
2766 } |
2791 } |