Mercurial > hg > truffle
diff src/share/vm/runtime/reflectionUtils.cpp @ 6725:da91efe96a93
6964458: Reimplement class meta-data storage to use native memory
Summary: Remove PermGen, allocate meta-data in metaspace linked to class loaders, rewrite GC walking, rewrite and rename metadata to be C++ classes
Reviewed-by: jmasa, stefank, never, coleenp, kvn, brutisso, mgerdin, dholmes, jrose, twisti, roland
Contributed-by: jmasa <jon.masamitsu@oracle.com>, stefank <stefan.karlsson@oracle.com>, mgerdin <mikael.gerdin@oracle.com>, never <tom.rodriguez@oracle.com>
author | coleenp |
---|---|
date | Sat, 01 Sep 2012 13:25:18 -0400 |
parents | d2a62e0f25eb |
children | e522a00b91aa ac9cb1d5a202 |
line wrap: on
line diff
--- a/src/share/vm/runtime/reflectionUtils.cpp Fri Aug 31 16:39:35 2012 -0700 +++ b/src/share/vm/runtime/reflectionUtils.cpp Sat Sep 01 13:25:18 2012 -0400 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1999, 2010, 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,7 +30,7 @@ KlassStream::KlassStream(instanceKlassHandle klass, bool local_only, bool classes_only) { _klass = klass; if (classes_only) { - _interfaces = Universe::the_empty_system_obj_array(); + _interfaces = Universe::the_empty_klass_array(); } else { _interfaces = klass->transitive_interfaces(); } @@ -47,7 +47,7 @@ _klass = _klass->super(); } else { if (_interface_index > 0) { - _klass = klassOop(_interfaces->obj_at(--_interface_index)); + _klass = _interfaces->at(--_interface_index); } else { return true; } @@ -70,7 +70,7 @@ if (JDK_Version::is_gte_jdk16x_version()) { // The following class fields do not exist in // previous version of jdk. - offset = sun_reflect_ConstantPool::cp_oop_offset(); + offset = sun_reflect_ConstantPool::oop_offset(); _filtered_fields->append(new FilteredField(SystemDictionary::reflect_ConstantPool_klass(), offset)); offset = sun_reflect_UnsafeStaticFieldAccessorImpl::base_offset(); _filtered_fields->append(new FilteredField(SystemDictionary::reflect_UnsafeStaticFieldAccessorImpl_klass(), offset));