Mercurial > hg > icedtea8-forest > hotspot
changeset 10918:631ce052d827
8240353: AArch64: missing support for -XX:+ExtendedDTraceProbes in C1
Reviewed-by: aph
author | ngasson |
---|---|
date | Mon, 16 Mar 2020 10:51:01 +0800 |
parents | 39e98bb4e79a |
children | c4390912be8a |
files | src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp src/cpu/aarch64/vm/c1_Runtime1_aarch64.cpp |
diffstat | 2 files changed, 14 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp Thu Feb 25 00:46:04 2021 +0000 +++ b/src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp Mon Mar 16 10:51:01 2020 +0800 @@ -1,6 +1,6 @@ /* * Copyright (c) 2013, Red Hat Inc. - * Copyright (c) 2000, 2019, Oracle and/or its affiliates. + * Copyright (c) 2000, 2020, Oracle and/or its affiliates. * All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * @@ -432,12 +432,9 @@ } if (compilation()->env()->dtrace_method_probes()) { - __ call_Unimplemented(); -#if 0 - __ movptr(Address(rsp, 0), rax); - __ mov_metadata(Address(rsp, sizeof(void*)), method()->constant_encoding()); - __ call(RuntimeAddress(CAST_FROM_FN_PTR(address, SharedRuntime::dtrace_method_exit))); -#endif + __ mov(c_rarg0, rthread); + __ mov_metadata(c_rarg1, method()->constant_encoding()); + __ call_VM_leaf(CAST_FROM_FN_PTR(address, SharedRuntime::dtrace_method_exit), c_rarg0, c_rarg1); } if (method()->is_synchronized() || compilation()->env()->dtrace_method_probes()) {
--- a/src/cpu/aarch64/vm/c1_Runtime1_aarch64.cpp Thu Feb 25 00:46:04 2021 +0000 +++ b/src/cpu/aarch64/vm/c1_Runtime1_aarch64.cpp Mon Mar 16 10:51:01 2020 +0800 @@ -1311,6 +1311,16 @@ } break; + case dtrace_object_alloc_id: + { // c_rarg0: object + StubFrame f(sasm, "dtrace_object_alloc", dont_gc_arguments); + save_live_registers(sasm); + + __ call_VM_leaf(CAST_FROM_FN_PTR(address, SharedRuntime::dtrace_object_alloc), c_rarg0); + + restore_live_registers(sasm); + } + break; default: { StubFrame f(sasm, "unimplemented entry", dont_gc_arguments);