comparison src/share/vm/prims/jvmtiEnter.xsl @ 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 a6eef545f1a2
children fb19af007ffc
comparison
equal deleted inserted replaced
6724:36d1d483d5d6 6725:da91efe96a93
1 <?xml version="1.0"?> 1 <?xml version="1.0"?>
2 <!-- 2 <!--
3 Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved. 3 Copyright (c) 2002, 2012, Oracle and/or its affiliates. All rights reserved.
4 DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 5
6 This code is free software; you can redistribute it and/or modify it 6 This code is free software; you can redistribute it and/or modify it
7 under the terms of the GNU General Public License version 2 only, as 7 under the terms of the GNU General Public License version 2 only, as
8 published by the Free Software Foundation. 8 published by the Free Software Foundation.
878 <xsl:with-param name="comment"> - is a primitive class - jclass = 0x%x</xsl:with-param> 878 <xsl:with-param name="comment"> - is a primitive class - jclass = 0x%x</xsl:with-param>
879 <xsl:with-param name="extraValue">, <xsl:value-of select="$name"/></xsl:with-param> 879 <xsl:with-param name="extraValue">, <xsl:value-of select="$name"/></xsl:with-param>
880 </xsl:apply-templates> 880 </xsl:apply-templates>
881 <xsl:text> 881 <xsl:text>
882 } 882 }
883 klassOop k_oop = java_lang_Class::as_klassOop(k_mirror); 883 Klass* k_oop = java_lang_Class::as_Klass(k_mirror);
884 if (k_oop == NULL) { 884 if (k_oop == NULL) {
885 </xsl:text> 885 </xsl:text>
886 <xsl:apply-templates select=".." mode="traceError"> 886 <xsl:apply-templates select=".." mode="traceError">
887 <xsl:with-param name="err">JVMTI_ERROR_INVALID_CLASS</xsl:with-param> 887 <xsl:with-param name="err">JVMTI_ERROR_INVALID_CLASS</xsl:with-param>
888 <xsl:with-param name="comment"> - no klassOop - jclass = 0x%x</xsl:with-param> 888 <xsl:with-param name="comment"> - no Klass* - jclass = 0x%x</xsl:with-param>
889 <xsl:with-param name="extraValue">, <xsl:value-of select="$name"/></xsl:with-param> 889 <xsl:with-param name="extraValue">, <xsl:value-of select="$name"/></xsl:with-param>
890 </xsl:apply-templates> 890 </xsl:apply-templates>
891 <xsl:text> 891 <xsl:text>
892 } 892 }
893 </xsl:text> 893 </xsl:text>
896 </xsl:template> 896 </xsl:template>
897 897
898 898
899 <xsl:template match="jmethodID" mode="dochecks"> 899 <xsl:template match="jmethodID" mode="dochecks">
900 <xsl:param name="name"/> 900 <xsl:param name="name"/>
901 <xsl:text> methodOop method_oop = JNIHandles::checked_resolve_jmethod_id(</xsl:text> 901 <xsl:text> Method* method_oop = Method::checked_resolve_jmethod_id(</xsl:text>
902 <xsl:value-of select="$name"/> 902 <xsl:value-of select="$name"/>
903 <xsl:text>);&#xA;</xsl:text> 903 <xsl:text>);&#xA;</xsl:text>
904 <xsl:text> if (method_oop == NULL) {&#xA;</xsl:text> 904 <xsl:text> if (method_oop == NULL) {&#xA;</xsl:text>
905 <xsl:apply-templates select=".." mode="traceError"> 905 <xsl:apply-templates select=".." mode="traceError">
906 <xsl:with-param name="err">JVMTI_ERROR_INVALID_METHODID</xsl:with-param> 906 <xsl:with-param name="err">JVMTI_ERROR_INVALID_METHODID</xsl:with-param>