summaryrefslogtreecommitdiff
path: root/java/openjdk17/files
diff options
context:
space:
mode:
Diffstat (limited to 'java/openjdk17/files')
-rw-r--r--java/openjdk17/files/extra-patch-src_hotspot_share_runtime_arguments.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/java/openjdk17/files/extra-patch-src_hotspot_share_runtime_arguments.cpp b/java/openjdk17/files/extra-patch-src_hotspot_share_runtime_arguments.cpp
new file mode 100644
index 000000000000..80ef25c560f6
--- /dev/null
+++ b/java/openjdk17/files/extra-patch-src_hotspot_share_runtime_arguments.cpp
@@ -0,0 +1,21 @@
+--- src/hotspot/share/runtime/arguments.cpp.orig 2023-01-15 10:13:55.469227000 -0800
++++ src/hotspot/share/runtime/arguments.cpp 2023-01-15 10:20:49.218102000 -0800
+@@ -1557,6 +1557,10 @@
+ // set_use_compressed_oops().
+ void Arguments::set_use_compressed_klass_ptrs() {
+ #ifdef _LP64
++# if defined(__FreeBSD__) && defined(AARCH64)
++ FLAG_SET_DEFAULT(UseCompressedClassPointers, false);
++ FLAG_SET_ERGO(UseCompressedClassPointers, false);
++# else
+ // On some architectures, the use of UseCompressedClassPointers implies the use of
+ // UseCompressedOops. The reason is that the rheap_base register of said platforms
+ // is reused to perform some optimized spilling, in order to use rheap_base as a
+@@ -1582,6 +1586,7 @@
+ }
+ }
+ }
++# endif // __FreeBSD__ && AARCH64
+ #endif // _LP64
+ }
+