1 /*
   2  * Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved.
   3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4  *
   5  * This code is free software; you can redistribute it and/or modify it
   6  * under the terms of the GNU General Public License version 2 only, as
   7  * published by the Free Software Foundation.
   8  *
   9  * This code is distributed in the hope that it will be useful, but WITHOUT
  10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  11  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  12  * version 2 for more details (a copy is included in the LICENSE file that
  13  * accompanied this code).
  14  *
  15  * You should have received a copy of the GNU General Public License version
  16  * 2 along with this work; if not, write to the Free Software Foundation,
  17  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  18  *
  19  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  20  * or visit www.oracle.com if you need additional information or have any
  21  * questions.
  22  *  
  23  */
  24 
  25 provider hotspot_jni {
  26   probe AllocObject__entry(void*, void*);
  27   probe AllocObject__return(void*);
  28   probe AttachCurrentThreadAsDaemon__entry(void*, void**, void*);
  29   probe AttachCurrentThreadAsDaemon__return(uint32_t);
  30   probe AttachCurrentThread__entry(void*, void**, void*);
  31   probe AttachCurrentThread__return(uint32_t);
  32   probe CallBooleanMethodA__entry(void*, void*, uintptr_t);
  33   probe CallBooleanMethodA__return(uintptr_t);
  34   probe CallBooleanMethod__entry(void*, void*, uintptr_t);
  35   probe CallBooleanMethod__return(uintptr_t);
  36   probe CallBooleanMethodV__entry(void*, void*, uintptr_t);
  37   probe CallBooleanMethodV__return(uintptr_t);
  38   probe CallByteMethodA__entry(void*, void*, uintptr_t);
  39   probe CallByteMethodA__return(char);
  40   probe CallByteMethod__entry(void*, void*, uintptr_t);
  41   probe CallByteMethod__return(char);
  42   probe CallByteMethodV__entry(void*, void*, uintptr_t);
  43   probe CallByteMethodV__return(char);
  44   probe CallCharMethodA__entry(void*, void*, uintptr_t);
  45   probe CallCharMethodA__return(uint16_t);
  46   probe CallCharMethod__entry(void*, void*, uintptr_t);
  47   probe CallCharMethod__return(uint16_t);
  48   probe CallCharMethodV__entry(void*, void*, uintptr_t);
  49   probe CallCharMethodV__return(uint16_t);
  50   probe CallDoubleMethodA__entry(void*, void*, uintptr_t);
  51   probe CallDoubleMethodA__return();
  52   probe CallDoubleMethod__entry(void*, void*, uintptr_t);
  53   probe CallDoubleMethod__return();
  54   probe CallDoubleMethodV__entry(void*, void*, uintptr_t);
  55   probe CallDoubleMethodV__return();
  56   probe CallFloatMethodA__entry(void*, void*, uintptr_t);
  57   probe CallFloatMethodA__return();
  58   probe CallFloatMethod__entry(void*, void*, uintptr_t);
  59   probe CallFloatMethod__return();
  60   probe CallFloatMethodV__entry(void*, void*, uintptr_t);
  61   probe CallFloatMethodV__return();
  62   probe CallIntMethodA__entry(void*, void*, uintptr_t);
  63   probe CallIntMethodA__return(uint32_t);
  64   probe CallIntMethod__entry(void*, void*, uintptr_t);
  65   probe CallIntMethod__return(uint32_t);
  66   probe CallIntMethodV__entry(void*, void*, uintptr_t);
  67   probe CallIntMethodV__return(uint32_t);
  68   probe CallLongMethodA__entry(void*, void*, uintptr_t);
  69   probe CallLongMethodA__return(uintptr_t);
  70   probe CallLongMethod__entry(void*, void*, uintptr_t);
  71   probe CallLongMethod__return(uintptr_t);
  72   probe CallLongMethodV__entry(void*, void*, uintptr_t);
  73   probe CallLongMethodV__return(uintptr_t);
  74   probe CallNonvirtualBooleanMethodA__entry(void*, void*, void*, uintptr_t);
  75   probe CallNonvirtualBooleanMethodA__return(uintptr_t);
  76   probe CallNonvirtualBooleanMethod__entry(void*, void*, void*, uintptr_t);
  77   probe CallNonvirtualBooleanMethod__return(uintptr_t);
  78   probe CallNonvirtualBooleanMethodV__entry(void*, void*, void*, uintptr_t);
  79   probe CallNonvirtualBooleanMethodV__return(uintptr_t);
  80   probe CallNonvirtualByteMethodA__entry(void*, void*, void*, uintptr_t);
  81   probe CallNonvirtualByteMethodA__return(char);
  82   probe CallNonvirtualByteMethod__entry(void*, void*, void*, uintptr_t);
  83   probe CallNonvirtualByteMethod__return(char);
  84   probe CallNonvirtualByteMethodV__entry(void*, void*, void*, uintptr_t);
  85   probe CallNonvirtualByteMethodV__return(char);
  86   probe CallNonvirtualCharMethodA__entry(void*, void*, void*, uintptr_t);
  87   probe CallNonvirtualCharMethodA__return(uint16_t);
  88   probe CallNonvirtualCharMethod__entry(void*, void*, void*, uintptr_t);
  89   probe CallNonvirtualCharMethod__return(uint16_t);
  90   probe CallNonvirtualCharMethodV__entry(void*, void*, void*, uintptr_t);
  91   probe CallNonvirtualCharMethodV__return(uint16_t);
  92   probe CallNonvirtualDoubleMethodA__entry(void*, void*, void*, uintptr_t);
  93   probe CallNonvirtualDoubleMethodA__return();
  94   probe CallNonvirtualDoubleMethod__entry(void*, void*, void*, uintptr_t);
  95   probe CallNonvirtualDoubleMethod__return();
  96   probe CallNonvirtualDoubleMethodV__entry(void*, void*, void*, uintptr_t);
  97   probe CallNonvirtualDoubleMethodV__return();
  98   probe CallNonvirtualFloatMethodA__entry(void*, void*, void*, uintptr_t);
  99   probe CallNonvirtualFloatMethodA__return();
 100   probe CallNonvirtualFloatMethod__entry(void*, void*, void*, uintptr_t);
 101   probe CallNonvirtualFloatMethod__return();
 102   probe CallNonvirtualFloatMethodV__entry(void*, void*, void*, uintptr_t);
 103   probe CallNonvirtualFloatMethodV__return();
 104   probe CallNonvirtualIntMethodA__entry(void*, void*, void*, uintptr_t);
 105   probe CallNonvirtualIntMethodA__return(uint32_t);
 106   probe CallNonvirtualIntMethod__entry(void*, void*, void*, uintptr_t);
 107   probe CallNonvirtualIntMethod__return(uint32_t);
 108   probe CallNonvirtualIntMethodV__entry(void*, void*, void*, uintptr_t);
 109   probe CallNonvirtualIntMethodV__return(uint32_t);
 110   probe CallNonvirtualLongMethodA__entry(void*, void*, void*, uintptr_t);
 111   probe CallNonvirtualLongMethodA__return(uintptr_t);
 112   probe CallNonvirtualLongMethod__entry(void*, void*, void*, uintptr_t);
 113   probe CallNonvirtualLongMethod__return(uintptr_t);
 114   probe CallNonvirtualLongMethodV__entry(void*, void*, void*, uintptr_t);
 115   probe CallNonvirtualLongMethodV__return(uintptr_t);
 116   probe CallNonvirtualObjectMethodA__entry(void*, void*, void*, uintptr_t);
 117   probe CallNonvirtualObjectMethodA__return(void*);
 118   probe CallNonvirtualObjectMethod__entry(void*, void*, void*, uintptr_t);
 119   probe CallNonvirtualObjectMethod__return(void*);
 120   probe CallNonvirtualObjectMethodV__entry(void*, void*, void*, uintptr_t);
 121   probe CallNonvirtualObjectMethodV__return(void*);
 122   probe CallNonvirtualShortMethodA__entry(void*, void*, void*, uintptr_t);
 123   probe CallNonvirtualShortMethodA__return(uint16_t);
 124   probe CallNonvirtualShortMethod__entry(void*, void*, void*, uintptr_t);
 125   probe CallNonvirtualShortMethod__return(uint16_t);
 126   probe CallNonvirtualShortMethodV__entry(void*, void*, void*, uintptr_t);
 127   probe CallNonvirtualShortMethodV__return(uint16_t);
 128   probe CallNonvirtualVoidMethodA__entry(void*, void*, void*, uintptr_t);
 129   probe CallNonvirtualVoidMethodA__return();
 130   probe CallNonvirtualVoidMethod__entry(void*, void*, void*, uintptr_t);
 131   probe CallNonvirtualVoidMethod__return();
 132   probe CallNonvirtualVoidMethodV__entry(void*, void*, void*, uintptr_t);  
 133   probe CallNonvirtualVoidMethodV__return();
 134   probe CallObjectMethodA__entry(void*, void*, uintptr_t);
 135   probe CallObjectMethodA__return(void*);
 136   probe CallObjectMethod__entry(void*, void*, uintptr_t);
 137   probe CallObjectMethod__return(void*);
 138   probe CallObjectMethodV__entry(void*, void*, uintptr_t);
 139   probe CallObjectMethodV__return(void*);
 140   probe CallShortMethodA__entry(void*, void*, uintptr_t);
 141   probe CallShortMethodA__return(uint16_t);
 142   probe CallShortMethod__entry(void*, void*, uintptr_t);
 143   probe CallShortMethod__return(uint16_t);
 144   probe CallShortMethodV__entry(void*, void*, uintptr_t);
 145   probe CallShortMethodV__return(uint16_t);
 146   probe CallStaticBooleanMethodA__entry(void*, void*, uintptr_t);
 147   probe CallStaticBooleanMethodA__return(uintptr_t);
 148   probe CallStaticBooleanMethod__entry(void*, void*, uintptr_t);
 149   probe CallStaticBooleanMethod__return(uintptr_t);
 150   probe CallStaticBooleanMethodV__entry(void*, void*, uintptr_t);
 151   probe CallStaticBooleanMethodV__return(uintptr_t);
 152   probe CallStaticByteMethodA__entry(void*, void*, uintptr_t);
 153   probe CallStaticByteMethodA__return(char);
 154   probe CallStaticByteMethod__entry(void*, void*, uintptr_t);
 155   probe CallStaticByteMethod__return(char);
 156   probe CallStaticByteMethodV__entry(void*, void*, uintptr_t);
 157   probe CallStaticByteMethodV__return(char);
 158   probe CallStaticCharMethodA__entry(void*, void*, uintptr_t);
 159   probe CallStaticCharMethodA__return(uint16_t);
 160   probe CallStaticCharMethod__entry(void*, void*, uintptr_t);
 161   probe CallStaticCharMethod__return(uint16_t);
 162   probe CallStaticCharMethodV__entry(void*, void*, uintptr_t);
 163   probe CallStaticCharMethodV__return(uint16_t);
 164   probe CallStaticDoubleMethodA__entry(void*, void*, uintptr_t);
 165   probe CallStaticDoubleMethodA__return();
 166   probe CallStaticDoubleMethod__entry(void*, void*, uintptr_t);
 167   probe CallStaticDoubleMethod__return();
 168   probe CallStaticDoubleMethodV__entry(void*, void*, uintptr_t);
 169   probe CallStaticDoubleMethodV__return();
 170   probe CallStaticFloatMethodA__entry(void*, void*, uintptr_t);
 171   probe CallStaticFloatMethodA__return();
 172   probe CallStaticFloatMethod__entry(void*, void*, uintptr_t);
 173   probe CallStaticFloatMethod__return();
 174   probe CallStaticFloatMethodV__entry(void*, void*, uintptr_t);
 175   probe CallStaticFloatMethodV__return();
 176   probe CallStaticIntMethodA__entry(void*, void*, uintptr_t);
 177   probe CallStaticIntMethodA__return(uint32_t);
 178   probe CallStaticIntMethod__entry(void*, void*, uintptr_t);
 179   probe CallStaticIntMethod__return(uint32_t);
 180   probe CallStaticIntMethodV__entry(void*, void*, uintptr_t);
 181   probe CallStaticIntMethodV__return(uint32_t);
 182   probe CallStaticLongMethodA__entry(void*, void*, uintptr_t);
 183   probe CallStaticLongMethodA__return(uintptr_t);
 184   probe CallStaticLongMethod__entry(void*, void*, uintptr_t);
 185   probe CallStaticLongMethod__return(uintptr_t);
 186   probe CallStaticLongMethodV__entry(void*, void*, uintptr_t);
 187   probe CallStaticLongMethodV__return(uintptr_t);
 188   probe CallStaticObjectMethodA__entry(void*, void*, uintptr_t);
 189   probe CallStaticObjectMethodA__return(void*);
 190   probe CallStaticObjectMethod__entry(void*, void*, uintptr_t);
 191   probe CallStaticObjectMethod__return(void*);
 192   probe CallStaticObjectMethodV__entry(void*, void*, uintptr_t);
 193   probe CallStaticObjectMethodV__return(void*);
 194   probe CallStaticShortMethodA__entry(void*, void*, uintptr_t);
 195   probe CallStaticShortMethodA__return(uint16_t);
 196   probe CallStaticShortMethod__entry(void*, void*, uintptr_t);
 197   probe CallStaticShortMethod__return(uint16_t);
 198   probe CallStaticShortMethodV__entry(void*, void*, uintptr_t);
 199   probe CallStaticShortMethodV__return(uint16_t);
 200   probe CallStaticVoidMethodA__entry(void*, void*, uintptr_t);
 201   probe CallStaticVoidMethodA__return();
 202   probe CallStaticVoidMethod__entry(void*, void*, uintptr_t);
 203   probe CallStaticVoidMethod__return(); 
 204   probe CallStaticVoidMethodV__entry(void*, void*, uintptr_t);  
 205   probe CallStaticVoidMethodV__return();
 206   probe CallVoidMethodA__entry(void*, void*, uintptr_t);  
 207   probe CallVoidMethodA__return();
 208   probe CallVoidMethod__entry(void*, void*, uintptr_t);  
 209   probe CallVoidMethod__return(); 
 210   probe CallVoidMethodV__entry(void*, void*, uintptr_t);  
 211   probe CallVoidMethodV__return();
 212   probe CreateJavaVM__entry(void**, void**, void*);
 213   probe CreateJavaVM__return(uint32_t);
 214   probe DefineClass__entry(void*, const char*, void*, char, uintptr_t);
 215   probe DefineClass__return(void*);
 216   probe DeleteGlobalRef__entry(void*, void*);
 217   probe DeleteGlobalRef__return();
 218   probe DeleteLocalRef__entry(void*, void*);
 219   probe DeleteLocalRef__return();
 220   probe DeleteWeakGlobalRef__entry(void*, void*);
 221   probe DeleteWeakGlobalRef__return();
 222   probe DestroyJavaVM__entry(void*);
 223   probe DestroyJavaVM__return(uint32_t);
 224   probe DetachCurrentThread__entry(void*);
 225   probe DetachCurrentThread__return(uint32_t);
 226   probe EnsureLocalCapacity__entry(void*, uint32_t);
 227   probe EnsureLocalCapacity__return(uint32_t);
 228   probe ExceptionCheck__entry(void*);
 229   probe ExceptionCheck__return(uintptr_t);
 230   probe ExceptionClear__entry(void*);
 231   probe ExceptionClear__return();
 232   probe ExceptionDescribe__entry(void*);  
 233   probe ExceptionDescribe__return();
 234   probe ExceptionOccurred__entry(void*);
 235   probe ExceptionOccurred__return(void*);
 236   probe FatalError__entry(void* env, const char*);
 237   probe FindClass__entry(void*, const char*);
 238   probe FindClass__return(void*);
 239   probe FromReflectedField__entry(void*, void*);
 240   probe FromReflectedField__return(uintptr_t);
 241   probe FromReflectedMethod__entry(void*, void*);
 242   probe FromReflectedMethod__return(uintptr_t);
 243   probe GetArrayLength__entry(void*, void*);
 244   probe GetArrayLength__return(uintptr_t);
 245   probe GetBooleanArrayElements__entry(void*, void*, uintptr_t*);
 246   probe GetBooleanArrayElements__return(uintptr_t*);
 247   probe GetBooleanArrayRegion__entry(void*, void*, uintptr_t, uintptr_t, uintptr_t*);
 248   probe GetBooleanArrayRegion__return();
 249   probe GetBooleanField__entry(void*, void*, uintptr_t);
 250   probe GetBooleanField__return(uintptr_t);
 251   probe GetByteArrayElements__entry(void*, void*, uintptr_t*);
 252   probe GetByteArrayElements__return(char*);
 253   probe GetByteArrayRegion__entry(void*, void*, uintptr_t, uintptr_t, char*);
 254   probe GetByteArrayRegion__return();
 255   probe GetByteField__entry(void*, void*, uintptr_t);
 256   probe GetByteField__return(char);
 257   probe GetCharArrayElements__entry(void*, void*, uintptr_t*);
 258   probe GetCharArrayElements__return(uint16_t*);
 259   probe GetCharArrayRegion__entry(void*, void*, uintptr_t, uintptr_t, uint16_t*);
 260   probe GetCharArrayRegion__return();
 261   probe GetCharField__entry(void*, void*, uintptr_t);
 262   probe GetCharField__return(uint16_t);
 263   probe GetCreatedJavaVMs__entry(void**, uintptr_t, uintptr_t*);
 264   probe GetCreatedJavaVMs__return(uintptr_t);
 265   probe GetDefaultJavaVMInitArgs__entry(void*);
 266   probe GetDefaultJavaVMInitArgs__return(uint32_t);
 267   probe GetDirectBufferAddress__entry(void*, void*);
 268   probe GetDirectBufferAddress__return(void*);
 269   probe GetDirectBufferCapacity__entry(void*, void*);
 270   probe GetDirectBufferCapacity__return(uintptr_t);
 271   probe GetDoubleArrayElements__entry(void*, void*, uintptr_t*);
 272   probe GetDoubleArrayElements__return(double*);
 273   probe GetDoubleArrayRegion__entry(void*, void*, uintptr_t, uintptr_t, double*);
 274   probe GetDoubleArrayRegion__return();
 275   probe GetDoubleField__entry(void*, void*, uintptr_t);
 276   probe GetDoubleField__return();
 277   probe GetEnv__entry(void*, void*, uint32_t);
 278   probe GetEnv__return(uint32_t);
 279   probe GetFieldID__entry(void*, void*, const char*, const char*);
 280   probe GetFieldID__return(uintptr_t);
 281   probe GetFloatArrayElements__entry(void*, void*, uintptr_t*);
 282   probe GetFloatArrayElements__return(float*);
 283   probe GetFloatArrayRegion__entry(void*, void*, uintptr_t, uintptr_t, float*);
 284   probe GetFloatArrayRegion__return();
 285   probe GetFloatField__entry(void*, void*, uintptr_t);
 286   probe GetFloatField__return();
 287   probe GetIntArrayElements__entry(void*, void*, uintptr_t*);
 288   probe GetIntArrayElements__return(uint32_t*);
 289   probe GetIntArrayRegion__entry(void*, void*, uintptr_t, uintptr_t, uint32_t*);
 290   probe GetIntArrayRegion__return();
 291   probe GetIntField__entry(void*, void*, uintptr_t);
 292   probe GetIntField__return(uint32_t);
 293   probe GetJavaVM__entry(void*, void**);
 294   probe GetJavaVM__return(uint32_t);
 295   probe GetLongArrayElements__entry(void*, void*, uintptr_t*);
 296   probe GetLongArrayElements__return(uintptr_t*);
 297   probe GetLongArrayRegion__entry(void*, void*, uintptr_t, uintptr_t, uintptr_t*);
 298   probe GetLongArrayRegion__return();
 299   probe GetLongField__entry(void*, void*, uintptr_t);
 300   probe GetLongField__return(uintptr_t);
 301   probe GetMethodID__entry(void*, void*, const char*, const char*);
 302   probe GetMethodID__return(uintptr_t);
 303   probe GetObjectArrayElement__entry(void*, void*, uintptr_t);
 304   probe GetObjectArrayElement__return(void*);
 305   probe GetObjectClass__entry(void*, void*);
 306   probe GetObjectClass__return(void*);
 307   probe GetObjectField__entry(void*, void*, uintptr_t);
 308   probe GetObjectField__return(void*);
 309   probe GetObjectRefType__entry(void*, void*);
 310   probe GetObjectRefType__return(void*);
 311   probe GetPrimitiveArrayCritical__entry(void*, void*, uintptr_t*);
 312   probe GetPrimitiveArrayCritical__return(void*);
 313   probe GetShortArrayElements__entry(void*, void*, uintptr_t*);
 314   probe GetShortArrayElements__return(uint16_t*);
 315   probe GetShortArrayRegion__entry(void*, void*, uintptr_t, uintptr_t, uint16_t*);
 316   probe GetShortArrayRegion__return();
 317   probe GetShortField__entry(void*, void*, uintptr_t);
 318   probe GetShortField__return(uint16_t);
 319   probe GetStaticBooleanField__entry(void*, void*, uintptr_t);
 320   probe GetStaticBooleanField__return(uintptr_t);
 321   probe GetStaticByteField__entry(void*, void*, uintptr_t);
 322   probe GetStaticByteField__return(char);
 323   probe GetStaticCharField__entry(void*, void*, uintptr_t);
 324   probe GetStaticCharField__return(uint16_t);
 325   probe GetStaticDoubleField__entry(void*, void*, uintptr_t);
 326   probe GetStaticDoubleField__return();
 327   probe GetStaticFieldID__entry(void*, void*, const char*, const char*);
 328   probe GetStaticFieldID__return(uintptr_t);
 329   probe GetStaticFloatField__entry(void*, void*, uintptr_t);
 330   probe GetStaticFloatField__return();
 331   probe GetStaticIntField__entry(void*, void*, uintptr_t);
 332   probe GetStaticIntField__return(uint32_t);
 333   probe GetStaticLongField__entry(void*, void*, uintptr_t);
 334   probe GetStaticLongField__return(uintptr_t);
 335   probe GetStaticMethodID__entry(void*, void*, const char*, const char*);
 336   probe GetStaticMethodID__return(uintptr_t);
 337   probe GetStaticObjectField__entry(void*, void*, uintptr_t);
 338   probe GetStaticObjectField__return(void*);
 339   probe GetStaticShortField__entry(void*, void*, uintptr_t);
 340   probe GetStaticShortField__return(uint16_t);
 341   probe GetStringChars__entry(void*, void*, uintptr_t*);
 342   probe GetStringChars__return(const uint16_t*);
 343   probe GetStringCritical__entry(void*, void*, uintptr_t*);
 344   probe GetStringCritical__return(const uint16_t*);
 345   probe GetStringLength__entry(void*, void*);
 346   probe GetStringLength__return(uintptr_t);
 347   probe GetStringRegion__entry(void*, void*, uintptr_t, uintptr_t, uint16_t*);
 348   probe GetStringRegion__return();
 349   probe GetStringUTFChars__entry(void*, void*, uintptr_t*);
 350   probe GetStringUTFChars__return(const char*);
 351   probe GetStringUTFLength__entry(void*, void*);
 352   probe GetStringUTFLength__return(uintptr_t);
 353   probe GetStringUTFRegion__entry(void*, void*, uintptr_t, uintptr_t, char*);
 354   probe GetStringUTFRegion__return();
 355   probe GetSuperclass__entry(void*, void*);
 356   probe GetSuperclass__return(void*);
 357   probe GetVersion__entry(void*);
 358   probe GetVersion__return(uint32_t);
 359   probe IsAssignableFrom__entry(void*, void*, void*);
 360   probe IsAssignableFrom__return(uintptr_t);
 361   probe IsInstanceOf__entry(void*, void*, void*);
 362   probe IsInstanceOf__return(uintptr_t);
 363   probe IsSameObject__entry(void*, void*, void*);
 364   probe IsSameObject__return(uintptr_t);
 365   probe MonitorEnter__entry(void*, void*);
 366   probe MonitorEnter__return(uint32_t);
 367   probe MonitorExit__entry(void*, void*);
 368   probe MonitorExit__return(uint32_t);
 369   probe NewBooleanArray__entry(void*, uintptr_t);
 370   probe NewBooleanArray__return(void*);
 371   probe NewByteArray__entry(void*, uintptr_t);
 372   probe NewByteArray__return(void*);
 373   probe NewCharArray__entry(void*, uintptr_t);
 374   probe NewCharArray__return(void*);
 375   probe NewDirectByteBuffer__entry(void*, void*, uintptr_t);
 376   probe NewDirectByteBuffer__return(void*);
 377   probe NewDoubleArray__entry(void*, uintptr_t);
 378   probe NewDoubleArray__return(void*);
 379   probe NewFloatArray__entry(void*, uintptr_t);
 380   probe NewFloatArray__return(void*);
 381   probe NewGlobalRef__entry(void*, void*);
 382   probe NewGlobalRef__return(void*);
 383   probe NewIntArray__entry(void*, uintptr_t);
 384   probe NewIntArray__return(void*);
 385   probe NewLocalRef__entry(void*, void*);
 386   probe NewLocalRef__return(void*);
 387   probe NewLongArray__entry(void*, uintptr_t);
 388   probe NewLongArray__return(void*);
 389   probe NewObjectA__entry(void*, void*, uintptr_t);  
 390   probe NewObjectA__return(void*);
 391   probe NewObjectArray__entry(void*, uintptr_t, void*, void*);
 392   probe NewObjectArray__return(void*);
 393   probe NewObject__entry(void*, void*, uintptr_t); 
 394   probe NewObject__return(void*);
 395   probe NewObjectV__entry(void*, void*, uintptr_t);  
 396   probe NewObjectV__return(void*);
 397   probe NewShortArray__entry(void*, uintptr_t);
 398   probe NewShortArray__return(void*);
 399   probe NewString__entry(void*, const uint16_t*, uintptr_t);
 400   probe NewString__return(void*);
 401   probe NewStringUTF__entry(void*, const char*);
 402   probe NewStringUTF__return(void*);
 403   probe NewWeakGlobalRef__entry(void*, void*);
 404   probe NewWeakGlobalRef__return(void*);
 405   probe PopLocalFrame__entry(void*, void*);
 406   probe PopLocalFrame__return(void*);
 407   probe PushLocalFrame__entry(void*, uint32_t);
 408   probe PushLocalFrame__return(uint32_t);
 409   probe RegisterNatives__entry(void*, void*, const void*, uint32_t);  
 410   probe RegisterNatives__return(uint32_t);
 411   probe ReleaseBooleanArrayElements__entry(void*, void*, uintptr_t*, uint32_t);
 412   probe ReleaseBooleanArrayElements__return();
 413   probe ReleaseByteArrayElements__entry(void*, void*, char*, uint32_t);
 414   probe ReleaseByteArrayElements__return();
 415   probe ReleaseCharArrayElements__entry(void*, void*, uint16_t*, uint32_t);
 416   probe ReleaseCharArrayElements__return();
 417   probe ReleaseDoubleArrayElements__entry(void*, void*, double*, uint32_t);
 418   probe ReleaseDoubleArrayElements__return();
 419   probe ReleaseFloatArrayElements__entry(void*, void*, float*, uint32_t);
 420   probe ReleaseFloatArrayElements__return();
 421   probe ReleaseIntArrayElements__entry(void*, void*, uint32_t*, uint32_t);
 422   probe ReleaseIntArrayElements__return();
 423   probe ReleaseLongArrayElements__entry(void*, void*, uintptr_t*, uint32_t);
 424   probe ReleaseLongArrayElements__return();
 425   probe ReleasePrimitiveArrayCritical__entry(void*, void*, void*, uint32_t);
 426   probe ReleasePrimitiveArrayCritical__return();
 427   probe ReleaseShortArrayElements__entry(void*, void*, uint16_t*, uint32_t);
 428   probe ReleaseShortArrayElements__return();
 429   probe ReleaseStringChars__entry(void*, void*, const uint16_t*);
 430   probe ReleaseStringChars__return();
 431   probe ReleaseStringCritical__entry(void*, void*, const uint16_t*);
 432   probe ReleaseStringCritical__return();
 433   probe ReleaseStringUTFChars__entry(void*, void*, const char*);
 434   probe ReleaseStringUTFChars__return();
 435   probe SetBooleanArrayRegion__entry(void*, void*, uintptr_t, uintptr_t, const uintptr_t*);
 436   probe SetBooleanArrayRegion__return();
 437   probe SetBooleanField__entry(void*, void*, uintptr_t, uintptr_t);
 438   probe SetBooleanField__return();
 439   probe SetByteArrayRegion__entry(void*, void*, uintptr_t, uintptr_t, const char*);
 440   probe SetByteArrayRegion__return();
 441   probe SetByteField__entry(void*, void*, uintptr_t, char);
 442   probe SetByteField__return();
 443   probe SetCharArrayRegion__entry(void*, void*, uintptr_t, uintptr_t, const uint16_t*);
 444   probe SetCharArrayRegion__return();
 445   probe SetCharField__entry(void*, void*, uintptr_t, uint16_t);
 446   probe SetCharField__return();
 447   probe SetDoubleArrayRegion__entry(void*, void*, uintptr_t, uintptr_t, const double*);
 448   probe SetDoubleArrayRegion__return();
 449   probe SetDoubleField__entry(void*, void*, uintptr_t);
 450   probe SetDoubleField__return();
 451   probe SetFloatArrayRegion__entry(void*, void*, uintptr_t, uintptr_t, const float*);
 452   probe SetFloatArrayRegion__return();
 453   probe SetFloatField__entry(void*, void*, uintptr_t);
 454   probe SetFloatField__return();
 455   probe SetIntArrayRegion__entry(void*, void*, uintptr_t, uintptr_t, const uint32_t*);
 456   probe SetIntArrayRegion__return();
 457   probe SetIntField__entry(void*, void*, uintptr_t, uint32_t);
 458   probe SetIntField__return();
 459   probe SetLongArrayRegion__entry(void*, void*, uintptr_t, uintptr_t, const uintptr_t*);
 460   probe SetLongArrayRegion__return();
 461   probe SetLongField__entry(void*, void*, uintptr_t, uintptr_t);
 462   probe SetLongField__return();
 463   probe SetObjectArrayElement__entry(void*, void*, uintptr_t, void*);
 464   probe SetObjectArrayElement__return();
 465   probe SetObjectField__entry(void*, void*, uintptr_t, void*);
 466   probe SetObjectField__return();
 467   probe SetShortArrayRegion__entry(void*, void*, uintptr_t, uintptr_t, const uint16_t*);
 468   probe SetShortArrayRegion__return();
 469   probe SetShortField__entry(void*, void*, uintptr_t, uint16_t);
 470   probe SetShortField__return();
 471   probe SetStaticBooleanField__entry(void*, void*, uintptr_t, uintptr_t);
 472   probe SetStaticBooleanField__return();
 473   probe SetStaticByteField__entry(void*, void*, uintptr_t, char);
 474   probe SetStaticByteField__return();
 475   probe SetStaticCharField__entry(void*, void*, uintptr_t, uint16_t);
 476   probe SetStaticCharField__return();
 477   probe SetStaticDoubleField__entry(void*, void*, uintptr_t);
 478   probe SetStaticDoubleField__return();
 479   probe SetStaticFloatField__entry(void*, void*, uintptr_t);
 480   probe SetStaticFloatField__return();
 481   probe SetStaticIntField__entry(void*, void*, uintptr_t, uint32_t);
 482   probe SetStaticIntField__return();
 483   probe SetStaticLongField__entry(void*, void*, uintptr_t, uintptr_t);
 484   probe SetStaticLongField__return();
 485   probe SetStaticObjectField__entry(void*, void*, uintptr_t, void*);
 486   probe SetStaticObjectField__return();
 487   probe SetStaticShortField__entry(void*, void*, uintptr_t, uint16_t);
 488   probe SetStaticShortField__return();
 489   probe Throw__entry(void*, void*);
 490   probe Throw__return(intptr_t);
 491   probe ThrowNew__entry(void*, void*, const char*);  
 492   probe ThrowNew__return(intptr_t);  
 493   probe ToReflectedField__entry(void*, void*, uintptr_t, uintptr_t);
 494   probe ToReflectedField__return(void*);
 495   probe ToReflectedMethod__entry(void*, void*, uintptr_t, uintptr_t);
 496   probe ToReflectedMethod__return(void*);
 497   probe UnregisterNatives__entry(void*, void*);  
 498   probe UnregisterNatives__return(uint32_t);
 499 };
 500 
 501 #pragma D attributes Standard/Standard/Common provider hotspot_jni provider
 502 #pragma D attributes Private/Private/Unknown provider hotspot_jni module
 503 #pragma D attributes Private/Private/Unknown provider hotspot_jni function
 504 #pragma D attributes Standard/Standard/Common provider hotspot_jni name
 505 #pragma D attributes Evolving/Evolving/Common provider hotspot_jni args
 506