< prev index next >

src/share/vm/oops/oop.inline.hpp

Print this page

        

*** 293,303 **** // Algorithm for encoding and decoding oops from 64 bit pointers to 32 bit // offset from the heap base. Saving the check for null can save instructions // in inner GC loops so these are separated. inline bool check_obj_alignment(oop obj) { ! return cast_from_oop<intptr_t>(obj) % MinObjAlignmentInBytes == 0; } oop oopDesc::decode_heap_oop_not_null(narrowOop v) { assert(!is_null(v), "narrow oop value can never be zero"); address base = Universe::narrow_oop_base(); --- 293,303 ---- // Algorithm for encoding and decoding oops from 64 bit pointers to 32 bit // offset from the heap base. Saving the check for null can save instructions // in inner GC loops so these are separated. inline bool check_obj_alignment(oop obj) { ! return (cast_from_oop<intptr_t>(obj) & MinObjAlignmentInBytesMask) == 0; } oop oopDesc::decode_heap_oop_not_null(narrowOop v) { assert(!is_null(v), "narrow oop value can never be zero"); address base = Universe::narrow_oop_base();
< prev index next >