8 *
9 * This code is distributed in the hope that it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 * version 2 for more details (a copy is included in the LICENSE file that
13 * accompanied this code).
14 *
15 * You should have received a copy of the GNU General Public License version
16 * 2 along with this work; if not, write to the Free Software Foundation,
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 *
23 */
24
25 #ifndef SHARE_VM_CLASSFILE_VMSYMBOLS_HPP
26 #define SHARE_VM_CLASSFILE_VMSYMBOLS_HPP
27
28 #include "classfile/vmSymbols_ext.hpp"
29 #include "oops/symbol.hpp"
30 #include "memory/iterator.hpp"
31 #include "trace/traceMacros.hpp"
32 #include "jvmci/vmSymbols_jvmci.hpp"
33
34 // The class vmSymbols is a name space for fast lookup of
35 // symbols commonly used in the VM.
36 //
37 // Sample usage:
38 //
39 // Symbol* obj = vmSymbols::java_lang_Object();
40
41
42 // Useful sub-macros exported by this header file:
43
44 #define VM_SYMBOL_ENUM_NAME(name) name##_enum
45 #define VM_INTRINSIC_IGNORE(id, class, name, sig, flags) /*ignored*/
46 #define VM_SYMBOL_IGNORE(id, name) /*ignored*/
47 #define VM_ALIAS_IGNORE(id, id2) /*ignored*/
48
49 // Mapping function names to values. New entries should be added below.
50
51 #define VM_SYMBOLS_DO(template, do_alias) \
52 /* commonly used class, package, module names */ \
53 template(java_base, "java.base") \
54 template(java_lang_System, "java/lang/System") \
55 template(java_lang_Object, "java/lang/Object") \
56 template(java_lang_Class, "java/lang/Class") \
57 template(java_lang_Package, "java/lang/Package") \
58 template(java_lang_String, "java/lang/String") \
59 template(java_lang_StringLatin1, "java/lang/StringLatin1") \
60 template(java_lang_StringUTF16, "java/lang/StringUTF16") \
61 template(java_lang_Thread, "java/lang/Thread") \
62 template(java_lang_ThreadGroup, "java/lang/ThreadGroup") \
63 template(java_lang_Cloneable, "java/lang/Cloneable") \
64 template(java_lang_Throwable, "java/lang/Throwable") \
65 template(java_lang_ClassLoader, "java/lang/ClassLoader") \
66 template(java_lang_ClassLoader_NativeLibrary, "java/lang/ClassLoader\x024NativeLibrary") \
67 template(java_lang_ThreadDeath, "java/lang/ThreadDeath") \
68 template(java_lang_Boolean, "java/lang/Boolean") \
69 template(java_lang_Character, "java/lang/Character") \
70 template(java_lang_Character_CharacterCache, "java/lang/Character$CharacterCache") \
71 template(java_lang_Float, "java/lang/Float") \
72 template(java_lang_Double, "java/lang/Double") \
73 template(java_lang_Byte, "java/lang/Byte") \
|
8 *
9 * This code is distributed in the hope that it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 * version 2 for more details (a copy is included in the LICENSE file that
13 * accompanied this code).
14 *
15 * You should have received a copy of the GNU General Public License version
16 * 2 along with this work; if not, write to the Free Software Foundation,
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 *
23 */
24
25 #ifndef SHARE_VM_CLASSFILE_VMSYMBOLS_HPP
26 #define SHARE_VM_CLASSFILE_VMSYMBOLS_HPP
27
28 #include "classfile/moduleEntry.hpp"
29 #include "classfile/vmSymbols_ext.hpp"
30 #include "oops/symbol.hpp"
31 #include "memory/iterator.hpp"
32 #include "trace/traceMacros.hpp"
33 #include "jvmci/vmSymbols_jvmci.hpp"
34
35 // The class vmSymbols is a name space for fast lookup of
36 // symbols commonly used in the VM.
37 //
38 // Sample usage:
39 //
40 // Symbol* obj = vmSymbols::java_lang_Object();
41
42
43 // Useful sub-macros exported by this header file:
44
45 #define VM_SYMBOL_ENUM_NAME(name) name##_enum
46 #define VM_INTRINSIC_IGNORE(id, class, name, sig, flags) /*ignored*/
47 #define VM_SYMBOL_IGNORE(id, name) /*ignored*/
48 #define VM_ALIAS_IGNORE(id, id2) /*ignored*/
49
50 // Mapping function names to values. New entries should be added below.
51
52 #define VM_SYMBOLS_DO(template, do_alias) \
53 /* commonly used class, package, module names */ \
54 template(java_base, JAVA_BASE_NAME) \
55 template(java_lang_System, "java/lang/System") \
56 template(java_lang_Object, "java/lang/Object") \
57 template(java_lang_Class, "java/lang/Class") \
58 template(java_lang_Package, "java/lang/Package") \
59 template(java_lang_String, "java/lang/String") \
60 template(java_lang_StringLatin1, "java/lang/StringLatin1") \
61 template(java_lang_StringUTF16, "java/lang/StringUTF16") \
62 template(java_lang_Thread, "java/lang/Thread") \
63 template(java_lang_ThreadGroup, "java/lang/ThreadGroup") \
64 template(java_lang_Cloneable, "java/lang/Cloneable") \
65 template(java_lang_Throwable, "java/lang/Throwable") \
66 template(java_lang_ClassLoader, "java/lang/ClassLoader") \
67 template(java_lang_ClassLoader_NativeLibrary, "java/lang/ClassLoader\x024NativeLibrary") \
68 template(java_lang_ThreadDeath, "java/lang/ThreadDeath") \
69 template(java_lang_Boolean, "java/lang/Boolean") \
70 template(java_lang_Character, "java/lang/Character") \
71 template(java_lang_Character_CharacterCache, "java/lang/Character$CharacterCache") \
72 template(java_lang_Float, "java/lang/Float") \
73 template(java_lang_Double, "java/lang/Double") \
74 template(java_lang_Byte, "java/lang/Byte") \
|