hotspot/src/share/vm/oops/klass.inline.hpp
changeset 24424 2658d7834c6e
parent 19319 0ad35be0733a
child 33105 294e48b4f704
equal deleted inserted replaced
24358:8528b67f6562 24424:2658d7834c6e
     1 /*
     1 /*
     2  * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
     2  * Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     4  *
     4  *
     5  * This code is free software; you can redistribute it and/or modify it
     5  * This code is free software; you can redistribute it and/or modify it
     6  * under the terms of the GNU General Public License version 2 only, as
     6  * under the terms of the GNU General Public License version 2 only, as
     7  * published by the Free Software Foundation.
     7  * published by the Free Software Foundation.
    61 
    61 
    62 inline Klass* Klass::decode_klass_not_null(narrowKlass v) {
    62 inline Klass* Klass::decode_klass_not_null(narrowKlass v) {
    63   assert(!is_null(v), "narrow klass value can never be zero");
    63   assert(!is_null(v), "narrow klass value can never be zero");
    64   int    shift = Universe::narrow_klass_shift();
    64   int    shift = Universe::narrow_klass_shift();
    65   Klass* result = (Klass*)(void*)((uintptr_t)Universe::narrow_klass_base() + ((uintptr_t)v << shift));
    65   Klass* result = (Klass*)(void*)((uintptr_t)Universe::narrow_klass_base() + ((uintptr_t)v << shift));
    66   assert(check_klass_alignment(result), err_msg("address not aligned: " PTR_FORMAT, (void*) result));
    66   assert(check_klass_alignment(result), err_msg("address not aligned: " INTPTR_FORMAT, p2i((void*) result)));
    67   return result;
    67   return result;
    68 }
    68 }
    69 
    69 
    70 inline Klass* Klass::decode_klass(narrowKlass v) {
    70 inline Klass* Klass::decode_klass(narrowKlass v) {
    71   return is_null(v) ? (Klass*)NULL : decode_klass_not_null(v);
    71   return is_null(v) ? (Klass*)NULL : decode_klass_not_null(v);