comparison agent/src/share/classes/sun/jvm/hotspot/oops/AccessFlags.java @ 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 71afdabfd05b
children
comparison
equal deleted inserted replaced
6724:36d1d483d5d6 6725:da91efe96a93
1 /* 1 /*
2 * Copyright (c) 2000, 2007, Oracle and/or its affiliates. All rights reserved. 2 * Copyright (c) 2000, 2012, 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.
55 public boolean isSynthetic () { return (flags & JVM_ACC_SYNTHETIC ) != 0; } 55 public boolean isSynthetic () { return (flags & JVM_ACC_SYNTHETIC ) != 0; }
56 56
57 public long getValue () { return flags; } 57 public long getValue () { return flags; }
58 58
59 // Hotspot internal flags 59 // Hotspot internal flags
60 // methodOop flags 60 // Method* flags
61 public boolean isMonitorMatching () { return (flags & JVM_ACC_MONITOR_MATCH ) != 0; } 61 public boolean isMonitorMatching () { return (flags & JVM_ACC_MONITOR_MATCH ) != 0; }
62 public boolean hasMonitorBytecodes () { return (flags & JVM_ACC_HAS_MONITOR_BYTECODES ) != 0; } 62 public boolean hasMonitorBytecodes () { return (flags & JVM_ACC_HAS_MONITOR_BYTECODES ) != 0; }
63 public boolean hasLoops () { return (flags & JVM_ACC_HAS_LOOPS ) != 0; } 63 public boolean hasLoops () { return (flags & JVM_ACC_HAS_LOOPS ) != 0; }
64 public boolean loopsFlagInit () { return (flags & JVM_ACC_LOOPS_FLAG_INIT ) != 0; } 64 public boolean loopsFlagInit () { return (flags & JVM_ACC_LOOPS_FLAG_INIT ) != 0; }
65 public boolean queuedForCompilation() { return (flags & JVM_ACC_QUEUED ) != 0; } 65 public boolean queuedForCompilation() { return (flags & JVM_ACC_QUEUED ) != 0; }
67 public boolean hasLineNumberTable () { return (flags & JVM_ACC_HAS_LINE_NUMBER_TABLE ) != 0; } 67 public boolean hasLineNumberTable () { return (flags & JVM_ACC_HAS_LINE_NUMBER_TABLE ) != 0; }
68 public boolean hasCheckedExceptions() { return (flags & JVM_ACC_HAS_CHECKED_EXCEPTIONS ) != 0; } 68 public boolean hasCheckedExceptions() { return (flags & JVM_ACC_HAS_CHECKED_EXCEPTIONS ) != 0; }
69 public boolean hasJsrs () { return (flags & JVM_ACC_HAS_JSRS ) != 0; } 69 public boolean hasJsrs () { return (flags & JVM_ACC_HAS_JSRS ) != 0; }
70 public boolean isObsolete () { return (flags & JVM_ACC_IS_OBSOLETE ) != 0; } 70 public boolean isObsolete () { return (flags & JVM_ACC_IS_OBSOLETE ) != 0; }
71 71
72 // klassOop flags 72 // Klass* flags
73 public boolean hasMirandaMethods () { return (flags & JVM_ACC_HAS_MIRANDA_METHODS ) != 0; } 73 public boolean hasMirandaMethods () { return (flags & JVM_ACC_HAS_MIRANDA_METHODS ) != 0; }
74 public boolean hasVanillaConstructor() { return (flags & JVM_ACC_HAS_VANILLA_CONSTRUCTOR) != 0; } 74 public boolean hasVanillaConstructor() { return (flags & JVM_ACC_HAS_VANILLA_CONSTRUCTOR) != 0; }
75 public boolean hasFinalizer () { return (flags & JVM_ACC_HAS_FINALIZER ) != 0; } 75 public boolean hasFinalizer () { return (flags & JVM_ACC_HAS_FINALIZER ) != 0; }
76 public boolean isCloneable () { return (flags & JVM_ACC_IS_CLONEABLE ) != 0; } 76 public boolean isCloneable () { return (flags & JVM_ACC_IS_CLONEABLE ) != 0; }
77 77
78 // klassOop and methodOop flags 78 // Klass* and Method* flags
79 public boolean hasLocalVariableTable() { return (flags & JVM_ACC_HAS_LOCAL_VARIABLE_TABLE ) != 0; } 79 public boolean hasLocalVariableTable() { return (flags & JVM_ACC_HAS_LOCAL_VARIABLE_TABLE ) != 0; }
80 80
81 // field flags 81 // field flags
82 public boolean fieldAccessWatched () { return (flags & JVM_ACC_FIELD_ACCESS_WATCHED) != 0; } 82 public boolean fieldAccessWatched () { return (flags & JVM_ACC_FIELD_ACCESS_WATCHED) != 0; }
83 public boolean fieldModificationWatched() { return (flags & JVM_ACC_FIELD_MODIFICATION_WATCHED) != 0; } 83 public boolean fieldModificationWatched() { return (flags & JVM_ACC_FIELD_MODIFICATION_WATCHED) != 0; }