hotspot/src/share/vm/runtime/arguments.cpp
changeset 30248 5c6dacbd17ae
parent 30242 5b15a65d4373
parent 30227 fdb68fee3e41
child 30253 b82dccab7b1d
equal deleted inserted replaced
30247:9925b07bba5b 30248:5c6dacbd17ae
    90 // These parameters are reset in method parse_vm_init_args(JavaVMInitArgs*)
    90 // These parameters are reset in method parse_vm_init_args(JavaVMInitArgs*)
    91 bool   Arguments::_AlwaysCompileLoopMethods     = AlwaysCompileLoopMethods;
    91 bool   Arguments::_AlwaysCompileLoopMethods     = AlwaysCompileLoopMethods;
    92 bool   Arguments::_UseOnStackReplacement        = UseOnStackReplacement;
    92 bool   Arguments::_UseOnStackReplacement        = UseOnStackReplacement;
    93 bool   Arguments::_BackgroundCompilation        = BackgroundCompilation;
    93 bool   Arguments::_BackgroundCompilation        = BackgroundCompilation;
    94 bool   Arguments::_ClipInlining                 = ClipInlining;
    94 bool   Arguments::_ClipInlining                 = ClipInlining;
       
    95 intx   Arguments::_Tier3InvokeNotifyFreqLog     = Tier3InvokeNotifyFreqLog;
       
    96 intx   Arguments::_Tier4InvocationThreshold     = Tier4InvocationThreshold;
    95 
    97 
    96 char*  Arguments::SharedArchivePath             = NULL;
    98 char*  Arguments::SharedArchivePath             = NULL;
    97 
    99 
    98 AgentLibraryList Arguments::_libraryList;
   100 AgentLibraryList Arguments::_libraryList;
    99 AgentLibraryList Arguments::_agentList;
   101 AgentLibraryList Arguments::_agentList;
  1010   // use the saved values
  1012   // use the saved values
  1011   ClipInlining               = Arguments::_ClipInlining;
  1013   ClipInlining               = Arguments::_ClipInlining;
  1012   AlwaysCompileLoopMethods   = Arguments::_AlwaysCompileLoopMethods;
  1014   AlwaysCompileLoopMethods   = Arguments::_AlwaysCompileLoopMethods;
  1013   UseOnStackReplacement      = Arguments::_UseOnStackReplacement;
  1015   UseOnStackReplacement      = Arguments::_UseOnStackReplacement;
  1014   BackgroundCompilation      = Arguments::_BackgroundCompilation;
  1016   BackgroundCompilation      = Arguments::_BackgroundCompilation;
       
  1017   if (TieredCompilation) {
       
  1018     if (FLAG_IS_DEFAULT(Tier3InvokeNotifyFreqLog)) {
       
  1019       Tier3InvokeNotifyFreqLog = Arguments::_Tier3InvokeNotifyFreqLog;
       
  1020     }
       
  1021     if (FLAG_IS_DEFAULT(Tier4InvocationThreshold)) {
       
  1022       Tier4InvocationThreshold = Arguments::_Tier4InvocationThreshold;
       
  1023     }
       
  1024   }
  1015 
  1025 
  1016   // Change from defaults based on mode
  1026   // Change from defaults based on mode
  1017   switch (mode) {
  1027   switch (mode) {
  1018   default:
  1028   default:
  1019     ShouldNotReachHere();
  1029     ShouldNotReachHere();
  2523   // Save default settings for some mode flags
  2533   // Save default settings for some mode flags
  2524   Arguments::_AlwaysCompileLoopMethods = AlwaysCompileLoopMethods;
  2534   Arguments::_AlwaysCompileLoopMethods = AlwaysCompileLoopMethods;
  2525   Arguments::_UseOnStackReplacement    = UseOnStackReplacement;
  2535   Arguments::_UseOnStackReplacement    = UseOnStackReplacement;
  2526   Arguments::_ClipInlining             = ClipInlining;
  2536   Arguments::_ClipInlining             = ClipInlining;
  2527   Arguments::_BackgroundCompilation    = BackgroundCompilation;
  2537   Arguments::_BackgroundCompilation    = BackgroundCompilation;
       
  2538   if (TieredCompilation) {
       
  2539     Arguments::_Tier3InvokeNotifyFreqLog = Tier3InvokeNotifyFreqLog;
       
  2540     Arguments::_Tier4InvocationThreshold = Tier4InvocationThreshold;
       
  2541   }
  2528 
  2542 
  2529   // Setup flags for mixed which is the default
  2543   // Setup flags for mixed which is the default
  2530   set_mode_flags(_mixed);
  2544   set_mode_flags(_mixed);
  2531 
  2545 
  2532   // Parse JAVA_TOOL_OPTIONS environment variable (if present)
  2546   // Parse JAVA_TOOL_OPTIONS environment variable (if present)
  3084          FLAG_SET_CMDLINE(size_t, NewSize,
  3098          FLAG_SET_CMDLINE(size_t, NewSize,
  3085                                 ((julong)MaxHeapSize / (julong)8) * (julong)3);
  3099                                 ((julong)MaxHeapSize / (julong)8) * (julong)3);
  3086          FLAG_SET_CMDLINE(size_t, MaxNewSize, NewSize);
  3100          FLAG_SET_CMDLINE(size_t, MaxNewSize, NewSize);
  3087       }
  3101       }
  3088 
  3102 
  3089 #ifndef _ALLBSD_SOURCE  // UseLargePages is not yet supported on BSD.
  3103 #if !defined(_ALLBSD_SOURCE) && !defined(AIX)  // UseLargePages is not yet supported on BSD and AIX.
  3090       FLAG_SET_DEFAULT(UseLargePages, true);
  3104       FLAG_SET_DEFAULT(UseLargePages, true);
  3091 #endif
  3105 #endif
  3092 
  3106 
  3093       // Increase some data structure sizes for efficiency
  3107       // Increase some data structure sizes for efficiency
  3094       FLAG_SET_CMDLINE(size_t, BaseFootPrintEstimate, MaxHeapSize);
  3108       FLAG_SET_CMDLINE(size_t, BaseFootPrintEstimate, MaxHeapSize);
  3143       FLAG_SET_CMDLINE(uintx, MaxTenuringThreshold, 0);
  3157       FLAG_SET_CMDLINE(uintx, MaxTenuringThreshold, 0);
  3144     } else if (match_option(option, "-XX:MaxTenuringThreshold=", &tail)) {
  3158     } else if (match_option(option, "-XX:MaxTenuringThreshold=", &tail)) {
  3145       uintx max_tenuring_thresh = 0;
  3159       uintx max_tenuring_thresh = 0;
  3146       if(!parse_uintx(tail, &max_tenuring_thresh, 0)) {
  3160       if(!parse_uintx(tail, &max_tenuring_thresh, 0)) {
  3147         jio_fprintf(defaultStream::error_stream(),
  3161         jio_fprintf(defaultStream::error_stream(),
  3148                     "Invalid MaxTenuringThreshold: %s\n", option->optionString);
  3162           "Improperly specified VM option 'MaxTenuringThreshold=%s'\n", tail);
       
  3163         return JNI_EINVAL;
  3149       }
  3164       }
  3150       FLAG_SET_CMDLINE(uintx, MaxTenuringThreshold, max_tenuring_thresh);
  3165       FLAG_SET_CMDLINE(uintx, MaxTenuringThreshold, max_tenuring_thresh);
  3151 
  3166 
  3152       if (MaxTenuringThreshold == 0) {
  3167       if (MaxTenuringThreshold == 0) {
  3153         FLAG_SET_CMDLINE(bool, NeverTenure, false);
  3168         FLAG_SET_CMDLINE(bool, NeverTenure, false);
  3806     warning("%s file is present but has been ignored.  "
  3821     warning("%s file is present but has been ignored.  "
  3807             "Run with -XX:Flags=%s to load the file.",
  3822             "Run with -XX:Flags=%s to load the file.",
  3808             hotspotrc, hotspotrc);
  3823             hotspotrc, hotspotrc);
  3809   }
  3824   }
  3810 
  3825 
  3811 #ifdef _ALLBSD_SOURCE  // UseLargePages is not yet supported on BSD.
  3826 #if defined(_ALLBSD_SOURCE) || defined(AIX)  // UseLargePages is not yet supported on BSD and AIX.
  3812   UNSUPPORTED_OPTION(UseLargePages, "-XX:+UseLargePages");
  3827   UNSUPPORTED_OPTION(UseLargePages, "-XX:+UseLargePages");
  3813 #endif
  3828 #endif
  3814 
  3829 
  3815   ArgumentsExt::report_unsupported_options();
  3830   ArgumentsExt::report_unsupported_options();
  3816 
  3831