8328614: hsdis: dlsym can't find decode symbol

Reviewed-by: ihse, luhenry, mli
This commit is contained in:
Robbin Ehn 2024-04-09 15:01:02 +00:00
parent 23d161de29
commit 1e02a13a7f
5 changed files with 10 additions and 10 deletions

View File

@ -144,7 +144,9 @@ $(eval $(call SetupJdkLibrary, BUILD_HSDIS, \
NAME := hsdis, \ NAME := hsdis, \
LINK_TYPE := $(HSDIS_LINK_TYPE), \ LINK_TYPE := $(HSDIS_LINK_TYPE), \
SRC := $(TOPDIR)/src/utils/hsdis/$(HSDIS_BACKEND), \ SRC := $(TOPDIR)/src/utils/hsdis/$(HSDIS_BACKEND), \
EXTRA_HEADER_DIRS := $(TOPDIR)/src/utils/hsdis, \ EXTRA_HEADER_DIRS := \
java.base:include \
$(TOPDIR)/src/utils/hsdis, \
OUTPUT_DIR := $(HSDIS_OUTPUT_DIR), \ OUTPUT_DIR := $(HSDIS_OUTPUT_DIR), \
OBJECT_DIR := $(HSDIS_OUTPUT_DIR), \ OBJECT_DIR := $(HSDIS_OUTPUT_DIR), \
DISABLED_WARNINGS_gcc := undef format-nonliteral sign-compare, \ DISABLED_WARNINGS_gcc := undef format-nonliteral sign-compare, \

View File

@ -120,10 +120,8 @@ static const char* format_insn_close(const char* close,
disassemble_info* dinfo, disassemble_info* dinfo,
char* buf, size_t bufsize); char* buf, size_t bufsize);
JNIEXPORT
void* void*
#ifdef DLL_ENTRY
DLL_ENTRY
#endif
decode_instructions_virtual(uintptr_t start_va, uintptr_t end_va, decode_instructions_virtual(uintptr_t start_va, uintptr_t end_va,
unsigned char* buffer, uintptr_t length, unsigned char* buffer, uintptr_t length,
event_callback_t event_callback_arg, void* event_stream_arg, event_callback_t event_callback_arg, void* event_stream_arg,
@ -145,10 +143,8 @@ decode_instructions_virtual(uintptr_t start_va, uintptr_t end_va,
} }
/* This is the compatability interface for older version of hotspot */ /* This is the compatability interface for older version of hotspot */
JNIEXPORT
void* void*
#ifdef DLL_ENTRY
DLL_ENTRY
#endif
decode_instructions(void* start_pv, void* end_pv, decode_instructions(void* start_pv, void* end_pv,
event_callback_t event_callback_arg, void* event_stream_arg, event_callback_t event_callback_arg, void* event_stream_arg,
printf_callback_t printf_callback_arg, void* printf_stream_arg, printf_callback_t printf_callback_arg, void* printf_stream_arg,

View File

@ -120,9 +120,7 @@ static Options parse_options(const char* options, printf_callback_t printf_callb
return ops; return ops;
} }
#ifdef _WIN32 JNIEXPORT
__declspec(dllexport)
#endif
void* decode_instructions_virtual(uintptr_t start_va, uintptr_t end_va, void* decode_instructions_virtual(uintptr_t start_va, uintptr_t end_va,
unsigned char* buffer, uintptr_t length, unsigned char* buffer, uintptr_t length,
event_callback_t event_callback, event_callback_t event_callback,

View File

@ -72,6 +72,8 @@
#ifndef SHARED_TOOLS_HSDIS_H #ifndef SHARED_TOOLS_HSDIS_H
#define SHARED_TOOLS_HSDIS_H #define SHARED_TOOLS_HSDIS_H
#include "jni.h"
#ifdef __cplusplus #ifdef __cplusplus
extern "C" extern "C"
{ {

View File

@ -328,6 +328,7 @@ class hsdis_backend : public hsdis_backend_base {
}; };
JNIEXPORT
void* decode_instructions_virtual(uintptr_t start_va, uintptr_t end_va, void* decode_instructions_virtual(uintptr_t start_va, uintptr_t end_va,
unsigned char* buffer, uintptr_t length, unsigned char* buffer, uintptr_t length,
event_callback_t event_callback_arg, void* event_stream_arg, event_callback_t event_callback_arg, void* event_stream_arg,
@ -342,6 +343,7 @@ void* decode_instructions_virtual(uintptr_t start_va, uintptr_t end_va,
} }
/* This is the compatability interface for older version of hotspot */ /* This is the compatability interface for older version of hotspot */
JNIEXPORT
void* decode_instructions(void* start_pv, void* end_pv, void* decode_instructions(void* start_pv, void* end_pv,
event_callback_t event_callback_arg, void* event_stream_arg, event_callback_t event_callback_arg, void* event_stream_arg,
printf_callback_t printf_callback_arg, void* printf_stream_arg, printf_callback_t printf_callback_arg, void* printf_stream_arg,