comparison src/share/vm/oops/oop.inline.hpp @ 1846:d55217dc206f

6829194: JSR 292 needs to support compressed oops Reviewed-by: kvn, jrose
author twisti
date Mon, 11 Oct 2010 04:18:58 -0700
parents e9ff18c4ace7
children 00bc9eaf0e24 f95d63e2154a
comparison
equal deleted inserted replaced
1845:a222fcfba398 1846:d55217dc206f
171 inline oop oopDesc::decode_heap_oop_not_null(narrowOop v) { 171 inline oop oopDesc::decode_heap_oop_not_null(narrowOop v) {
172 assert(!is_null(v), "narrow oop value can never be zero"); 172 assert(!is_null(v), "narrow oop value can never be zero");
173 address base = Universe::narrow_oop_base(); 173 address base = Universe::narrow_oop_base();
174 int shift = Universe::narrow_oop_shift(); 174 int shift = Universe::narrow_oop_shift();
175 oop result = (oop)(void*)((uintptr_t)base + ((uintptr_t)v << shift)); 175 oop result = (oop)(void*)((uintptr_t)base + ((uintptr_t)v << shift));
176 assert(check_obj_alignment(result), "Address not aligned"); 176 assert(check_obj_alignment(result), err_msg("address not aligned: " PTR_FORMAT, (void*) result));
177 return result; 177 return result;
178 } 178 }
179 179
180 inline oop oopDesc::decode_heap_oop(narrowOop v) { 180 inline oop oopDesc::decode_heap_oop(narrowOop v) {
181 return is_null(v) ? (oop)NULL : decode_heap_oop_not_null(v); 181 return is_null(v) ? (oop)NULL : decode_heap_oop_not_null(v);