hotspot/src/share/vm/runtime/arguments.cpp
changeset 4578 8c2778d19ffa
parent 4576 ad45d4e37837
parent 4564 55dfb20908d0
child 4590 b24180e84c64
equal deleted inserted replaced
4577:18d854d28d4e 4578:8c2778d19ffa
  2713     if (!FLAG_IS_DEFAULT(ScavengeRootsInCode)) {
  2713     if (!FLAG_IS_DEFAULT(ScavengeRootsInCode)) {
  2714       warning("forcing ScavengeRootsInCode non-zero because EnableMethodHandles or AnonymousClasses is true");
  2714       warning("forcing ScavengeRootsInCode non-zero because EnableMethodHandles or AnonymousClasses is true");
  2715     }
  2715     }
  2716     ScavengeRootsInCode = 1;
  2716     ScavengeRootsInCode = 1;
  2717   }
  2717   }
       
  2718 #ifdef COMPILER2
       
  2719   if (EnableInvokeDynamic && DoEscapeAnalysis) {
       
  2720     // TODO: We need to find rules for invokedynamic and EA.  For now,
       
  2721     // simply disable EA by default.
       
  2722     if (FLAG_IS_DEFAULT(DoEscapeAnalysis)) {
       
  2723       DoEscapeAnalysis = false;
       
  2724     }
       
  2725   }
       
  2726 #endif
  2718 
  2727 
  2719   if (PrintGCDetails) {
  2728   if (PrintGCDetails) {
  2720     // Turn on -verbose:gc options as well
  2729     // Turn on -verbose:gc options as well
  2721     PrintGC = true;
  2730     PrintGC = true;
  2722   }
  2731   }
  2732   no_shared_spaces();
  2741   no_shared_spaces();
  2733 #endif // KERNEL
  2742 #endif // KERNEL
  2734 
  2743 
  2735   // Set flags based on ergonomics.
  2744   // Set flags based on ergonomics.
  2736   set_ergonomics_flags();
  2745   set_ergonomics_flags();
       
  2746 
       
  2747 #ifdef _LP64
       
  2748   // XXX JSR 292 currently does not support compressed oops.
       
  2749   if (EnableMethodHandles && UseCompressedOops) {
       
  2750     if (FLAG_IS_DEFAULT(UseCompressedOops) || FLAG_IS_ERGO(UseCompressedOops)) {
       
  2751       UseCompressedOops = false;
       
  2752     }
       
  2753   }
       
  2754 #endif // _LP64
  2737 
  2755 
  2738   // Check the GC selections again.
  2756   // Check the GC selections again.
  2739   if (!check_gc_consistency()) {
  2757   if (!check_gc_consistency()) {
  2740     return JNI_EINVAL;
  2758     return JNI_EINVAL;
  2741   }
  2759   }
  2769 
  2787 
  2770   // Set flags if Aggressive optimization flags (-XX:+AggressiveOpts) enabled.
  2788   // Set flags if Aggressive optimization flags (-XX:+AggressiveOpts) enabled.
  2771   set_aggressive_opts_flags();
  2789   set_aggressive_opts_flags();
  2772 
  2790 
  2773 #ifdef CC_INTERP
  2791 #ifdef CC_INTERP
  2774   // Biased locking is not implemented with c++ interpreter
  2792   // Clear flags not supported by the C++ interpreter
       
  2793   FLAG_SET_DEFAULT(ProfileInterpreter, false);
  2775   FLAG_SET_DEFAULT(UseBiasedLocking, false);
  2794   FLAG_SET_DEFAULT(UseBiasedLocking, false);
  2776 #endif /* CC_INTERP */
  2795   LP64_ONLY(FLAG_SET_DEFAULT(UseCompressedOops, false));
       
  2796 #endif // CC_INTERP
       
  2797 
       
  2798 #ifdef ZERO
       
  2799   // Clear flags not supported by Zero
       
  2800   FLAG_SET_DEFAULT(TaggedStackInterpreter, false);
       
  2801 #endif // ZERO
  2777 
  2802 
  2778 #ifdef COMPILER2
  2803 #ifdef COMPILER2
  2779   if (!UseBiasedLocking || EmitSync != 0) {
  2804   if (!UseBiasedLocking || EmitSync != 0) {
  2780     UseOptoBiasInlining = false;
  2805     UseOptoBiasInlining = false;
  2781   }
  2806   }