hotspot/src/share/vm/runtime/globals.hpp
changeset 25959 6c11a6272b60
parent 25908 8adb2fb6fc3c
child 25960 729cd80956ae
equal deleted inserted replaced
25958:8dc85547d6d6 25959:6c11a6272b60
   273 
   273 
   274   bool is_uint64_t() const;
   274   bool is_uint64_t() const;
   275   uint64_t get_uint64_t() const;
   275   uint64_t get_uint64_t() const;
   276   void set_uint64_t(uint64_t value);
   276   void set_uint64_t(uint64_t value);
   277 
   277 
       
   278   bool is_size_t() const;
       
   279   size_t get_size_t() const;
       
   280   void set_size_t(size_t value);
       
   281 
   278   bool is_double() const;
   282   bool is_double() const;
   279   double get_double() const;
   283   double get_double() const;
   280   void set_double(double value);
   284   void set_double(double value);
   281 
   285 
   282   bool is_ccstr() const;
   286   bool is_ccstr() const;
   348  public:
   352  public:
   349   UIntFlagSetting(uintx& fl, uintx newValue) { flag = &fl; val = fl; fl = newValue; }
   353   UIntFlagSetting(uintx& fl, uintx newValue) { flag = &fl; val = fl; fl = newValue; }
   350   ~UIntFlagSetting()                         { *flag = val; }
   354   ~UIntFlagSetting()                         { *flag = val; }
   351 };
   355 };
   352 
   356 
   353 
       
   354 class DoubleFlagSetting {
   357 class DoubleFlagSetting {
   355   double val;
   358   double val;
   356   double* flag;
   359   double* flag;
   357  public:
   360  public:
   358   DoubleFlagSetting(double& fl, double newValue) { flag = &fl; val = fl; fl = newValue; }
   361   DoubleFlagSetting(double& fl, double newValue) { flag = &fl; val = fl; fl = newValue; }
   359   ~DoubleFlagSetting()                           { *flag = val; }
   362   ~DoubleFlagSetting()                           { *flag = val; }
   360 };
   363 };
   361 
   364 
       
   365 class SizeTFlagSetting {
       
   366   size_t val;
       
   367   size_t* flag;
       
   368  public:
       
   369   SizeTFlagSetting(size_t& fl, size_t newValue) { flag = &fl; val = fl; fl = newValue; }
       
   370   ~SizeTFlagSetting()                           { *flag = val; }
       
   371 };
       
   372 
   362 
   373 
   363 class CommandLineFlags {
   374 class CommandLineFlags {
   364  public:
   375  public:
   365   static bool boolAt(const char* name, size_t len, bool* value);
   376   static bool boolAt(const char* name, size_t len, bool* value);
   366   static bool boolAt(const char* name, bool* value)      { return boolAt(name, strlen(name), value); }
   377   static bool boolAt(const char* name, bool* value)      { return boolAt(name, strlen(name), value); }
   374 
   385 
   375   static bool uintxAt(const char* name, size_t len, uintx* value);
   386   static bool uintxAt(const char* name, size_t len, uintx* value);
   376   static bool uintxAt(const char* name, uintx* value)    { return uintxAt(name, strlen(name), value); }
   387   static bool uintxAt(const char* name, uintx* value)    { return uintxAt(name, strlen(name), value); }
   377   static bool uintxAtPut(const char* name, size_t len, uintx* value, Flag::Flags origin);
   388   static bool uintxAtPut(const char* name, size_t len, uintx* value, Flag::Flags origin);
   378   static bool uintxAtPut(const char* name, uintx* value, Flag::Flags origin) { return uintxAtPut(name, strlen(name), value, origin); }
   389   static bool uintxAtPut(const char* name, uintx* value, Flag::Flags origin) { return uintxAtPut(name, strlen(name), value, origin); }
       
   390 
       
   391   static bool size_tAt(const char* name, size_t len, size_t* value);
       
   392   static bool size_tAt(const char* name, size_t* value)    { return size_tAt(name, strlen(name), value); }
       
   393   static bool size_tAtPut(const char* name, size_t len, size_t* value, Flag::Flags origin);
       
   394   static bool size_tAtPut(const char* name, size_t* value, Flag::Flags origin) { return size_tAtPut(name, strlen(name), value, origin); }
   379 
   395 
   380   static bool uint64_tAt(const char* name, size_t len, uint64_t* value);
   396   static bool uint64_tAt(const char* name, size_t len, uint64_t* value);
   381   static bool uint64_tAt(const char* name, uint64_t* value) { return uint64_tAt(name, strlen(name), value); }
   397   static bool uint64_tAt(const char* name, uint64_t* value) { return uint64_tAt(name, strlen(name), value); }
   382   static bool uint64_tAtPut(const char* name, size_t len, uint64_t* value, Flag::Flags origin);
   398   static bool uint64_tAtPut(const char* name, size_t len, uint64_t* value, Flag::Flags origin);
   383   static bool uint64_tAtPut(const char* name, uint64_t* value, Flag::Flags origin) { return uint64_tAtPut(name, strlen(name), value, origin); }
   399   static bool uint64_tAtPut(const char* name, uint64_t* value, Flag::Flags origin) { return uint64_tAtPut(name, strlen(name), value, origin); }
  3881           "Obey the ACC_SUPER flag and allow invokenonvirtual calls")       \
  3897           "Obey the ACC_SUPER flag and allow invokenonvirtual calls")       \
  3882                                                                             \
  3898                                                                             \
  3883   diagnostic(ccstr, SharedArchiveFile, NULL,                                \
  3899   diagnostic(ccstr, SharedArchiveFile, NULL,                                \
  3884           "Override the default location of the CDS archive file")          \
  3900           "Override the default location of the CDS archive file")          \
  3885                                                                             \
  3901                                                                             \
  3886   experimental(uintx, ArrayAllocatorMallocLimit,                            \
  3902   experimental(size_t, ArrayAllocatorMallocLimit,                           \
  3887           SOLARIS_ONLY(64*K) NOT_SOLARIS(max_uintx),                        \
  3903           SOLARIS_ONLY(64*K) NOT_SOLARIS((size_t)-1),                       \
  3888           "Allocation less than this value will be allocated "              \
  3904           "Allocation less than this value will be allocated "              \
  3889           "using malloc. Larger allocations will use mmap.")                \
  3905           "using malloc. Larger allocations will use mmap.")                \
  3890                                                                             \
  3906                                                                             \
  3891   experimental(bool, AlwaysAtomicAccesses, false,                           \
  3907   experimental(bool, AlwaysAtomicAccesses, false,                           \
  3892           "Accesses to all variables should always be atomic")              \
  3908           "Accesses to all variables should always be atomic")              \