From 2b1e204274e511a6546f2ef0935325105825948a Mon Sep 17 00:00:00 2001 From: oreo639 Date: Sat, 15 Oct 2022 02:16:25 -0700 Subject: [PATCH] openjdk9-bootstrap: fix build with gcc12 --- .../fix-pointer-comparison-gcc12.patch | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 srcpkgs/openjdk9-bootstrap/patches/fix-pointer-comparison-gcc12.patch diff --git a/srcpkgs/openjdk9-bootstrap/patches/fix-pointer-comparison-gcc12.patch b/srcpkgs/openjdk9-bootstrap/patches/fix-pointer-comparison-gcc12.patch new file mode 100644 index 000000000000..9cfd4a9044ad --- /dev/null +++ b/srcpkgs/openjdk9-bootstrap/patches/fix-pointer-comparison-gcc12.patch @@ -0,0 +1,51 @@ +From 19af6364825a401c281e9831f892a033a6f597e8 Mon Sep 17 00:00:00 2001 +From: Martin Buchholz +Date: Thu, 24 Aug 2017 10:26:32 -0700 +Subject: [PATCH] 8174050: Compilation errors with clang-4.0 + +Reviewed-by: kvn +--- + hotspot/src/share/vm/memory/virtualspace.cpp | 2 +- + hotspot/src/share/vm/opto/lcm.cpp | 2 +- + hotspot/src/share/vm/opto/loopPredicate.cpp | 2 +- + 3 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/hotspot/src/share/vm/memory/virtualspace.cpp b/hotspot/src/share/vm/memory/virtualspace.cpp +index 82787f8a024..a3289d9b043 100644 +--- a/hotspot/src/share/vm/memory/virtualspace.cpp ++++ b/hotspot/src/share/vm/memory/virtualspace.cpp +@@ -582,7 +582,7 @@ ReservedHeapSpace::ReservedHeapSpace(size_t size, size_t alignment, bool large) + assert(markOopDesc::encode_pointer_as_mark(&_base[size])->decode_pointer() == &_base[size], + "area must be distinguishable from marks for mark-sweep"); + +- if (base() > 0) { ++ if (base() != NULL) { + MemTracker::record_virtual_memory_type((address)base(), mtJavaHeap); + } + } +diff --git a/hotspot/src/share/vm/opto/lcm.cpp b/hotspot/src/share/vm/opto/lcm.cpp +index 049376cc709..3ed99872641 100644 +--- a/hotspot/src/share/vm/opto/lcm.cpp ++++ b/hotspot/src/share/vm/opto/lcm.cpp +@@ -39,7 +39,7 @@ + // Check whether val is not-null-decoded compressed oop, + // i.e. will grab into the base of the heap if it represents NULL. + static bool accesses_heap_base_zone(Node *val) { +- if (Universe::narrow_oop_base() > 0) { // Implies UseCompressedOops. ++ if (Universe::narrow_oop_base() != NULL) { // Implies UseCompressedOops. + if (val && val->is_Mach()) { + if (val->as_Mach()->ideal_Opcode() == Op_DecodeN) { + // This assumes all Decodes with TypePtr::NotNull are matched to nodes that +diff --git a/hotspot/src/share/vm/opto/loopPredicate.cpp b/hotspot/src/share/vm/opto/loopPredicate.cpp +index a3030676335..0de17405ccc 100644 +--- a/hotspot/src/share/vm/opto/loopPredicate.cpp ++++ b/hotspot/src/share/vm/opto/loopPredicate.cpp +@@ -912,7 +912,7 @@ bool PhaseIdealLoop::loop_predication_impl(IdealLoopTree *loop) { + Node* idx = cmp->in(1); + assert(!invar.is_invariant(idx), "index is variant"); + Node* rng = cmp->in(2); +- assert(rng->Opcode() == Op_LoadRange || _igvn.type(rng)->is_int() >= 0, "must be"); ++ assert(rng->Opcode() == Op_LoadRange || iff->is_RangeCheck() || _igvn.type(rng)->is_int()->_lo >= 0, "must be"); + assert(invar.is_invariant(rng), "range must be invariant"); + int scale = 1; + Node* offset = zero;