468
469 /** Agent library initialization. */
470 #ifdef STATIC_BUILD
471 JNIEXPORT jint JNICALL Agent_OnLoad_em02t006(JavaVM *jvm, char *options, void *reserved) {
472 return Agent_Initialize(jvm, options, reserved);
473 }
474 JNIEXPORT jint JNICALL Agent_OnAttach_em02t006(JavaVM *jvm, char *options, void *reserved) {
475 return Agent_Initialize(jvm, options, reserved);
476 }
477 JNIEXPORT jint JNI_OnLoad_em02t006(JavaVM *jvm, char *options, void *reserved) {
478 return JNI_VERSION_1_8;
479 }
480 #endif
481 jint Agent_Initialize(JavaVM *jvm, char *options, void *reserved) {
482
483 if (!NSK_VERIFY(nsk_jvmti_parseOptions(options)))
484 return JNI_ERR;
485
486 timeout = nsk_jvmti_getWaitTime() * 60 * 1000;
487
488 if (!NSK_VERIFY((jvmti = nsk_jvmti_createJVMTIEnv(jvm, reserved)) != NULL))
489 return JNI_ERR;
490
491 if (!NSK_JVMTI_VERIFY(jvmti->CreateRawMonitor("_syncLock", &syncLock))) {
492 nsk_jvmti_setFailStatus();
493 return JNI_ERR;
494 }
495
496 {
497 jvmtiCapabilities caps;
498 memset(&caps, 0, sizeof(caps));
499
500 caps.can_tag_objects = 1;
501 caps.can_generate_object_free_events = 1;
502 if (!NSK_JVMTI_VERIFY(jvmti->AddCapabilities(&caps)))
503 return JNI_ERR;
504 }
505
506 if (!setCallBacks(1)) {
507 return JNI_ERR;
508 }
|
468
469 /** Agent library initialization. */
470 #ifdef STATIC_BUILD
471 JNIEXPORT jint JNICALL Agent_OnLoad_em02t006(JavaVM *jvm, char *options, void *reserved) {
472 return Agent_Initialize(jvm, options, reserved);
473 }
474 JNIEXPORT jint JNICALL Agent_OnAttach_em02t006(JavaVM *jvm, char *options, void *reserved) {
475 return Agent_Initialize(jvm, options, reserved);
476 }
477 JNIEXPORT jint JNI_OnLoad_em02t006(JavaVM *jvm, char *options, void *reserved) {
478 return JNI_VERSION_1_8;
479 }
480 #endif
481 jint Agent_Initialize(JavaVM *jvm, char *options, void *reserved) {
482
483 if (!NSK_VERIFY(nsk_jvmti_parseOptions(options)))
484 return JNI_ERR;
485
486 timeout = nsk_jvmti_getWaitTime() * 60 * 1000;
487
488 jvmti = nsk_jvmti_createJVMTIEnv(jvm, reserved);
489 if (!NSK_VERIFY(jvmti != NULL))
490 return JNI_ERR;
491
492 if (!NSK_JVMTI_VERIFY(jvmti->CreateRawMonitor("_syncLock", &syncLock))) {
493 nsk_jvmti_setFailStatus();
494 return JNI_ERR;
495 }
496
497 {
498 jvmtiCapabilities caps;
499 memset(&caps, 0, sizeof(caps));
500
501 caps.can_tag_objects = 1;
502 caps.can_generate_object_free_events = 1;
503 if (!NSK_JVMTI_VERIFY(jvmti->AddCapabilities(&caps)))
504 return JNI_ERR;
505 }
506
507 if (!setCallBacks(1)) {
508 return JNI_ERR;
509 }
|