[PATCH 1 of 3] XXXXXX: Use DTRACE_PROBE[N] in JNI Set and SetStatic Field
Daniel D. Daugherty
daniel.daugherty at oracle.com
Thu May 10 08:52:30 PDT 2012
Adding serviceability-dev at openjdk.java.net to this e-mail thread.
On 5/10/12 7:49 AM, Mark Wielaard wrote:
> src/share/vm/prims/jni.cpp | 11 +++--------
> 1 files changed, 3 insertions(+), 8 deletions(-)
>
>
> # HG changeset patch
> # User Mark Wielaard<mark at klomp.org>
> # Date 1336656680 -7200
> # Node ID ed003325d9977d3bd8b38afd5db5a97200b310af
> # Parent 2766551175a024338344350b9c279797b4a7d8ac
> XXXXXX: Use DTRACE_PROBE[N] in JNI Set and SetStatic Field.
> Summary: Don't use HS_DTRACE_PROBE_CDECL_N and HS_DTRACE_PROBE_N directly.
> Contributed-by: Mark Wielaard<mjw at redhat.com>
>
> diff -r 2766551175a0 -r ed003325d997 src/share/vm/prims/jni.cpp
> --- a/src/share/vm/prims/jni.cpp Wed May 09 10:54:29 2012 -0700
> +++ b/src/share/vm/prims/jni.cpp Thu May 10 15:31:20 2012 +0200
> @@ -1,5 +1,6 @@
> /*
> * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved.
> + * Copyright (c) 2012 Red Hat, Inc.
> * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
> *
> * This code is free software; you can redistribute it and/or modify it
> @@ -2818,10 +2819,7 @@
> JNI_QUICK_ENTRY(void, jni_Set##Result##Field(JNIEnv *env, jobject obj, jfieldID fieldID, Argument value)) \
> JNIWrapper("Set" XSTR(Result) "Field"); \
> \
> - HS_DTRACE_PROBE_CDECL_N(hotspot_jni, Set##Result##Field__entry, \
> - ( JNIEnv*, jobject, jfieldID FP_SELECT_##Result(COMMA Argument,/*empty*/) ) ); \
> - HS_DTRACE_PROBE_N(hotspot_jni, Set##Result##Field__entry, \
> - ( env, obj, fieldID FP_SELECT_##Result(COMMA value,/*empty*/) ) ); \
> + FP_SELECT_##Result(DTRACE_PROBE4(hotspot_jni, Set##Result##Field__entry, env, obj, fieldID, value),DTRACE_PROBE3(hotspot_jni, Set##Result##Field__entry, env, obj, fieldID)); \
> \
> oop o = JNIHandles::resolve_non_null(obj); \
> klassOop k = o->klass(); \
> @@ -3128,10 +3126,7 @@
> \
> JNI_ENTRY(void, jni_SetStatic##Result##Field(JNIEnv *env, jclass clazz, jfieldID fieldID, Argument value)) \
> JNIWrapper("SetStatic" XSTR(Result) "Field"); \
> - HS_DTRACE_PROBE_CDECL_N(hotspot_jni, SetStatic##Result##Field__entry,\
> - ( JNIEnv*, jclass, jfieldID FP_SELECT_##Result(COMMA Argument,/*empty*/) ) ); \
> - HS_DTRACE_PROBE_N(hotspot_jni, SetStatic##Result##Field__entry, \
> - ( env, clazz, fieldID FP_SELECT_##Result(COMMA value,/*empty*/) ) ); \
> + FP_SELECT_##Result(DTRACE_PROBE4(hotspot_jni, SetStatic##Result##Field__entry, env, clazz, fieldID, value),DTRACE_PROBE3(hotspot_jni, SetStatic##Result##Field__entry, env, clazz, fieldID)); \
> \
> JNIid* id = jfieldIDWorkaround::from_static_jfieldID(fieldID); \
> assert(id->is_static_field_id(), "invalid static field id"); \
More information about the hotspot-dev
mailing list