comparison src/share/vm/runtime/frame.cpp @ 14508:78112be27ba0

8035396: Introduce accessor for tmp_oop in frame. Summary: Avoid #ifs by introducing the accessor function interpreter_frame_temp_oop_addr(). Reviewed-by: kvn, twisti
author goetz
date Wed, 26 Feb 2014 11:33:34 -0800
parents 8a9bb7821e28
children 16c705d792be
comparison
equal deleted inserted replaced
14507:fae50ee0308d 14508:78112be27ba0
931 // To minimize the overhead of doing that here, we ask the GC to pass down a 931 // To minimize the overhead of doing that here, we ask the GC to pass down a
932 // closure that knows how to keep klasses alive given a ClassLoaderData. 932 // closure that knows how to keep klasses alive given a ClassLoaderData.
933 cld_f->do_cld(m->method_holder()->class_loader_data()); 933 cld_f->do_cld(m->method_holder()->class_loader_data());
934 } 934 }
935 935
936 #if !defined(PPC32) || defined(ZERO) 936 if (m->is_native() PPC32_ONLY(&& m->is_static())) {
937 if (m->is_native()) { 937 f->do_oop(interpreter_frame_temp_oop_addr());
938 #ifdef CC_INTERP 938 }
939 interpreterState istate = get_interpreterState();
940 f->do_oop((oop*)&istate->_oop_temp);
941 #else
942 f->do_oop((oop*)( fp() + interpreter_frame_oop_temp_offset ));
943 #endif /* CC_INTERP */
944 }
945 #else // PPC32
946 if (m->is_native() && m->is_static()) {
947 f->do_oop(interpreter_frame_mirror_addr());
948 }
949 #endif // PPC32
950 939
951 int max_locals = m->is_native() ? m->size_of_parameters() : m->max_locals(); 940 int max_locals = m->is_native() ? m->size_of_parameters() : m->max_locals();
952 941
953 Symbol* signature = NULL; 942 Symbol* signature = NULL;
954 bool has_receiver = false; 943 bool has_receiver = false;