Mercurial > hg > graal-jvmci-8
diff src/share/vm/ci/ciKlass.cpp @ 6948:e522a00b91aa
Merge with http://hg.openjdk.java.net/hsx/hsx25/hotspot/ after NPG - C++ build works
author | Doug Simon <doug.simon@oracle.com> |
---|---|
date | Mon, 12 Nov 2012 23:14:12 +0100 |
parents | 532be189cf09 da91efe96a93 |
children | ce248dc0a656 |
line wrap: on
line diff
--- a/src/share/vm/ci/ciKlass.cpp Mon Nov 12 18:11:17 2012 +0100 +++ b/src/share/vm/ci/ciKlass.cpp Mon Nov 12 23:14:12 2012 +0100 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1999, 2011, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1999, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -30,13 +30,13 @@ // ciKlass // -// This class represents a klassOop in the HotSpot virtual +// This class represents a Klass* in the HotSpot virtual // machine. // ------------------------------------------------------------------ // ciKlass::ciKlass ciKlass::ciKlass(KlassHandle h_k) : ciType(h_k) { - assert(get_oop()->is_klass(), "wrong type"); + assert(get_Klass()->is_klass(), "wrong type"); Klass* k = get_Klass(); _layout_helper = k->layout_helper(); Symbol* klass_name = k->name(); @@ -49,7 +49,7 @@ // // Nameless klass variant. ciKlass::ciKlass(KlassHandle h_k, ciSymbol* name) : ciType(h_k) { - assert(get_oop()->is_klass(), "wrong type"); + assert(get_Klass()->is_klass(), "wrong type"); _name = name; _layout_helper = Klass::_lh_neutral_value; } @@ -58,7 +58,7 @@ // ciKlass::ciKlass // // Unloaded klass variant. -ciKlass::ciKlass(ciSymbol* name, ciKlass* klass) : ciType(klass) { +ciKlass::ciKlass(ciSymbol* name, BasicType bt) : ciType(bt) { _name = name; _layout_helper = Klass::_lh_neutral_value; } @@ -67,7 +67,6 @@ // ciKlass::is_subtype_of bool ciKlass::is_subtype_of(ciKlass* that) { assert(is_loaded() && that->is_loaded(), "must be loaded"); - assert(is_java_klass() && that->is_java_klass(), "must be java klasses"); // Check to see if the klasses are identical. if (this == that) { return true; @@ -76,7 +75,7 @@ VM_ENTRY_MARK; #endif Klass* this_klass = get_Klass(); - klassOop that_klass = that->get_klassOop(); + Klass* that_klass = that->get_Klass(); bool result = this_klass->is_subtype_of(that_klass); return result; @@ -86,12 +85,11 @@ // ciKlass::is_subclass_of bool ciKlass::is_subclass_of(ciKlass* that) { assert(is_loaded() && that->is_loaded(), "must be loaded"); - assert(is_java_klass() && that->is_java_klass(), "must be java klasses"); // Check to see if the klasses are identical. VM_ENTRY_MARK; Klass* this_klass = get_Klass(); - klassOop that_klass = that->get_klassOop(); + Klass* that_klass = that->get_Klass(); bool result = this_klass->is_subclass_of(that_klass); return result; @@ -101,7 +99,6 @@ // ciKlass::super_depth juint ciKlass::super_depth() { assert(is_loaded(), "must be loaded"); - assert(is_java_klass(), "must be java klasses"); VM_ENTRY_MARK; Klass* this_klass = get_Klass(); @@ -112,7 +109,6 @@ // ciKlass::super_check_offset juint ciKlass::super_check_offset() { assert(is_loaded(), "must be loaded"); - assert(is_java_klass(), "must be java klasses"); VM_ENTRY_MARK; Klass* this_klass = get_Klass(); @@ -123,19 +119,17 @@ // ciKlass::super_of_depth ciKlass* ciKlass::super_of_depth(juint i) { assert(is_loaded(), "must be loaded"); - assert(is_java_klass(), "must be java klasses"); VM_ENTRY_MARK; Klass* this_klass = get_Klass(); - klassOop super = this_klass->primary_super_of_depth(i); - return (super != NULL) ? CURRENT_THREAD_ENV->get_object(super)->as_klass() : NULL; + Klass* super = this_klass->primary_super_of_depth(i); + return (super != NULL) ? CURRENT_THREAD_ENV->get_klass(super) : NULL; } // ------------------------------------------------------------------ // ciKlass::can_be_primary_super bool ciKlass::can_be_primary_super() { assert(is_loaded(), "must be loaded"); - assert(is_java_klass(), "must be java klasses"); VM_ENTRY_MARK; Klass* this_klass = get_Klass(); @@ -157,7 +151,6 @@ ciKlass* ciKlass::least_common_ancestor(ciKlass* that) { assert(is_loaded() && that->is_loaded(), "must be loaded"); - assert(is_java_klass() && that->is_java_klass(), "must be java klasses"); // Check to see if the klasses are identical. if (this == that) { return this; @@ -179,7 +172,7 @@ // Create the ciInstanceKlass for the lca. ciKlass* result = - CURRENT_THREAD_ENV->get_object(lca->as_klassOop())->as_klass(); + CURRENT_THREAD_ENV->get_klass(lca); return result; } @@ -205,7 +198,7 @@ if (!is_loaded()) return ciEnv::current()->get_unloaded_klass_mirror(this); oop java_mirror = get_Klass()->java_mirror(); - return CURRENT_ENV->get_object(java_mirror)->as_instance(); + return CURRENT_ENV->get_instance(java_mirror); ) }