506 } 507 508 void JvmtiCurrentBreakpoints::metadata_do(void f(Metadata*)) { 509 if (_jvmti_breakpoints != NULL) { 510 _jvmti_breakpoints->metadata_do(f); 511 } 512 } 513 514 void JvmtiCurrentBreakpoints::gc_epilogue() { 515 if (_jvmti_breakpoints != NULL) { 516 _jvmti_breakpoints->gc_epilogue(); 517 } 518 } 519 520 /////////////////////////////////////////////////////////////// 521 // 522 // class VM_GetOrSetLocal 523 // 524 525 // Constructor for non-object getter 526 VM_GetOrSetLocal::VM_GetOrSetLocal(JavaThread* thread, jint depth, int index, BasicType type) 527 : _thread(thread) 528 , _calling_thread(NULL) 529 , _depth(depth) 530 , _index(index) 531 , _type(type) 532 , _set(false) 533 , _jvf(NULL) 534 , _result(JVMTI_ERROR_NONE) 535 { 536 } 537 538 // Constructor for object or non-object setter 539 VM_GetOrSetLocal::VM_GetOrSetLocal(JavaThread* thread, jint depth, int index, BasicType type, jvalue value) 540 : _thread(thread) 541 , _calling_thread(NULL) 542 , _depth(depth) 543 , _index(index) 544 , _type(type) 545 , _value(value) 546 , _set(true) 547 , _jvf(NULL) 548 , _result(JVMTI_ERROR_NONE) 549 { 550 } 551 552 // Constructor for object getter 553 VM_GetOrSetLocal::VM_GetOrSetLocal(JavaThread* thread, JavaThread* calling_thread, jint depth, int index) 554 : _thread(thread) 555 , _calling_thread(calling_thread) 556 , _depth(depth) 557 , _index(index) 558 , _type(T_OBJECT) 559 , _set(false) | 506 } 507 508 void JvmtiCurrentBreakpoints::metadata_do(void f(Metadata*)) { 509 if (_jvmti_breakpoints != NULL) { 510 _jvmti_breakpoints->metadata_do(f); 511 } 512 } 513 514 void JvmtiCurrentBreakpoints::gc_epilogue() { 515 if (_jvmti_breakpoints != NULL) { 516 _jvmti_breakpoints->gc_epilogue(); 517 } 518 } 519 520 /////////////////////////////////////////////////////////////// 521 // 522 // class VM_GetOrSetLocal 523 // 524 525 // Constructor for non-object getter 526 VM_GetOrSetLocal::VM_GetOrSetLocal(JavaThread* thread, jint depth, jint index, BasicType type) 527 : _thread(thread) 528 , _calling_thread(NULL) 529 , _depth(depth) 530 , _index(index) 531 , _type(type) 532 , _set(false) 533 , _jvf(NULL) 534 , _result(JVMTI_ERROR_NONE) 535 { 536 } 537 538 // Constructor for object or non-object setter 539 VM_GetOrSetLocal::VM_GetOrSetLocal(JavaThread* thread, jint depth, jint index, BasicType type, jvalue value) 540 : _thread(thread) 541 , _calling_thread(NULL) 542 , _depth(depth) 543 , _index(index) 544 , _type(type) 545 , _value(value) 546 , _set(true) 547 , _jvf(NULL) 548 , _result(JVMTI_ERROR_NONE) 549 { 550 } 551 552 // Constructor for object getter 553 VM_GetOrSetLocal::VM_GetOrSetLocal(JavaThread* thread, JavaThread* calling_thread, jint depth, int index) 554 : _thread(thread) 555 , _calling_thread(calling_thread) 556 , _depth(depth) 557 , _index(index) 558 , _type(T_OBJECT) 559 , _set(false) |