From 0cd349d14cb844075d6126f2a3285be614c54c3f Mon Sep 17 00:00:00 2001 From: Andreas Obergschwandtner Date: Tue, 23 Oct 2018 10:03:10 +0200 Subject: openjdk-8-native: hotspot: handle format-overflow error for gcc >= 7 fixed the format-overflow warnings by patch affected files in openjdk-8-hotspot Signed-off-by: Andreas Obergschwandtner Signed-off-by: Richard Leitner --- .../openjdk/openjdk-8-release-172b11-common.inc | 1 + .../hotspot-handle-gcc7-format-overflow.patch | 25 ++++++++++++++++++++++ 2 files changed, 26 insertions(+) create mode 100644 recipes-core/openjdk/patches-openjdk-8/hotspot-handle-gcc7-format-overflow.patch diff --git a/recipes-core/openjdk/openjdk-8-release-172b11-common.inc b/recipes-core/openjdk/openjdk-8-release-172b11-common.inc index 0cda4bb..ad20585 100644 --- a/recipes-core/openjdk/openjdk-8-release-172b11-common.inc +++ b/recipes-core/openjdk/openjdk-8-release-172b11-common.inc @@ -20,6 +20,7 @@ PATCHES_URI = "\ ${HOTSPOT_UB_PATCH} \ ${LIBPNG_NEON_PATCH} \ file://handle_extra_output.patch \ + file://hotspot-handle-gcc7-format-overflow.patch \ " HOTSPOT_UB_PATCH = "\ file://0014-hotspot-zero-fix-undefined-behaviour-gcc-v8-fix.patch \ diff --git a/recipes-core/openjdk/patches-openjdk-8/hotspot-handle-gcc7-format-overflow.patch b/recipes-core/openjdk/patches-openjdk-8/hotspot-handle-gcc7-format-overflow.patch new file mode 100644 index 0000000..83626b3 --- /dev/null +++ b/recipes-core/openjdk/patches-openjdk-8/hotspot-handle-gcc7-format-overflow.patch @@ -0,0 +1,25 @@ +# HG changeset patch +# User Andreas Obergschwandtner +# Date 1537519446 -7200 +# Fri Sep 21 10:44:06 2018 +0200 +# Node ID 213da2c3ee54a558abd30b0230afa40d4b4e7f83 +# Parent 80ee2541504ec08d65da9d968a18a00a69858ce0 +Handle format error for GCC >= 7 + +diff --git a/hotspot/src/share/vm/adlc/output_c.cpp b/hotspot/src/share/vm/adlc/output_c.cpp +--- a/hotspot/src/share/vm/adlc/output_c.cpp ++++ b/hotspot/src/share/vm/adlc/output_c.cpp +@@ -436,9 +436,11 @@ + for (i = maxcycleused; i > 0; i /= 10) + cycledigit++; + +- int maskdigit = 0; +- for (i = rescount; i > 0; i /= 10) ++ int maskdigit = 1; ++ for (i = rescount / 10; i > 0; i /= 10) + maskdigit++; ++ if (maskdigit > 10) ++ maskdigit = 10; + + static const char* pipeline_use_cycle_mask = "Pipeline_Use_Cycle_Mask"; + static const char* pipeline_use_element = "Pipeline_Use_Element"; -- cgit v1.2.3-54-g00ecf