src/share/vm/prims/jni.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File 7089790_headers_only Sdiff src/share/vm/prims

src/share/vm/prims/jni.cpp

Print this page
rev 2694 : imported patch headers_only


  65 #include "runtime/sharedRuntime.hpp"
  66 #include "runtime/signature.hpp"
  67 #include "runtime/vm_operations.hpp"
  68 #include "services/runtimeService.hpp"
  69 #include "utilities/defaultStream.hpp"
  70 #include "utilities/dtrace.hpp"
  71 #include "utilities/events.hpp"
  72 #include "utilities/histogram.hpp"
  73 #ifdef TARGET_OS_FAMILY_linux
  74 # include "os_linux.inline.hpp"
  75 # include "thread_linux.inline.hpp"
  76 #endif
  77 #ifdef TARGET_OS_FAMILY_solaris
  78 # include "os_solaris.inline.hpp"
  79 # include "thread_solaris.inline.hpp"
  80 #endif
  81 #ifdef TARGET_OS_FAMILY_windows
  82 # include "os_windows.inline.hpp"
  83 # include "thread_windows.inline.hpp"
  84 #endif




  85 
  86 static jint CurrentVersion = JNI_VERSION_1_6;
  87 
  88 
  89 // The DT_RETURN_MARK macros create a scoped object to fire the dtrace
  90 // '-return' probe regardless of the return path is taken out of the function.
  91 // Methods that have multiple return paths use this to avoid having to
  92 // instrument each return path.  Methods that use CHECK or THROW must use this
  93 // since those macros can cause an immedate uninstrumented return.
  94 //
  95 // In order to get the return value, a reference to the variable containing
  96 // the return value must be passed to the contructor of the object, and
  97 // the return value must be set before return (since the mark object has
  98 // a reference to it).
  99 //
 100 // Example:
 101 // DT_RETURN_MARK_DECL(SomeFunc, int);
 102 // JNI_ENTRY(int, SomeFunc, ...)
 103 //   int return_value = 0;
 104 //   DT_RETURN_MARK(SomeFunc, int, (const int&)return_value);




  65 #include "runtime/sharedRuntime.hpp"
  66 #include "runtime/signature.hpp"
  67 #include "runtime/vm_operations.hpp"
  68 #include "services/runtimeService.hpp"
  69 #include "utilities/defaultStream.hpp"
  70 #include "utilities/dtrace.hpp"
  71 #include "utilities/events.hpp"
  72 #include "utilities/histogram.hpp"
  73 #ifdef TARGET_OS_FAMILY_linux
  74 # include "os_linux.inline.hpp"
  75 # include "thread_linux.inline.hpp"
  76 #endif
  77 #ifdef TARGET_OS_FAMILY_solaris
  78 # include "os_solaris.inline.hpp"
  79 # include "thread_solaris.inline.hpp"
  80 #endif
  81 #ifdef TARGET_OS_FAMILY_windows
  82 # include "os_windows.inline.hpp"
  83 # include "thread_windows.inline.hpp"
  84 #endif
  85 #ifdef TARGET_OS_FAMILY_bsd
  86 # include "os_bsd.inline.hpp"
  87 # include "thread_bsd.inline.hpp"
  88 #endif
  89 
  90 static jint CurrentVersion = JNI_VERSION_1_6;
  91 
  92 
  93 // The DT_RETURN_MARK macros create a scoped object to fire the dtrace
  94 // '-return' probe regardless of the return path is taken out of the function.
  95 // Methods that have multiple return paths use this to avoid having to
  96 // instrument each return path.  Methods that use CHECK or THROW must use this
  97 // since those macros can cause an immedate uninstrumented return.
  98 //
  99 // In order to get the return value, a reference to the variable containing
 100 // the return value must be passed to the contructor of the object, and
 101 // the return value must be set before return (since the mark object has
 102 // a reference to it).
 103 //
 104 // Example:
 105 // DT_RETURN_MARK_DECL(SomeFunc, int);
 106 // JNI_ENTRY(int, SomeFunc, ...)
 107 //   int return_value = 0;
 108 //   DT_RETURN_MARK(SomeFunc, int, (const int&)return_value);


src/share/vm/prims/jni.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File