--- old/src/share/vm/gc_implementation/g1/g1GCPhaseTimes.hpp 2015-02-27 15:19:11.426465539 +0100 +++ new/src/share/vm/gc_implementation/g1/g1GCPhaseTimes.hpp 2015-02-27 15:19:11.330465543 +0100 @@ -35,6 +35,7 @@ uint _length; const char* _title; bool _print_sum; + int _log_level; uint _indent_level; bool _enabled; @@ -53,7 +54,7 @@ void log_value(LineBuffer& buf, T value); public: - WorkerDataArray(uint length, const char* title, bool print_sum, uint indent_level); + WorkerDataArray(uint length, const char* title, bool print_sum, int log_level, uint indent_level); ~WorkerDataArray(); @@ -63,9 +64,7 @@ void set(uint worker_i, T value) { assert(worker_i < _length, err_msg("Worker %d is greater than max: %d", worker_i, _length)); - T ui = WorkerDataArray::uninitialized(); - double uii = -3.0; - assert(_data[worker_i] == ui, err_msg("Overwriting data for worker %d", worker_i)); + assert(_data[worker_i] == WorkerDataArray::uninitialized(), err_msg("Overwriting data for worker %d in %s", worker_i, _title)); _data[worker_i] = value; _has_new_data = true; } @@ -112,14 +111,13 @@ void reset() PRODUCT_RETURN; void verify() PRODUCT_RETURN; - void enable() { _enabled = true; } - void disable() { _enabled = false; } - bool enabled() { return _enabled; } + void set_enabled(bool enabled) { _enabled = enabled; } + + int log_level() { return _log_level; } private: void calculate_totals(){ - assert(_enabled, "No data to base calculations on"); _sum = (T)0; for (uint i = 0; i < _length; ++i) { _sum += _data[i]; @@ -220,18 +218,6 @@ _gc_phases[phase]->set_sub_count(worker_i, count); } - void enable(GCPhases phase) { - _gc_phases[phase]->enable(); - } - - void disable(GCPhases phase) { - _gc_phases[phase]->disable(); - } - - bool enabled(GCPhases phase) { - return _gc_phases[phase]->enabled(); - } - double average_time(GCPhases phase) { return _gc_phases[phase]->average(); }