hotspot/src/share/vm/runtime/arguments.cpp
changeset 4573 6358f8c9ed3b
parent 4564 55dfb20908d0
child 4579 62478db2dc78
child 4578 8c2778d19ffa
equal deleted inserted replaced
4554:e9c98378f6b9 4573:6358f8c9ed3b
  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   }