< prev index next >

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

Print this page
rev 52185 : [mq]: refactor

*** 140,152 **** /* root object + reachable and unreachable object chains */ *objectsCount = 1 + 2 * chainLength; printf("Allocate memory for objects list: %d objects\n", *objectsCount); fflush(0); ! if (!NSK_JVMTI_VERIFY( ! NSK_CPP_STUB3(Allocate, jvmti, ! (*objectsCount * sizeof(ObjectDesc)), (unsigned char**) objectDescList))) { nsk_jvmti_setFailStatus(); return NSK_FALSE; } printf(" ... allocated array: 0x%p\n", (void*)objectDescList); --- 140,150 ---- /* root object + reachable and unreachable object chains */ *objectsCount = 1 + 2 * chainLength; printf("Allocate memory for objects list: %d objects\n", *objectsCount); fflush(0); ! if (!NSK_JVMTI_VERIFY(jvmti->Allocate((*objectsCount * sizeof(ObjectDesc)), (unsigned char**) objectDescList))) { nsk_jvmti_setFailStatus(); return NSK_FALSE; } printf(" ... allocated array: 0x%p\n", (void*)objectDescList);
*** 178,223 **** jclass* debugeeClass, jclass* rootObjectClass, jclass* chainObjectClass) { ! if (!NSK_JNI_VERIFY(jni, (*debugeeClass = ! NSK_CPP_STUB2(FindClass, jni, DEBUGEE_CLASS_NAME)) != NULL)) { nsk_jvmti_setFailStatus(); return NSK_FALSE; } printf("\nFound debugee class: 0x%p\n %s\n", (void*) *debugeeClass, DEBUGEE_CLASS_NAME); fflush(0); if (!NSK_JNI_VERIFY(jni, (*rootObjectClass = ! NSK_CPP_STUB2(FindClass, jni, ROOT_OBJECT_CLASS_NAME)) != NULL)) { nsk_jvmti_setFailStatus(); return NSK_FALSE; } ! if (!NSK_JVMTI_VERIFY(NSK_CPP_STUB3(SetTag, jvmti, ! *rootObjectClass, ! ROOT_CLASS_TAG))) { nsk_jvmti_setFailStatus(); } printf("\nFound root object class: 0x%p, tag=%ld\n %s\n", (void*) *rootObjectClass,(long) ROOT_CLASS_TAG, ROOT_OBJECT_CLASS_NAME); fflush(0); if (!NSK_JNI_VERIFY(jni, (*chainObjectClass = ! NSK_CPP_STUB2(FindClass, jni, CHAIN_OBJECT_CLASS_NAME)) != NULL)) { nsk_jvmti_setFailStatus(); return NSK_FALSE; } ! if (!NSK_JVMTI_VERIFY(NSK_CPP_STUB3(SetTag, jvmti, ! *chainObjectClass, ! CHAIN_CLASS_TAG))) { nsk_jvmti_setFailStatus(); } printf("\nFound chain object class: 0x%p, tag=%ld\n %s\n", (void*) *chainObjectClass, (long) CHAIN_CLASS_TAG, CHAIN_OBJECT_CLASS_NAME); --- 176,216 ---- jclass* debugeeClass, jclass* rootObjectClass, jclass* chainObjectClass) { ! if (!NSK_JNI_VERIFY(jni, (*debugeeClass = jni->FindClass(DEBUGEE_CLASS_NAME)) != NULL)) { nsk_jvmti_setFailStatus(); return NSK_FALSE; } printf("\nFound debugee class: 0x%p\n %s\n", (void*) *debugeeClass, DEBUGEE_CLASS_NAME); fflush(0); if (!NSK_JNI_VERIFY(jni, (*rootObjectClass = ! jni->FindClass(ROOT_OBJECT_CLASS_NAME)) != NULL)) { nsk_jvmti_setFailStatus(); return NSK_FALSE; } ! if (!NSK_JVMTI_VERIFY(jvmti->SetTag(*rootObjectClass, ROOT_CLASS_TAG))) { nsk_jvmti_setFailStatus(); } printf("\nFound root object class: 0x%p, tag=%ld\n %s\n", (void*) *rootObjectClass,(long) ROOT_CLASS_TAG, ROOT_OBJECT_CLASS_NAME); fflush(0); if (!NSK_JNI_VERIFY(jni, (*chainObjectClass = ! jni->FindClass(CHAIN_OBJECT_CLASS_NAME)) != NULL)) { nsk_jvmti_setFailStatus(); return NSK_FALSE; } ! if (!NSK_JVMTI_VERIFY(jvmti->SetTag(*chainObjectClass, CHAIN_CLASS_TAG))) { nsk_jvmti_setFailStatus(); } printf("\nFound chain object class: 0x%p, tag=%ld\n %s\n", (void*) *chainObjectClass, (long) CHAIN_CLASS_TAG, CHAIN_OBJECT_CLASS_NAME);
*** 239,303 **** jfieldID* nextField) { jfieldID rootObjectField = NULL; if (!NSK_JNI_VERIFY(jni, (rootObjectField = ! NSK_CPP_STUB4(GetStaticFieldID, jni, ! debugeeClass, ! OBJECT_FIELD_NAME, ! ROOT_OBJECT_CLASS_SIG)) != NULL)) { nsk_jvmti_setFailStatus(); return NSK_FALSE; } printf("\nFound fieldID: 0x%p - \'%s\' static field in debugee class\n", (void*) rootObjectField, OBJECT_FIELD_NAME); fflush(0); if (!NSK_JNI_VERIFY(jni, (*reachableChainField = ! NSK_CPP_STUB4(GetFieldID, jni, rootObjectClass, ! REACHABLE_CHAIN_FIELD_NAME, ! CHAIN_OBJECT_CLASS_SIG)) != NULL)) { nsk_jvmti_setFailStatus(); return NSK_FALSE; } printf("\nFound fieldID: 0x%p - \'%s\' field in root object class\n", (void*) reachableChainField, REACHABLE_CHAIN_FIELD_NAME); fflush(0); if (!NSK_JNI_VERIFY(jni, (*unreachableChainField = ! NSK_CPP_STUB4(GetFieldID, jni, rootObjectClass, ! UNREACHABLE_CHAIN_FIELD_NAME, ! CHAIN_OBJECT_CLASS_SIG)) != NULL)) { nsk_jvmti_setFailStatus(); return NSK_FALSE; } printf("\nFound fieldID: 0x%p - \'%s\' field in root object class\n", (void*) unreachableChainField, UNREACHABLE_CHAIN_FIELD_NAME); fflush(0); if (!NSK_JNI_VERIFY(jni, (*nextField = ! NSK_CPP_STUB4(GetFieldID, jni, chainObjectClass, ! NEXT_FIELD_NAME, CHAIN_OBJECT_CLASS_SIG)) != NULL)) { nsk_jvmti_setFailStatus(); return NSK_FALSE; } printf("\nFound fieldID: 0x%p - \'%s\' field in chain object class\n", (void*) nextField, NEXT_FIELD_NAME); fflush(0); if (!NSK_JNI_VERIFY(jni, (*rootObjectPtr = ! NSK_CPP_STUB3(GetStaticObjectField, jni, ! debugeeClass, rootObjectField)) != NULL)) { nsk_jvmti_setFailStatus(); return NSK_FALSE; } printf("\nFound root object: 0x%p\n", (void*) *rootObjectPtr); fflush(0); ! if (!NSK_JNI_VERIFY(jni, (*rootObjectPtr = ! NSK_CPP_STUB2(NewGlobalRef, jni, *rootObjectPtr)) != NULL)) { nsk_jvmti_setFailStatus(); return NSK_FALSE; } printf("Created root object global ref: 0x%p\n", (void*)*rootObjectPtr); fflush(0); --- 232,286 ---- jfieldID* nextField) { jfieldID rootObjectField = NULL; if (!NSK_JNI_VERIFY(jni, (rootObjectField = ! jni->GetStaticFieldID(debugeeClass, OBJECT_FIELD_NAME, ROOT_OBJECT_CLASS_SIG)) != NULL)) { nsk_jvmti_setFailStatus(); return NSK_FALSE; } printf("\nFound fieldID: 0x%p - \'%s\' static field in debugee class\n", (void*) rootObjectField, OBJECT_FIELD_NAME); fflush(0); if (!NSK_JNI_VERIFY(jni, (*reachableChainField = ! jni->GetFieldID(rootObjectClass, REACHABLE_CHAIN_FIELD_NAME, CHAIN_OBJECT_CLASS_SIG)) != NULL)) { nsk_jvmti_setFailStatus(); return NSK_FALSE; } printf("\nFound fieldID: 0x%p - \'%s\' field in root object class\n", (void*) reachableChainField, REACHABLE_CHAIN_FIELD_NAME); fflush(0); if (!NSK_JNI_VERIFY(jni, (*unreachableChainField = ! jni->GetFieldID(rootObjectClass, UNREACHABLE_CHAIN_FIELD_NAME, CHAIN_OBJECT_CLASS_SIG)) != NULL)) { nsk_jvmti_setFailStatus(); return NSK_FALSE; } printf("\nFound fieldID: 0x%p - \'%s\' field in root object class\n", (void*) unreachableChainField, UNREACHABLE_CHAIN_FIELD_NAME); fflush(0); if (!NSK_JNI_VERIFY(jni, (*nextField = ! jni->GetFieldID(chainObjectClass, NEXT_FIELD_NAME, CHAIN_OBJECT_CLASS_SIG)) != NULL)) { nsk_jvmti_setFailStatus(); return NSK_FALSE; } printf("\nFound fieldID: 0x%p - \'%s\' field in chain object class\n", (void*) nextField, NEXT_FIELD_NAME); fflush(0); if (!NSK_JNI_VERIFY(jni, (*rootObjectPtr = ! jni->GetStaticObjectField(debugeeClass, rootObjectField)) != NULL)) { nsk_jvmti_setFailStatus(); return NSK_FALSE; } printf("\nFound root object: 0x%p\n", (void*) *rootObjectPtr); fflush(0); ! if (!NSK_JNI_VERIFY(jni, (*rootObjectPtr = jni->NewGlobalRef(*rootObjectPtr)) != NULL)) { nsk_jvmti_setFailStatus(); return NSK_FALSE; } printf("Created root object global ref: 0x%p\n", (void*)*rootObjectPtr); fflush(0);
*** 326,347 **** } count--; tag++; ! if (!NSK_JNI_VERIFY(jni, (nextObj = ! NSK_CPP_STUB3(GetObjectField, jni, currObj, refField)) != NULL)) { nsk_jvmti_setFailStatus(); return NSK_FALSE; } objectDescList[count].tag = objTag; if (reachable) { objectDescList[count].exp_found++; } ! if (!NSK_JVMTI_VERIFY(NSK_CPP_STUB3(SetTag, jvmti, nextObj, objTag))) { nsk_jvmti_setFailStatus(); } printf(" tag=%-5ld object=0x%p\n", (long)objTag, (void*)nextObj); fflush(0); --- 309,329 ---- } count--; tag++; ! if (!NSK_JNI_VERIFY(jni, (nextObj = jni->GetObjectField(currObj, refField)) != NULL)) { nsk_jvmti_setFailStatus(); return NSK_FALSE; } objectDescList[count].tag = objTag; if (reachable) { objectDescList[count].exp_found++; } ! if (!NSK_JVMTI_VERIFY(jvmti->SetTag(nextObj, objTag))) { nsk_jvmti_setFailStatus(); } printf(" tag=%-5ld object=0x%p\n", (long)objTag, (void*)nextObj); fflush(0);
*** 357,367 **** reachable) ) { return NSK_FALSE; } ! NSK_TRACE(NSK_CPP_STUB2(DeleteLocalRef, jni, nextObj)); return NSK_TRUE; } /* getAndTagChainObjects */ /** Obtain all tested objects from debugee class and tag them recursively. */ --- 339,349 ---- reachable) ) { return NSK_FALSE; } ! NSK_TRACE(jni->DeleteLocalRef(nextObj)); return NSK_TRUE; } /* getAndTagChainObjects */ /** Obtain all tested objects from debugee class and tag them recursively. */
*** 409,421 **** } printf("\nObtain and tag chain objects:\n"); printf(" root tested object:\n"); ! if (!NSK_JVMTI_VERIFY(NSK_CPP_STUB3(SetTag, jvmti, ! *rootObjectPtr, ! ROOT_OBJECT_TAG)) ) { nsk_jvmti_setFailStatus(); } printf(" tag=%-5ld object = 0x%p\n", (long) ROOT_OBJECT_TAG, (void*) *rootObjectPtr); --- 391,401 ---- } printf("\nObtain and tag chain objects:\n"); printf(" root tested object:\n"); ! if (!NSK_JVMTI_VERIFY(jvmti->SetTag(*rootObjectPtr, ROOT_OBJECT_TAG)) ) { nsk_jvmti_setFailStatus(); } printf(" tag=%-5ld object = 0x%p\n", (long) ROOT_OBJECT_TAG, (void*) *rootObjectPtr);
*** 529,545 **** ObjectDesc* objectDescList, jobject rootObject) { if (rootObject != NULL) { printf("Release object reference to root tested object: 0x%p\n", rootObject); ! NSK_TRACE(NSK_CPP_STUB2(DeleteGlobalRef, jni, rootObject)); } if (objectDescList != NULL) { printf("Deallocate objects list: 0x%p\n", (void*)objectDescList); ! if (!NSK_JVMTI_VERIFY( ! NSK_CPP_STUB2(Deallocate, jvmti, (unsigned char*)objectDescList))) { nsk_jvmti_setFailStatus(); } } fflush(0); --- 509,524 ---- ObjectDesc* objectDescList, jobject rootObject) { if (rootObject != NULL) { printf("Release object reference to root tested object: 0x%p\n", rootObject); ! NSK_TRACE(jni->DeleteGlobalRef(rootObject)); } if (objectDescList != NULL) { printf("Deallocate objects list: 0x%p\n", (void*)objectDescList); ! if (!NSK_JVMTI_VERIFY(jvmti->Deallocate((unsigned char*)objectDescList))) { nsk_jvmti_setFailStatus(); } } fflush(0);
*** 784,801 **** } printf(">>> Start iteration from root tested object: 0x%p\n\n", rootObject); fflush(0); ! if (!NSK_JVMTI_VERIFY( ! NSK_CPP_STUB6(FollowReferences, jvmti, ! (jint) 0, /* heap_filter */ (jclass) NULL, /* class */ rootObject, /* initial_object */ &heapCallbacks, ! (const void *) &fakeUserData)) ! ) { nsk_jvmti_setFailStatus(); return; } printf(">>> Check if reachable objects were iterated:\n"); --- 763,777 ---- } printf(">>> Start iteration from root tested object: 0x%p\n\n", rootObject); fflush(0); ! if (!NSK_JVMTI_VERIFY(jvmti->FollowReferences((jint) 0, /* heap_filter */ (jclass) NULL, /* class */ rootObject, /* initial_object */ &heapCallbacks, ! (const void *) &fakeUserData))) { nsk_jvmti_setFailStatus(); return; } printf(">>> Check if reachable objects were iterated:\n");
*** 854,864 **** { jvmtiCapabilities caps; memset(&caps, 0, sizeof(caps)); caps.can_tag_objects = 1; ! if (!NSK_JVMTI_VERIFY(NSK_CPP_STUB2(AddCapabilities, jvmti, &caps))) { return JNI_ERR; } } /* Setting Heap Callbacks */ --- 830,840 ---- { jvmtiCapabilities caps; memset(&caps, 0, sizeof(caps)); caps.can_tag_objects = 1; ! if (!NSK_JVMTI_VERIFY(jvmti->AddCapabilities(&caps))) { return JNI_ERR; } } /* Setting Heap Callbacks */
< prev index next >