786 intptr_t* tos_addr = interpreter_frame_tos_address(); |
786 intptr_t* tos_addr = interpreter_frame_tos_address(); |
787 |
787 |
788 switch(type) { |
788 switch(type) { |
789 case T_OBJECT: |
789 case T_OBJECT: |
790 case T_ARRAY: { |
790 case T_ARRAY: { |
791 oop obj = (oop)*tos_addr; |
791 oop obj = cast_to_oop(*tos_addr); |
792 assert(obj == NULL || Universe::heap()->is_in(obj), "sanity check"); |
792 assert(obj == NULL || Universe::heap()->is_in(obj), "sanity check"); |
793 *oop_result = obj; |
793 *oop_result = obj; |
794 break; |
794 break; |
795 } |
795 } |
796 case T_BOOLEAN : { jint* p = (jint*)tos_addr; value_result->z = (jboolean)((*p) & 0x1); break; } |
796 case T_BOOLEAN : { jint* p = (jint*)tos_addr; value_result->z = (jboolean)((*p) & 0x1); break; } |