changeset 59408:b8b54ebb450a

8235819: -Wformat-overflow is reported from GCC 9 Reviewed-by: tschatzl, lkorinth
author ysuenaga
date Tue, 17 Dec 2019 10:00:55 +0900
parents bce0cd152f61
children bafc170a1d9d 66ddad9cdd9d
files src/hotspot/share/gc/g1/g1GCPhaseTimes.cpp src/hotspot/share/gc/g1/g1GCPhaseTimes.hpp
diffstat 2 files changed, 20 insertions(+), 16 deletions(-) [+]
line wrap: on
line diff
--- a/src/hotspot/share/gc/g1/g1GCPhaseTimes.cpp	Mon Dec 16 15:45:07 2019 -0800
+++ b/src/hotspot/share/gc/g1/g1GCPhaseTimes.cpp	Tue Dec 17 10:00:55 2019 +0900
@@ -37,7 +37,11 @@
 #include "runtime/os.hpp"
 #include "utilities/macros.hpp"
 
-static const char* Indents[5] = {"", "  ", "    ", "      ", "        "};
+static const char* indent(uint level) {
+  static const char* Indents[] = {"", "  ", "    ", "      ", "        ", "          "};
+  assert(level < ARRAY_SIZE(Indents), "Too high indent level %u", level);
+  return Indents[level];
+}
 
 G1GCPhaseTimes::G1GCPhaseTimes(STWGCTimer* gc_timer, uint max_gc_threads) :
   _max_gc_threads(max_gc_threads),
@@ -299,26 +303,26 @@
 }
 
 template <class T>
-void G1GCPhaseTimes::details(T* phase, const char* indent) const {
+void G1GCPhaseTimes::details(T* phase, const char* indent_str) const {
   LogTarget(Trace, gc, phases, task) lt;
   if (lt.is_enabled()) {
     LogStream ls(lt);
-    ls.print("%s", indent);
+    ls.print("%s", indent_str);
     phase->print_details_on(&ls);
   }
 }
 
-void G1GCPhaseTimes::log_phase(WorkerDataArray<double>* phase, uint indent, outputStream* out, bool print_sum) const {
-  out->print("%s", Indents[indent]);
+void G1GCPhaseTimes::log_phase(WorkerDataArray<double>* phase, uint indent_level, outputStream* out, bool print_sum) const {
+  out->print("%s", indent(indent_level));
   phase->print_summary_on(out, print_sum);
-  details(phase, Indents[indent]);
+  details(phase, indent(indent_level));
 
   for (uint i = 0; i < phase->MaxThreadWorkItems; i++) {
     WorkerDataArray<size_t>* work_items = phase->thread_work_items(i);
     if (work_items != NULL) {
-      out->print("%s", Indents[indent + 1]);
+      out->print("%s", indent(indent_level + 1));
       work_items->print_summary_on(out, true);
-      details(work_items, Indents[indent + 1]);
+      details(work_items, indent(indent_level + 1));
     }
   }
 }
@@ -343,11 +347,11 @@
 #define TIME_FORMAT "%.1lfms"
 
 void G1GCPhaseTimes::info_time(const char* name, double value) const {
-  log_info(gc, phases)("%s%s: " TIME_FORMAT, Indents[1], name, value);
+  log_info(gc, phases)("%s%s: " TIME_FORMAT, indent(1), name, value);
 }
 
 void G1GCPhaseTimes::debug_time(const char* name, double value) const {
-  log_debug(gc, phases)("%s%s: " TIME_FORMAT, Indents[2], name, value);
+  log_debug(gc, phases)("%s%s: " TIME_FORMAT, indent(2), name, value);
 }
 
 void G1GCPhaseTimes::debug_time_for_reference(const char* name, double value) const {
@@ -356,19 +360,19 @@
 
   if (lt.is_enabled()) {
     LogStream ls(lt);
-    ls.print_cr("%s%s: " TIME_FORMAT, Indents[2], name, value);
+    ls.print_cr("%s%s: " TIME_FORMAT, indent(2), name, value);
   } else if (lt2.is_enabled()) {
     LogStream ls(lt2);
-    ls.print_cr("%s%s: " TIME_FORMAT, Indents[2], name, value);
+    ls.print_cr("%s%s: " TIME_FORMAT, indent(2), name, value);
   }
 }
 
 void G1GCPhaseTimes::trace_time(const char* name, double value) const {
-  log_trace(gc, phases)("%s%s: " TIME_FORMAT, Indents[3], name, value);
+  log_trace(gc, phases)("%s%s: " TIME_FORMAT, indent(3), name, value);
 }
 
 void G1GCPhaseTimes::trace_count(const char* name, size_t value) const {
-  log_trace(gc, phases)("%s%s: " SIZE_FORMAT, Indents[3], name, value);
+  log_trace(gc, phases)("%s%s: " SIZE_FORMAT, indent(3), name, value);
 }
 
 double G1GCPhaseTimes::print_pre_evacuate_collection_set() const {
--- a/src/hotspot/share/gc/g1/g1GCPhaseTimes.hpp	Mon Dec 16 15:45:07 2019 -0800
+++ b/src/hotspot/share/gc/g1/g1GCPhaseTimes.hpp	Tue Dec 17 10:00:55 2019 +0900
@@ -195,10 +195,10 @@
   void reset();
 
   template <class T>
-  void details(T* phase, const char* indent) const;
+  void details(T* phase, const char* indent_str) const;
 
   void log_work_items(WorkerDataArray<double>* phase, uint indent, outputStream* out) const;
-  void log_phase(WorkerDataArray<double>* phase, uint indent, outputStream* out, bool print_sum) const;
+  void log_phase(WorkerDataArray<double>* phase, uint indent_level, outputStream* out, bool print_sum) const;
   void debug_serial_phase(WorkerDataArray<double>* phase, uint extra_indent = 0) const;
   void debug_phase(WorkerDataArray<double>* phase, uint extra_indent = 0) const;
   void trace_phase(WorkerDataArray<double>* phase, bool print_sum = true, uint extra_indent = 0) const;