From 3ab3f52b2799e75bdd32d0ee105be80d88312082 Mon Sep 17 00:00:00 2001 From: Bernhard Urban-Forster Date: Tue, 30 Apr 2024 19:35:53 +0000 Subject: [PATCH] 8326974: ODR violation in macroAssembler_aarch64.cpp Backport-of: b972997af76a506ffd79ee8c6043e7a8db836b33 --- src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp b/src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp index 5a90cf189ce..1343e7d4f26 100644 --- a/src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp +++ b/src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp @@ -389,13 +389,13 @@ static bool offset_for(uint32_t insn1, uint32_t insn2, ptrdiff_t &byte_offset) { return false; } -class Decoder : public RelocActions { - virtual reloc_insn adrpMem() { return &Decoder::adrpMem_impl; } - virtual reloc_insn adrpAdd() { return &Decoder::adrpAdd_impl; } - virtual reloc_insn adrpMovk() { return &Decoder::adrpMovk_impl; } +class AArch64Decoder : public RelocActions { + virtual reloc_insn adrpMem() { return &AArch64Decoder::adrpMem_impl; } + virtual reloc_insn adrpAdd() { return &AArch64Decoder::adrpAdd_impl; } + virtual reloc_insn adrpMovk() { return &AArch64Decoder::adrpMovk_impl; } public: - Decoder(address insn_addr, uint32_t insn) : RelocActions(insn_addr, insn) {} + AArch64Decoder(address insn_addr, uint32_t insn) : RelocActions(insn_addr, insn) {} virtual int loadStore(address insn_addr, address &target) { intptr_t offset = Instruction_aarch64::sextract(_insn, 23, 5); @@ -491,7 +491,7 @@ class Decoder : public RelocActions { }; address MacroAssembler::target_addr_for_insn(address insn_addr, uint32_t insn) { - Decoder decoder(insn_addr, insn); + AArch64Decoder decoder(insn_addr, insn); address target; decoder.run(insn_addr, target); return target;