8265702: ZGC on macOS/aarch64
Reviewed-by: erikj, dholmes, stefank, gziemski
This commit is contained in:
parent
45c5da0fd3
commit
0d08d73537
@ -400,7 +400,8 @@ AC_DEFUN_ONCE([JVM_FEATURES_CHECK_ZGC],
|
|||||||
fi
|
fi
|
||||||
elif test "x$OPENJDK_TARGET_CPU" = "xaarch64"; then
|
elif test "x$OPENJDK_TARGET_CPU" = "xaarch64"; then
|
||||||
if test "x$OPENJDK_TARGET_OS" = "xlinux" || \
|
if test "x$OPENJDK_TARGET_OS" = "xlinux" || \
|
||||||
test "x$OPENJDK_TARGET_OS" = "xwindows"; then
|
test "x$OPENJDK_TARGET_OS" = "xwindows" || \
|
||||||
|
test "x$OPENJDK_TARGET_OS" = "xmacosx"; then
|
||||||
AC_MSG_RESULT([yes])
|
AC_MSG_RESULT([yes])
|
||||||
else
|
else
|
||||||
AC_MSG_RESULT([no, $OPENJDK_TARGET_OS-$OPENJDK_TARGET_CPU])
|
AC_MSG_RESULT([no, $OPENJDK_TARGET_OS-$OPENJDK_TARGET_CPU])
|
||||||
|
@ -127,7 +127,7 @@ static jlong initial_time_count=0;
|
|||||||
|
|
||||||
static int clock_tics_per_sec = 100;
|
static int clock_tics_per_sec = 100;
|
||||||
|
|
||||||
#ifdef __APPLE__
|
#if defined(__APPLE__) && defined(__x86_64__)
|
||||||
static const int processor_id_unassigned = -1;
|
static const int processor_id_unassigned = -1;
|
||||||
static const int processor_id_assigning = -2;
|
static const int processor_id_assigning = -2;
|
||||||
static const int processor_id_map_size = 256;
|
static const int processor_id_map_size = 256;
|
||||||
@ -237,7 +237,7 @@ void os::Bsd::initialize_system_info() {
|
|||||||
set_processor_count(1); // fallback
|
set_processor_count(1); // fallback
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef __APPLE__
|
#if defined(__APPLE__) && defined(__x86_64__)
|
||||||
// initialize processor id map
|
// initialize processor id map
|
||||||
for (int i = 0; i < processor_id_map_size; i++) {
|
for (int i = 0; i < processor_id_map_size; i++) {
|
||||||
processor_id_map[i] = processor_id_unassigned;
|
processor_id_map[i] = processor_id_unassigned;
|
||||||
@ -2113,8 +2113,8 @@ int os::active_processor_count() {
|
|||||||
return _processor_count;
|
return _processor_count;
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined(__APPLE__) && defined(__x86_64__)
|
|
||||||
uint os::processor_id() {
|
uint os::processor_id() {
|
||||||
|
#if defined(__APPLE__) && defined(__x86_64__)
|
||||||
// Get the initial APIC id and return the associated processor id. The initial APIC
|
// Get the initial APIC id and return the associated processor id. The initial APIC
|
||||||
// id is limited to 8-bits, which means we can have at most 256 unique APIC ids. If
|
// id is limited to 8-bits, which means we can have at most 256 unique APIC ids. If
|
||||||
// the system has more processors (or the initial APIC ids are discontiguous) the
|
// the system has more processors (or the initial APIC ids are discontiguous) the
|
||||||
@ -2145,8 +2145,13 @@ uint os::processor_id() {
|
|||||||
assert(processor_id >= 0 && processor_id < os::processor_count(), "invalid processor id");
|
assert(processor_id >= 0 && processor_id < os::processor_count(), "invalid processor id");
|
||||||
|
|
||||||
return (uint)processor_id;
|
return (uint)processor_id;
|
||||||
}
|
#else // defined(__APPLE__) && defined(__x86_64__)
|
||||||
|
// Return 0 until we find a good way to get the current processor id on
|
||||||
|
// the platform. Returning 0 is safe, since there is always at least one
|
||||||
|
// processor, but might not be optimal for performance in some cases.
|
||||||
|
return 0;
|
||||||
#endif
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
void os::set_native_thread_name(const char *name) {
|
void os::set_native_thread_name(const char *name) {
|
||||||
#if defined(__APPLE__) && MAC_OS_X_VERSION_MIN_REQUIRED > MAC_OS_X_VERSION_10_5
|
#if defined(__APPLE__) && MAC_OS_X_VERSION_MIN_REQUIRED > MAC_OS_X_VERSION_10_5
|
||||||
|
@ -1377,7 +1377,7 @@ address OptoRuntime::handle_exception_C(JavaThread* current) {
|
|||||||
// deoptimized frame
|
// deoptimized frame
|
||||||
|
|
||||||
if (nm != NULL) {
|
if (nm != NULL) {
|
||||||
RegisterMap map(current, false);
|
RegisterMap map(current, false /* update_map */, false /* process_frames */);
|
||||||
frame caller = current->last_frame().sender(&map);
|
frame caller = current->last_frame().sender(&map);
|
||||||
#ifdef ASSERT
|
#ifdef ASSERT
|
||||||
assert(caller.is_compiled_frame(), "must be");
|
assert(caller.is_compiled_frame(), "must be");
|
||||||
|
Loading…
Reference in New Issue
Block a user