< prev index next >
src/hotspot/share/runtime/sharedRuntime.cpp
Print this page
rev 58823 : [mq]: aarch64-jdk-nmethod-barriers-3.patch
@@ -2871,10 +2871,16 @@
BufferBlob* buf = buffer_blob(); // the temporary code buffer in CodeCache
if (buf != NULL) {
CodeBuffer buffer(buf);
double locs_buf[20];
buffer.insts()->initialize_shared_locs((relocInfo*)locs_buf, sizeof(locs_buf) / sizeof(relocInfo));
+#if defined(AARCH64)
+ // On AArch64 with ZGC and nmethod entry barriers, we need all oops to be
+ // in the constant pool to ensure ordering between the barrier and oops
+ // accesses. For native_wrappers we need a constant.
+ buffer.initialize_consts_size(8);
+#endif
MacroAssembler _masm(&buffer);
// Fill in the signature array, for the calling-convention call.
const int total_args_passed = method->size_of_parameters();
< prev index next >