< prev index next >

test/hotspot/jtreg/vmTestbase/nsk/jvmti/unit/FollowReferences/followref004/followref004.cpp

Print this page
rev 52215 : 8212770: Remove spaces before/after () for vmTestbase/jvmti/[s-u]
Summary:
Reviewed-by:


  67 
  68 } /* heapReferenceCallback */
  69 
  70 
  71 jint JNICALL primitiveFieldCallback(
  72      jvmtiHeapReferenceKind        reference_kind,
  73      const jvmtiHeapReferenceInfo* reference_info,
  74      jlong                         class_tag,
  75      jlong*                        tag_ptr,
  76      jvalue                        value,
  77      jvmtiPrimitiveType            value_type,
  78      void*                         user_data)
  79 {
  80     CHECK_USER_DATA(user_data);
  81 
  82     printf(" primitiveFieldCallback: ref=%s,"
  83                " class_tag=%-3ld, tag=%-3ld, type=%c\n",
  84                g_refKindStr[reference_kind],
  85                (long) class_tag,
  86                (long) DEREF(tag_ptr),
  87                (int ) value_type);
  88 
  89     fflush(0);
  90 
  91     markTagVisited(DEREF(tag_ptr));
  92 
  93     return JVMTI_VISIT_OBJECTS;
  94 
  95 } /* primitiveFieldCallback */
  96 
  97 
  98 jint JNICALL arrayPrimitiveValueCallback(
  99      jlong              class_tag,
 100      jlong              size,
 101      jlong*             tag_ptr,
 102      jint               element_count,
 103      jvmtiPrimitiveType element_type,
 104      const void*        elements,
 105      void*              user_data)
 106 {
 107     CHECK_USER_DATA(user_data);
 108 
 109     printf("    arrayPrimitiveValueCallback: class_tag=%-3ld, tag=%-3ld, len=%d, type=%c\n",
 110            (long) class_tag,
 111            (long) DEREF(tag_ptr),
 112            (int ) element_count,
 113            (int ) element_type);
 114     fflush(0);
 115 
 116     markTagVisited(DEREF(tag_ptr));
 117 
 118     return JVMTI_VISIT_OBJECTS;
 119 
 120 } /* arrayPrimitiveValueCallback */
 121 
 122 
 123 jint JNICALL stringPrimitiveValueCallback(
 124      jlong        class_tag,
 125      jlong        size,
 126      jlong*       tag_ptr,
 127      const jchar* value,
 128      jint         value_length,
 129      void*        user_data)
 130 {
 131     printf("stringPrimitiveValueCallback: class_tag=%-3ld, tag=%-3ld, len=%d\n",
 132            (long) class_tag,
 133            (long) DEREF(tag_ptr),
 134            (int ) value_length);
 135     fflush(0);
 136 
 137     markTagVisited(DEREF(tag_ptr));
 138 
 139     return JVMTI_VISIT_OBJECTS;
 140 
 141 } /* stringPrimitiveValueCallback */
 142 
 143 /* ============================================================================= */
 144 
 145 static void createGlobalRefs(JNIEnv * jni)
 146 {
 147     jclass klass;
 148 
 149     if  ( ! NSK_JNI_VERIFY(jni, (klass = NSK_CPP_STUB2(FindClass, jni, JAVA_LANG_STRING_CLASS_NAME)) != NULL) ) {
 150         nsk_jvmti_setFailStatus();
 151         return;
 152     }
 153 
 154     if ( ! NSK_JNI_VERIFY(jni, (g_jniGlobalRef = NSK_CPP_STUB2(NewGlobalRef, jni, klass)) != NULL) ) {
 155         nsk_jvmti_setFailStatus();
 156     }
 157 
 158     if ( ! NSK_JNI_VERIFY(jni, (g_jniWeakGlobalRef = NSK_CPP_STUB2(NewWeakGlobalRef, jni, klass)) != NULL) ) {
 159         nsk_jvmti_setFailStatus();
 160     }
 161 
 162 } /* createGlobalRefs */
 163 
 164 /** Agent algorithm. */
 165 
 166 static void JNICALL agentProc(jvmtiEnv* jvmti, JNIEnv* jni, void* arg)
 167 {
 168     jvmtiError retCode;
 169 
 170     printf(">>> Sync with Java code\n");
 171     fflush(0);
 172 
 173     if (!NSK_VERIFY(nsk_jvmti_waitForSync(g_timeout))) {
 174         return;
 175     }
 176 
 177     printf(">>> Create JNI global references\n");
 178     fflush(0);
 179 
 180     createGlobalRefs(jni);
 181 
 182     retCode = NSK_CPP_STUB6(FollowReferences,
 183                               jvmti,
 184                               (jint) 0,                 /* heap filter */
 185                               NULL,                     /* class */
 186                               NULL,                     /* inital object */
 187                               &g_heapCallbacks,
 188                               (const void *) &g_fakeUserData);
 189 
 190     if ( ! NSK_VERIFY(retCode == JVMTI_ERROR_NONE) ) {
 191         nsk_jvmti_setFailStatus();
 192     }
 193 
 194     checkThatAllTagsVisited();
 195 
 196     printf(">>> Let debugee to finish\n");
 197     fflush(0);
 198 
 199     if (!NSK_VERIFY(nsk_jvmti_resumeSync())) {
 200         return;
 201     }
 202 
 203 } /* agentProc */
 204 
 205 
 206 /* ============================================================================= */
 207 
 208 /** Agent library initialization. */
 209 
 210 #ifdef STATIC_BUILD




  67 
  68 } /* heapReferenceCallback */
  69 
  70 
  71 jint JNICALL primitiveFieldCallback(
  72      jvmtiHeapReferenceKind        reference_kind,
  73      const jvmtiHeapReferenceInfo* reference_info,
  74      jlong                         class_tag,
  75      jlong*                        tag_ptr,
  76      jvalue                        value,
  77      jvmtiPrimitiveType            value_type,
  78      void*                         user_data)
  79 {
  80     CHECK_USER_DATA(user_data);
  81 
  82     printf(" primitiveFieldCallback: ref=%s,"
  83                " class_tag=%-3ld, tag=%-3ld, type=%c\n",
  84                g_refKindStr[reference_kind],
  85                (long) class_tag,
  86                (long) DEREF(tag_ptr),
  87                (int) value_type);
  88 
  89     fflush(0);
  90 
  91     markTagVisited(DEREF(tag_ptr));
  92 
  93     return JVMTI_VISIT_OBJECTS;
  94 
  95 } /* primitiveFieldCallback */
  96 
  97 
  98 jint JNICALL arrayPrimitiveValueCallback(
  99      jlong              class_tag,
 100      jlong              size,
 101      jlong*             tag_ptr,
 102      jint               element_count,
 103      jvmtiPrimitiveType element_type,
 104      const void*        elements,
 105      void*              user_data)
 106 {
 107     CHECK_USER_DATA(user_data);
 108 
 109     printf("    arrayPrimitiveValueCallback: class_tag=%-3ld, tag=%-3ld, len=%d, type=%c\n",
 110            (long) class_tag,
 111            (long) DEREF(tag_ptr),
 112            (int) element_count,
 113            (int) element_type);
 114     fflush(0);
 115 
 116     markTagVisited(DEREF(tag_ptr));
 117 
 118     return JVMTI_VISIT_OBJECTS;
 119 
 120 } /* arrayPrimitiveValueCallback */
 121 
 122 
 123 jint JNICALL stringPrimitiveValueCallback(
 124      jlong        class_tag,
 125      jlong        size,
 126      jlong*       tag_ptr,
 127      const jchar* value,
 128      jint         value_length,
 129      void*        user_data)
 130 {
 131     printf("stringPrimitiveValueCallback: class_tag=%-3ld, tag=%-3ld, len=%d\n",
 132            (long) class_tag,
 133            (long) DEREF(tag_ptr),
 134            (int) value_length);
 135     fflush(0);
 136 
 137     markTagVisited(DEREF(tag_ptr));
 138 
 139     return JVMTI_VISIT_OBJECTS;
 140 
 141 } /* stringPrimitiveValueCallback */
 142 
 143 /* ============================================================================= */
 144 
 145 static void createGlobalRefs(JNIEnv * jni)
 146 {
 147     jclass klass;
 148 
 149     if  (!NSK_JNI_VERIFY(jni, (klass = NSK_CPP_STUB2(FindClass, jni, JAVA_LANG_STRING_CLASS_NAME)) != NULL)) {
 150         nsk_jvmti_setFailStatus();
 151         return;
 152     }
 153 
 154     if (!NSK_JNI_VERIFY(jni, (g_jniGlobalRef = NSK_CPP_STUB2(NewGlobalRef, jni, klass)) != NULL)) {
 155         nsk_jvmti_setFailStatus();
 156     }
 157 
 158     if (!NSK_JNI_VERIFY(jni, (g_jniWeakGlobalRef = NSK_CPP_STUB2(NewWeakGlobalRef, jni, klass)) != NULL)) {
 159         nsk_jvmti_setFailStatus();
 160     }
 161 
 162 } /* createGlobalRefs */
 163 
 164 /** Agent algorithm. */
 165 
 166 static void JNICALL agentProc(jvmtiEnv* jvmti, JNIEnv* jni, void* arg)
 167 {
 168     jvmtiError retCode;
 169 
 170     printf(">>> Sync with Java code\n");
 171     fflush(0);
 172 
 173     if (!NSK_VERIFY(nsk_jvmti_waitForSync(g_timeout))) {
 174         return;
 175     }
 176 
 177     printf(">>> Create JNI global references\n");
 178     fflush(0);
 179 
 180     createGlobalRefs(jni);
 181 
 182     retCode = NSK_CPP_STUB6(FollowReferences,
 183                               jvmti,
 184                               (jint) 0,                 /* heap filter */
 185                               NULL,                     /* class */
 186                               NULL,                     /* inital object */
 187                               &g_heapCallbacks,
 188                               (const void *) &g_fakeUserData);
 189 
 190     if (!NSK_VERIFY(retCode == JVMTI_ERROR_NONE)) {
 191         nsk_jvmti_setFailStatus();
 192     }
 193 
 194     checkThatAllTagsVisited();
 195 
 196     printf(">>> Let debugee to finish\n");
 197     fflush(0);
 198 
 199     if (!NSK_VERIFY(nsk_jvmti_resumeSync())) {
 200         return;
 201     }
 202 
 203 } /* agentProc */
 204 
 205 
 206 /* ============================================================================= */
 207 
 208 /** Agent library initialization. */
 209 
 210 #ifdef STATIC_BUILD


< prev index next >