272
273 bool is_constant_in_binary() const;
274
275 bool is_unlocker() const;
276 bool is_unlocked() const;
277 bool is_writeable() const;
278 bool is_external() const;
279
280 bool is_unlocker_ext() const;
281 bool is_unlocked_ext() const;
282 bool is_writeable_ext() const;
283 bool is_external_ext() const;
284
285 void clear_diagnostic();
286
287 Flag::MsgType get_locked_message(char*, int) const;
288 void get_locked_message_ext(char*, int) const;
289
290 // printRanges will print out flags type, name and range values as expected by -XX:+PrintFlagsRanges
291 void print_on(outputStream* st, bool withComments = false, bool printRanges = false);
292 void print_kind_and_origin(outputStream* st);
293 void print_as_flag(outputStream* st);
294
295 static const char* flag_error_str(Flag::Error error);
296 };
297
298 // debug flags control various aspects of the VM and are global accessible
299
300 // use FlagSetting to temporarily change some debug flag
301 // e.g. FlagSetting fs(DebugThisAndThat, true);
302 // restored to previous value upon leaving scope
303 class FlagSetting {
304 bool val;
305 bool* flag;
306 public:
307 FlagSetting(bool& fl, bool newValue) { flag = &fl; val = fl; fl = newValue; }
308 ~FlagSetting() { *flag = val; }
309 };
310
311
312 class CounterSetting {
|
272
273 bool is_constant_in_binary() const;
274
275 bool is_unlocker() const;
276 bool is_unlocked() const;
277 bool is_writeable() const;
278 bool is_external() const;
279
280 bool is_unlocker_ext() const;
281 bool is_unlocked_ext() const;
282 bool is_writeable_ext() const;
283 bool is_external_ext() const;
284
285 void clear_diagnostic();
286
287 Flag::MsgType get_locked_message(char*, int) const;
288 void get_locked_message_ext(char*, int) const;
289
290 // printRanges will print out flags type, name and range values as expected by -XX:+PrintFlagsRanges
291 void print_on(outputStream* st, bool withComments = false, bool printRanges = false);
292 void print_kind(outputStream* st, unsigned int width);
293 void print_origin(outputStream* st, unsigned int width);
294 void print_as_flag(outputStream* st);
295
296 static const char* flag_error_str(Flag::Error error);
297 };
298
299 // debug flags control various aspects of the VM and are global accessible
300
301 // use FlagSetting to temporarily change some debug flag
302 // e.g. FlagSetting fs(DebugThisAndThat, true);
303 // restored to previous value upon leaving scope
304 class FlagSetting {
305 bool val;
306 bool* flag;
307 public:
308 FlagSetting(bool& fl, bool newValue) { flag = &fl; val = fl; fl = newValue; }
309 ~FlagSetting() { *flag = val; }
310 };
311
312
313 class CounterSetting {
|