comparison src/share/vm/prims/jvmtiTagMap.cpp @ 14909:4ca6dc0799b6

Backout jdk9 merge
author Gilles Duboscq <duboscq@ssw.jku.at>
date Tue, 01 Apr 2014 13:57:07 +0200
parents dcca80b5e7e7
children 51c6ce89d4dd
comparison
equal deleted inserted replaced
14908:8db6e76cb658 14909:4ca6dc0799b6
2788 } 2788 }
2789 } 2789 }
2790 return true; 2790 return true;
2791 } 2791 }
2792 2792
2793 #ifdef ASSERT
2794 // verify that a static oop field is in range 2793 // verify that a static oop field is in range
2795 static inline bool verify_static_oop(InstanceKlass* ik, 2794 static inline bool verify_static_oop(InstanceKlass* ik,
2796 oop mirror, int offset) { 2795 oop mirror, int offset) {
2797 address obj_p = (address)mirror + offset; 2796 address obj_p = (address)mirror + offset;
2798 address start = (address)InstanceMirrorKlass::start_of_static_fields(mirror); 2797 address start = (address)InstanceMirrorKlass::start_of_static_fields(mirror);
2803 return true; 2802 return true;
2804 } else { 2803 } else {
2805 return false; 2804 return false;
2806 } 2805 }
2807 } 2806 }
2808 #endif // #ifdef ASSERT
2809 2807
2810 // a class references its super class, interfaces, class loader, ... 2808 // a class references its super class, interfaces, class loader, ...
2811 // and finally its static fields 2809 // and finally its static fields
2812 inline bool VM_HeapWalkOperation::iterate_over_class(oop java_class) { 2810 inline bool VM_HeapWalkOperation::iterate_over_class(oop java_class) {
2813 int i; 2811 int i;
3079 bci, slot, o)) { 3077 bci, slot, o)) {
3080 return false; 3078 return false;
3081 } 3079 }
3082 } 3080 }
3083 } 3081 }
3084
3085 StackValueCollection* exprs = jvf->expressions();
3086 for (int index=0; index < exprs->size(); index++) {
3087 if (exprs->at(index)->type() == T_OBJECT) {
3088 oop o = exprs->obj_at(index)();
3089 if (o == NULL) {
3090 continue;
3091 }
3092
3093 // stack reference
3094 if (!CallbackInvoker::report_stack_ref_root(thread_tag, tid, depth, method,
3095 bci, locals->size() + index, o)) {
3096 return false;
3097 }
3098 }
3099 }
3100
3101 } else { 3082 } else {
3102 blk->set_context(thread_tag, tid, depth, method); 3083 blk->set_context(thread_tag, tid, depth, method);
3103 if (is_top_frame) { 3084 if (is_top_frame) {
3104 // JNI locals for the top frame. 3085 // JNI locals for the top frame.
3105 java_thread->active_handles()->oops_do(blk); 3086 java_thread->active_handles()->oops_do(blk);