< prev index next >

src/hotspot/share/classfile/vmSymbols.hpp

Print this page

165                                                                                                   \
166   /* Java runtime version access */                                                               \
167   template(java_lang_VersionProps,                    "java/lang/VersionProps")                   \
168   template(java_version_name,                         "java_version")                             \
169   template(java_runtime_name_name,                    "java_runtime_name")                        \
170   template(java_runtime_version_name,                 "java_runtime_version")                     \
171   template(java_runtime_vendor_version_name,          "VENDOR_VERSION")                           \
172   template(java_runtime_vendor_vm_bug_url_name,       "VENDOR_URL_VM_BUG")                        \
173                                                                                                   \
174   /* system initialization */                                                                     \
175   template(initPhase1_name,                           "initPhase1")                               \
176   template(initPhase2_name,                           "initPhase2")                               \
177   template(initPhase3_name,                           "initPhase3")                               \
178   template(java_lang_module_init_signature,           "(Ljava/lang/ClassLoader;Ljava/lang/String;)V") \
179                                                                                                   \
180   /* class file format tags */                                                                    \
181   template(tag_source_file,                           "SourceFile")                               \
182   template(tag_inner_classes,                         "InnerClasses")                             \
183   template(tag_nest_members,                          "NestMembers")                              \
184   template(tag_nest_host,                             "NestHost")                                 \

185   template(tag_constant_value,                        "ConstantValue")                            \
186   template(tag_code,                                  "Code")                                     \
187   template(tag_exceptions,                            "Exceptions")                               \
188   template(tag_line_number_table,                     "LineNumberTable")                          \
189   template(tag_local_variable_table,                  "LocalVariableTable")                       \
190   template(tag_local_variable_type_table,             "LocalVariableTypeTable")                   \
191   template(tag_method_parameters,                     "MethodParameters")                         \
192   template(tag_stack_map_table,                       "StackMapTable")                            \
193   template(tag_synthetic,                             "Synthetic")                                \
194   template(tag_deprecated,                            "Deprecated")                               \
195   template(tag_source_debug_extension,                "SourceDebugExtension")                     \
196   template(tag_signature,                             "Signature")                                \
197   template(tag_record,                                "Record")                                   \
198   template(tag_runtime_visible_annotations,           "RuntimeVisibleAnnotations")                \
199   template(tag_runtime_invisible_annotations,         "RuntimeInvisibleAnnotations")              \
200   template(tag_runtime_visible_parameter_annotations, "RuntimeVisibleParameterAnnotations")       \
201   template(tag_runtime_invisible_parameter_annotations,"RuntimeInvisibleParameterAnnotations")    \
202   template(tag_annotation_default,                    "AnnotationDefault")                        \
203   template(tag_runtime_visible_type_annotations,      "RuntimeVisibleTypeAnnotations")            \
204   template(tag_runtime_invisible_type_annotations,    "RuntimeInvisibleTypeAnnotations")          \

249   template(java_lang_InternalError,                   "java/lang/InternalError")                  \
250   template(java_lang_NoClassDefFoundError,            "java/lang/NoClassDefFoundError")           \
251   template(java_lang_NoSuchFieldError,                "java/lang/NoSuchFieldError")               \
252   template(java_lang_NoSuchMethodError,               "java/lang/NoSuchMethodError")              \
253   template(java_lang_OutOfMemoryError,                "java/lang/OutOfMemoryError")               \
254   template(java_lang_UnsatisfiedLinkError,            "java/lang/UnsatisfiedLinkError")           \
255   template(java_lang_VerifyError,                     "java/lang/VerifyError")                    \
256   template(java_lang_SecurityException,               "java/lang/SecurityException")              \
257   template(java_lang_VirtualMachineError,             "java/lang/VirtualMachineError")            \
258   template(java_lang_StackOverflowError,              "java/lang/StackOverflowError")             \
259   template(java_lang_StackTraceElement,               "java/lang/StackTraceElement")              \
260                                                                                                   \
261   /* Concurrency support */                                                                       \
262   template(java_util_concurrent_locks_AbstractOwnableSynchronizer,           "java/util/concurrent/locks/AbstractOwnableSynchronizer") \
263   template(java_util_concurrent_atomic_AtomicIntegerFieldUpdater_Impl,       "java/util/concurrent/atomic/AtomicIntegerFieldUpdater$AtomicIntegerFieldUpdaterImpl") \
264   template(java_util_concurrent_atomic_AtomicLongFieldUpdater_CASUpdater,    "java/util/concurrent/atomic/AtomicLongFieldUpdater$CASUpdater") \
265   template(java_util_concurrent_atomic_AtomicLongFieldUpdater_LockedUpdater, "java/util/concurrent/atomic/AtomicLongFieldUpdater$LockedUpdater") \
266   template(java_util_concurrent_atomic_AtomicReferenceFieldUpdater_Impl,     "java/util/concurrent/atomic/AtomicReferenceFieldUpdater$AtomicReferenceFieldUpdaterImpl") \
267   template(jdk_internal_vm_annotation_Contended_signature,                   "Ljdk/internal/vm/annotation/Contended;")    \
268   template(jdk_internal_vm_annotation_ReservedStackAccess_signature,         "Ljdk/internal/vm/annotation/ReservedStackAccess;") \



269   template(jdk_internal_ValueBased_signature,                                "Ljdk/internal/ValueBased;") \
270                                                                                                   \
271   /* class symbols needed by intrinsics */                                                        \
272   VM_INTRINSICS_DO(VM_INTRINSIC_IGNORE, template, VM_SYMBOL_IGNORE, VM_SYMBOL_IGNORE, VM_ALIAS_IGNORE) \
273                                                                                                   \
274   /* Support for reflection based on dynamic bytecode generation (JDK 1.4 and above) */           \
275                                                                                                   \
276   template(jdk_internal_reflect,                      "jdk/internal/reflect")                     \
277   template(reflect_MethodAccessorImpl,                "jdk/internal/reflect/MethodAccessorImpl")      \
278   template(reflect_DelegatingClassLoader,             "jdk/internal/reflect/DelegatingClassLoader")   \
279   template(reflect_Reflection,                        "jdk/internal/reflect/Reflection")              \
280   template(reflect_CallerSensitive,                   "jdk/internal/reflect/CallerSensitive")         \
281   template(reflect_CallerSensitive_signature,         "Ljdk/internal/reflect/CallerSensitive;")       \
282   template(reflect_DirectConstructorHandleAccessor_NativeAccessor,   "jdk/internal/reflect/DirectConstructorHandleAccessor$NativeAccessor") \
283   template(reflect_SerializationConstructorAccessorImpl,             "jdk/internal/reflect/SerializationConstructorAccessorImpl") \
284   template(checkedExceptions_name,                    "checkedExceptions")                        \
285   template(clazz_name,                                "clazz")                                    \
286   template(exceptionTypes_name,                       "exceptionTypes")                           \
287   template(modifiers_name,                            "modifiers")                                \
288   template(invokeBasic_name,                          "invokeBasic")                              \
289   template(linkToVirtual_name,                        "linkToVirtual")                            \
290   template(linkToStatic_name,                         "linkToStatic")                             \
291   template(linkToSpecial_name,                        "linkToSpecial")                            \
292   template(linkToInterface_name,                      "linkToInterface")                          \
293   template(linkToNative_name,                         "linkToNative")                             \
294   template(compiledLambdaForm_name,                   "<compiledLambdaForm>")  /*fake name*/      \
295   template(star_name,                                 "*") /*not really a name*/                  \
296   template(invoke_name,                               "invoke")                                   \
297   template(parameterTypes_name,                       "parameterTypes")                           \
298   template(returnType_name,                           "returnType")                               \
299   template(signature_name,                            "signature")                                \
300   template(slot_name,                                 "slot")                                     \
301   template(trusted_final_name,                        "trustedFinal")                             \
302   template(blackhole_name,                            "<blackhole>")  /*fake name*/               \
303                                                                                                   \
304   /* Support for annotations (JDK 1.5 and above) */                                               \
305                                                                                                   \
306   template(annotations_name,                          "annotations")                              \
307   template(index_name,                                "index")                                    \
308   template(executable_name,                           "executable")                               \
309   template(parameter_annotations_name,                "parameterAnnotations")                     \
310   template(annotation_default_name,                   "annotationDefault")                        \
311   template(reflect_ConstantPool,                      "jdk/internal/reflect/ConstantPool")        \
312   template(base_name,                                 "base")                                     \
313   /* Type Annotations (JDK 8 and above) */                                                        \
314   template(type_annotations_name,                     "typeAnnotations")                          \
315                                                                                                   \
316   /* Intrinsic Annotation (JDK 9 and above) */                                                    \
317   template(jdk_internal_vm_annotation_DontInline_signature,  "Ljdk/internal/vm/annotation/DontInline;")  \
318   template(jdk_internal_vm_annotation_ForceInline_signature, "Ljdk/internal/vm/annotation/ForceInline;") \
319   template(jdk_internal_vm_annotation_Hidden_signature,      "Ljdk/internal/vm/annotation/Hidden;") \
320   template(jdk_internal_misc_Scoped_signature,               "Ljdk/internal/misc/ScopedMemoryAccess$Scoped;") \
321   template(jdk_internal_vm_annotation_IntrinsicCandidate_signature, "Ljdk/internal/vm/annotation/IntrinsicCandidate;") \

516   template(input_stream_signature,                    "Ljava/io/InputStream;")                    \
517   template(print_stream_signature,                    "Ljava/io/PrintStream;")                    \
518   template(security_manager_signature,                "Ljava/lang/SecurityManager;")              \
519   template(defineOrCheckPackage_name,                 "defineOrCheckPackage")                     \
520   template(defineOrCheckPackage_signature,            "(Ljava/lang/String;Ljava/util/jar/Manifest;Ljava/net/URL;)Ljava/lang/Package;") \
521   template(getProtectionDomain_name,                  "getProtectionDomain")                      \
522   template(getProtectionDomain_signature,             "(Ljava/security/CodeSource;)Ljava/security/ProtectionDomain;") \
523   template(java_lang_Integer_array_signature,         "[Ljava/lang/Integer;")                     \
524   template(java_lang_Long_array_signature,            "[Ljava/lang/Long;")                        \
525   template(java_lang_Character_array_signature,       "[Ljava/lang/Character;")                   \
526   template(java_lang_Short_array_signature,           "[Ljava/lang/Short;")                       \
527   template(java_lang_Byte_array_signature,            "[Ljava/lang/Byte;")                        \
528   template(java_lang_Boolean_signature,               "Ljava/lang/Boolean;")                      \
529   template(url_code_signer_array_void_signature,      "(Ljava/net/URL;[Ljava/security/CodeSigner;)V") \
530   template(jvmti_thread_state_name,                   "jvmti_thread_state")                       \
531   template(jvmti_VTMS_transition_disable_count_name,  "jvmti_VTMS_transition_disable_count")      \
532   template(jvmti_is_in_VTMS_transition_name,          "jvmti_is_in_VTMS_transition")              \
533   template(module_entry_name,                         "module_entry")                             \
534   template(resolved_references_name,                  "<resolved_references>")                    \
535   template(init_lock_name,                            "<init_lock>")                              \


536   template(address_size_name,                         "ADDRESS_SIZE0")                            \
537   template(page_size_name,                            "PAGE_SIZE")                                \
538   template(big_endian_name,                           "BIG_ENDIAN")                               \
539   template(use_unaligned_access_name,                 "UNALIGNED_ACCESS")                         \
540   template(data_cache_line_flush_size_name,           "DATA_CACHE_LINE_FLUSH_SIZE")               \
541   template(during_unsafe_access_name,                 "during_unsafe_access")                     \
542   template(checkIndex_name,                           "checkIndex")                               \
543   template(jfr_epoch_name,                            "jfr_epoch")                                \
544   template(maxThawingSize_name,                       "maxThawingSize")                           \
545                                                                                                   \
546   /* name symbols needed by intrinsics */                                                         \
547   VM_INTRINSICS_DO(VM_INTRINSIC_IGNORE, VM_SYMBOL_IGNORE, template, VM_SYMBOL_IGNORE, VM_ALIAS_IGNORE) \
548                                                                                                   \
549   /* common signatures names */                                                                   \
550   template(void_method_signature,                     "()V")                                      \
551   template(void_boolean_signature,                    "()Z")                                      \
552   template(void_byte_signature,                       "()B")                                      \
553   template(void_char_signature,                       "()C")                                      \
554   template(void_short_signature,                      "()S")                                      \
555   template(void_int_signature,                        "()I")                                      \

592   template(continuation_signature,                    "Ljdk/internal/vm/Continuation;")           \
593   template(continuationscope_signature,               "Ljdk/internal/vm/ContinuationScope;")      \
594   template(stackchunk_signature,                      "Ljdk/internal/vm/StackChunk;")             \
595   template(vthread_signature,                         "Ljava/lang/VirtualThread;")                \
596   template(object_void_signature,                     "(Ljava/lang/Object;)V")                    \
597   template(object_int_signature,                      "(Ljava/lang/Object;)I")                    \
598   template(long_object_long_signature,                "(JLjava/lang/Object;)J")                   \
599   template(object_boolean_signature,                  "(Ljava/lang/Object;)Z")                    \
600   template(object_object_signature,                   "(Ljava/lang/Object;)Ljava/lang/Object;")   \
601   template(string_void_signature,                     "(Ljava/lang/String;)V")                    \
602   template(string_int_signature,                      "(Ljava/lang/String;)I")                    \
603   template(string_byte_array_signature,               "(Ljava/lang/String;)[B")                   \
604   template(string_bool_byte_array_signature,          "(Ljava/lang/String;Z)[B")                  \
605   template(throwable_signature,                       "Ljava/lang/Throwable;")                    \
606   template(throwable_void_signature,                  "(Ljava/lang/Throwable;)V")                 \
607   template(void_throwable_signature,                  "()Ljava/lang/Throwable;")                  \
608   template(class_void_signature,                      "(Ljava/lang/Class;)V")                     \
609   template(class_int_signature,                       "(Ljava/lang/Class;)I")                     \
610   template(class_long_signature,                      "(Ljava/lang/Class;)J")                     \
611   template(class_boolean_signature,                   "(Ljava/lang/Class;)Z")                     \

612   template(throwable_throwable_signature,             "(Ljava/lang/Throwable;)Ljava/lang/Throwable;")             \
613   template(throwable_string_void_signature,           "(Ljava/lang/Throwable;Ljava/lang/String;)V")               \
614   template(string_array_void_signature,               "([Ljava/lang/String;)V")                                   \
615   template(string_array_string_array_void_signature,  "([Ljava/lang/String;[Ljava/lang/String;)V")                \
616   template(thread_throwable_void_signature,           "(Ljava/lang/Thread;Ljava/lang/Throwable;)V")               \
617   template(thread_void_signature,                     "(Ljava/lang/Thread;)V")                                    \
618   template(runnable_void_signature,                   "(Ljava/lang/Runnable;)V")                                   \
619   template(threadgroup_runnable_void_signature,       "(Ljava/lang/ThreadGroup;Ljava/lang/Runnable;)V")           \
620   template(threadgroup_string_void_signature,         "(Ljava/lang/ThreadGroup;Ljava/lang/String;)V")             \
621   template(void_threadgroup_array_signature,          "()[Ljava/lang/ThreadGroup;")                               \
622   template(string_class_signature,                    "(Ljava/lang/String;)Ljava/lang/Class;")                    \
623   template(string_boolean_class_signature,            "(Ljava/lang/String;Z)Ljava/lang/Class;")                   \
624   template(object_object_object_signature,            "(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;") \

625   template(string_string_string_signature,            "(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;") \
626   template(string_string_signature,                   "(Ljava/lang/String;)Ljava/lang/String;")                   \
627   template(classloader_string_long_signature,         "(Ljava/lang/ClassLoader;Ljava/lang/String;)J")             \
628   template(byte_array_void_signature,                 "([B)V")                                                    \
629   template(char_array_void_signature,                 "([C)V")                                                    \
630   template(int_int_void_signature,                    "(II)V")                                                    \
631   template(long_long_void_signature,                  "(JJ)V")                                                    \
632   template(void_byte_array_signature,                 "()[B")                                                     \
633   template(void_classloader_signature,                "()Ljava/lang/ClassLoader;")                                \
634   template(void_BuiltinClassLoader_signature,         "()Ljdk/internal/loader/BuiltinClassLoader;")               \
635   template(void_object_signature,                     "()Ljava/lang/Object;")                                     \
636   template(void_class_signature,                      "()Ljava/lang/Class;")                                      \
637   template(void_class_array_signature,                "()[Ljava/lang/Class;")                                     \
638   template(void_string_signature,                     "()Ljava/lang/String;")                                     \
639   template(void_module_signature,                     "()Ljava/lang/Module;")                                     \
640   template(object_array_object_signature,             "([Ljava/lang/Object;)Ljava/lang/Object;")                  \
641   template(object_object_array_object_signature,      "(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;")\
642   template(exception_void_signature,                  "(Ljava/lang/Exception;)V")                                 \
643   template(protectiondomain_signature,                "[Ljava/security/ProtectionDomain;")                        \
644   template(accesscontrolcontext_signature,            "Ljava/security/AccessControlContext;")                     \

748   template(addUses_signature,                          "(Ljava/lang/Module;Ljava/lang/Class;)V")                  \
749   template(addProvides_name,                           "addProvides")                                             \
750   template(addProvides_signature,                      "(Ljava/lang/Module;Ljava/lang/Class;Ljava/lang/Class;)V") \
751   template(loadModule_name,                            "loadModule")                                              \
752   template(loadModule_signature,                       "(Ljava/lang/String;)Ljava/lang/Module;")                  \
753   template(transformedByAgent_name,                    "transformedByAgent")                                      \
754   template(transformedByAgent_signature,               "(Ljava/lang/Module;)V")                                   \
755   template(appendToClassPathForInstrumentation_name,   "appendToClassPathForInstrumentation")                     \
756   do_alias(appendToClassPathForInstrumentation_signature, string_void_signature)                                  \
757   template(serializePropertiesToByteArray_name,        "serializePropertiesToByteArray")                          \
758   template(serializeAgentPropertiesToByteArray_name,   "serializeAgentPropertiesToByteArray")                     \
759   template(encodeThrowable_name,                       "encodeThrowable")                                         \
760   template(encodeThrowable_signature,                  "(Ljava/lang/Throwable;JI)I")                              \
761   template(decodeAndThrowThrowable_name,               "decodeAndThrowThrowable")                                 \
762   template(encodeAnnotations_name,                     "encodeAnnotations")                                       \
763   template(encodeAnnotations_signature,                "([BLjava/lang/Class;Ljdk/internal/reflect/ConstantPool;Z[Ljava/lang/Class;)[B")\
764   template(decodeAndThrowThrowable_signature,          "(IJZ)V")                                                  \
765   template(classRedefinedCount_name,                   "classRedefinedCount")                                     \
766   template(classLoader_name,                           "classLoader")                                             \
767   template(componentType_name,                         "componentType")                                           \


768                                                                                                                   \
769   /* forEachRemaining support */                                                                                  \
770   template(java_util_stream_StreamsRangeIntSpliterator,          "java/util/stream/Streams$RangeIntSpliterator")  \
771                                                                                                                   \
772   /* jfr signatures */                                                                                            \
773   JFR_TEMPLATES(template)                                                                                         \
774                                                                                                                   \
775   /* CDS */                                                                                                       \
776   template(dumpSharedArchive,                               "dumpSharedArchive")                                  \
777   template(dumpSharedArchive_signature,                     "(ZLjava/lang/String;)Ljava/lang/String;")            \
778   template(generateLambdaFormHolderClasses,                 "generateLambdaFormHolderClasses")                    \
779   template(generateLambdaFormHolderClasses_signature,       "([Ljava/lang/String;)[Ljava/lang/Object;")           \
780   template(java_lang_Enum,                                  "java/lang/Enum")                                     \
781   template(java_lang_invoke_Invokers_Holder,                "java/lang/invoke/Invokers$Holder")                   \
782   template(java_lang_invoke_DirectMethodHandle_Holder,      "java/lang/invoke/DirectMethodHandle$Holder")         \
783   template(java_lang_invoke_LambdaForm_Holder,              "java/lang/invoke/LambdaForm$Holder")                 \
784   template(java_lang_invoke_DelegatingMethodHandle_Holder,  "java/lang/invoke/DelegatingMethodHandle$Holder")     \
785   template(jdk_internal_loader_ClassLoaders,                "jdk/internal/loader/ClassLoaders")                   \
786   template(jdk_internal_misc_CDS,                           "jdk/internal/misc/CDS")                              \
787   template(java_util_concurrent_ConcurrentHashMap,          "java/util/concurrent/ConcurrentHashMap")             \
788   template(java_util_ArrayList,                             "java/util/ArrayList")                                \
789   template(toFileURL_name,                                  "toFileURL")                                          \
790   template(toFileURL_signature,                             "(Ljava/lang/String;)Ljava/net/URL;")                 \
791   template(url_void_signature,                              "(Ljava/net/URL;)V")                                  \
792   template(url_array_classloader_void_signature,            "([Ljava/net/URL;Ljava/lang/ClassLoader;)V")          \
793                                                                                                                   \






794   /* Thread.dump_to_file jcmd */                                                                                  \
795   template(jdk_internal_vm_ThreadDumper,           "jdk/internal/vm/ThreadDumper")                                \
796   template(dumpThreads_name,                       "dumpThreads")                                                 \
797   template(dumpThreadsToJson_name,                 "dumpThreadsToJson")                                           \
798 
799   /*end*/
800 
801 // enum for figuring positions and size of Symbol::_vm_symbols[]
802 enum class vmSymbolID : int {
803   // [FIRST_SID ... LAST_SID] is the iteration range for the *valid* symbols.
804   // NO_SID is used to indicate an invalid symbol. Some implementation code
805   // *may* read _vm_symbols[NO_SID], so it must be a valid array index.
806   NO_SID = 0,                // exclusive lower limit
807 
808   #define VM_SYMBOL_ENUM(name, string) VM_SYMBOL_ENUM_NAME_(name),
809   VM_SYMBOLS_DO(VM_SYMBOL_ENUM, VM_ALIAS_IGNORE)
810   #undef VM_SYMBOL_ENUM
811 
812   SID_LIMIT,                 // exclusive upper limit
813 

165                                                                                                   \
166   /* Java runtime version access */                                                               \
167   template(java_lang_VersionProps,                    "java/lang/VersionProps")                   \
168   template(java_version_name,                         "java_version")                             \
169   template(java_runtime_name_name,                    "java_runtime_name")                        \
170   template(java_runtime_version_name,                 "java_runtime_version")                     \
171   template(java_runtime_vendor_version_name,          "VENDOR_VERSION")                           \
172   template(java_runtime_vendor_vm_bug_url_name,       "VENDOR_URL_VM_BUG")                        \
173                                                                                                   \
174   /* system initialization */                                                                     \
175   template(initPhase1_name,                           "initPhase1")                               \
176   template(initPhase2_name,                           "initPhase2")                               \
177   template(initPhase3_name,                           "initPhase3")                               \
178   template(java_lang_module_init_signature,           "(Ljava/lang/ClassLoader;Ljava/lang/String;)V") \
179                                                                                                   \
180   /* class file format tags */                                                                    \
181   template(tag_source_file,                           "SourceFile")                               \
182   template(tag_inner_classes,                         "InnerClasses")                             \
183   template(tag_nest_members,                          "NestMembers")                              \
184   template(tag_nest_host,                             "NestHost")                                 \
185   template(tag_preload,                               "Preload")                                  \
186   template(tag_constant_value,                        "ConstantValue")                            \
187   template(tag_code,                                  "Code")                                     \
188   template(tag_exceptions,                            "Exceptions")                               \
189   template(tag_line_number_table,                     "LineNumberTable")                          \
190   template(tag_local_variable_table,                  "LocalVariableTable")                       \
191   template(tag_local_variable_type_table,             "LocalVariableTypeTable")                   \
192   template(tag_method_parameters,                     "MethodParameters")                         \
193   template(tag_stack_map_table,                       "StackMapTable")                            \
194   template(tag_synthetic,                             "Synthetic")                                \
195   template(tag_deprecated,                            "Deprecated")                               \
196   template(tag_source_debug_extension,                "SourceDebugExtension")                     \
197   template(tag_signature,                             "Signature")                                \
198   template(tag_record,                                "Record")                                   \
199   template(tag_runtime_visible_annotations,           "RuntimeVisibleAnnotations")                \
200   template(tag_runtime_invisible_annotations,         "RuntimeInvisibleAnnotations")              \
201   template(tag_runtime_visible_parameter_annotations, "RuntimeVisibleParameterAnnotations")       \
202   template(tag_runtime_invisible_parameter_annotations,"RuntimeInvisibleParameterAnnotations")    \
203   template(tag_annotation_default,                    "AnnotationDefault")                        \
204   template(tag_runtime_visible_type_annotations,      "RuntimeVisibleTypeAnnotations")            \
205   template(tag_runtime_invisible_type_annotations,    "RuntimeInvisibleTypeAnnotations")          \

250   template(java_lang_InternalError,                   "java/lang/InternalError")                  \
251   template(java_lang_NoClassDefFoundError,            "java/lang/NoClassDefFoundError")           \
252   template(java_lang_NoSuchFieldError,                "java/lang/NoSuchFieldError")               \
253   template(java_lang_NoSuchMethodError,               "java/lang/NoSuchMethodError")              \
254   template(java_lang_OutOfMemoryError,                "java/lang/OutOfMemoryError")               \
255   template(java_lang_UnsatisfiedLinkError,            "java/lang/UnsatisfiedLinkError")           \
256   template(java_lang_VerifyError,                     "java/lang/VerifyError")                    \
257   template(java_lang_SecurityException,               "java/lang/SecurityException")              \
258   template(java_lang_VirtualMachineError,             "java/lang/VirtualMachineError")            \
259   template(java_lang_StackOverflowError,              "java/lang/StackOverflowError")             \
260   template(java_lang_StackTraceElement,               "java/lang/StackTraceElement")              \
261                                                                                                   \
262   /* Concurrency support */                                                                       \
263   template(java_util_concurrent_locks_AbstractOwnableSynchronizer,           "java/util/concurrent/locks/AbstractOwnableSynchronizer") \
264   template(java_util_concurrent_atomic_AtomicIntegerFieldUpdater_Impl,       "java/util/concurrent/atomic/AtomicIntegerFieldUpdater$AtomicIntegerFieldUpdaterImpl") \
265   template(java_util_concurrent_atomic_AtomicLongFieldUpdater_CASUpdater,    "java/util/concurrent/atomic/AtomicLongFieldUpdater$CASUpdater") \
266   template(java_util_concurrent_atomic_AtomicLongFieldUpdater_LockedUpdater, "java/util/concurrent/atomic/AtomicLongFieldUpdater$LockedUpdater") \
267   template(java_util_concurrent_atomic_AtomicReferenceFieldUpdater_Impl,     "java/util/concurrent/atomic/AtomicReferenceFieldUpdater$AtomicReferenceFieldUpdaterImpl") \
268   template(jdk_internal_vm_annotation_Contended_signature,                   "Ljdk/internal/vm/annotation/Contended;")    \
269   template(jdk_internal_vm_annotation_ReservedStackAccess_signature,         "Ljdk/internal/vm/annotation/ReservedStackAccess;") \
270   template(jdk_internal_vm_annotation_ImplicitlyConstructible_signature,     "Ljdk/internal/vm/annotation/ImplicitlyConstructible;") \
271   template(jdk_internal_vm_annotation_LooselyConsistentValue_signature,      "Ljdk/internal/vm/annotation/LooselyConsistentValue;") \
272   template(jdk_internal_vm_annotation_NullRestricted_signature,              "Ljdk/internal/vm/annotation/NullRestricted;") \
273   template(jdk_internal_ValueBased_signature,                                "Ljdk/internal/ValueBased;") \
274                                                                                                   \
275   /* class symbols needed by intrinsics */                                                        \
276   VM_INTRINSICS_DO(VM_INTRINSIC_IGNORE, template, VM_SYMBOL_IGNORE, VM_SYMBOL_IGNORE, VM_ALIAS_IGNORE) \
277                                                                                                   \
278   /* Support for reflection based on dynamic bytecode generation (JDK 1.4 and above) */           \
279                                                                                                   \
280   template(jdk_internal_reflect,                      "jdk/internal/reflect")                     \
281   template(reflect_MethodAccessorImpl,                "jdk/internal/reflect/MethodAccessorImpl")      \
282   template(reflect_DelegatingClassLoader,             "jdk/internal/reflect/DelegatingClassLoader")   \
283   template(reflect_Reflection,                        "jdk/internal/reflect/Reflection")              \
284   template(reflect_CallerSensitive,                   "jdk/internal/reflect/CallerSensitive")         \
285   template(reflect_CallerSensitive_signature,         "Ljdk/internal/reflect/CallerSensitive;")       \
286   template(reflect_DirectConstructorHandleAccessor_NativeAccessor,   "jdk/internal/reflect/DirectConstructorHandleAccessor$NativeAccessor") \
287   template(reflect_SerializationConstructorAccessorImpl,             "jdk/internal/reflect/SerializationConstructorAccessorImpl") \
288   template(checkedExceptions_name,                    "checkedExceptions")                        \
289   template(clazz_name,                                "clazz")                                    \
290   template(exceptionTypes_name,                       "exceptionTypes")                           \
291   template(modifiers_name,                            "modifiers")                                \
292   template(invokeBasic_name,                          "invokeBasic")                              \
293   template(linkToVirtual_name,                        "linkToVirtual")                            \
294   template(linkToStatic_name,                         "linkToStatic")                             \
295   template(linkToSpecial_name,                        "linkToSpecial")                            \
296   template(linkToInterface_name,                      "linkToInterface")                          \
297   template(linkToNative_name,                         "linkToNative")                             \
298   template(compiledLambdaForm_name,                   "<compiledLambdaForm>")  /*fake name*/      \
299   template(star_name,                                 "*") /*not really a name*/                  \
300   template(invoke_name,                               "invoke")                                   \
301   template(parameterTypes_name,                       "parameterTypes")                           \
302   template(returnType_name,                           "returnType")                               \
303   template(signature_name,                            "signature")                                \
304   template(slot_name,                                 "slot")                                     \

305   template(blackhole_name,                            "<blackhole>")  /*fake name*/               \
306                                                                                                   \
307   /* Support for annotations (JDK 1.5 and above) */                                               \
308                                                                                                   \
309   template(annotations_name,                          "annotations")                              \
310   template(index_name,                                "index")                                    \
311   template(executable_name,                           "executable")                               \
312   template(parameter_annotations_name,                "parameterAnnotations")                     \
313   template(annotation_default_name,                   "annotationDefault")                        \
314   template(reflect_ConstantPool,                      "jdk/internal/reflect/ConstantPool")        \
315   template(base_name,                                 "base")                                     \
316   /* Type Annotations (JDK 8 and above) */                                                        \
317   template(type_annotations_name,                     "typeAnnotations")                          \
318                                                                                                   \
319   /* Intrinsic Annotation (JDK 9 and above) */                                                    \
320   template(jdk_internal_vm_annotation_DontInline_signature,  "Ljdk/internal/vm/annotation/DontInline;")  \
321   template(jdk_internal_vm_annotation_ForceInline_signature, "Ljdk/internal/vm/annotation/ForceInline;") \
322   template(jdk_internal_vm_annotation_Hidden_signature,      "Ljdk/internal/vm/annotation/Hidden;") \
323   template(jdk_internal_misc_Scoped_signature,               "Ljdk/internal/misc/ScopedMemoryAccess$Scoped;") \
324   template(jdk_internal_vm_annotation_IntrinsicCandidate_signature, "Ljdk/internal/vm/annotation/IntrinsicCandidate;") \

519   template(input_stream_signature,                    "Ljava/io/InputStream;")                    \
520   template(print_stream_signature,                    "Ljava/io/PrintStream;")                    \
521   template(security_manager_signature,                "Ljava/lang/SecurityManager;")              \
522   template(defineOrCheckPackage_name,                 "defineOrCheckPackage")                     \
523   template(defineOrCheckPackage_signature,            "(Ljava/lang/String;Ljava/util/jar/Manifest;Ljava/net/URL;)Ljava/lang/Package;") \
524   template(getProtectionDomain_name,                  "getProtectionDomain")                      \
525   template(getProtectionDomain_signature,             "(Ljava/security/CodeSource;)Ljava/security/ProtectionDomain;") \
526   template(java_lang_Integer_array_signature,         "[Ljava/lang/Integer;")                     \
527   template(java_lang_Long_array_signature,            "[Ljava/lang/Long;")                        \
528   template(java_lang_Character_array_signature,       "[Ljava/lang/Character;")                   \
529   template(java_lang_Short_array_signature,           "[Ljava/lang/Short;")                       \
530   template(java_lang_Byte_array_signature,            "[Ljava/lang/Byte;")                        \
531   template(java_lang_Boolean_signature,               "Ljava/lang/Boolean;")                      \
532   template(url_code_signer_array_void_signature,      "(Ljava/net/URL;[Ljava/security/CodeSigner;)V") \
533   template(jvmti_thread_state_name,                   "jvmti_thread_state")                       \
534   template(jvmti_VTMS_transition_disable_count_name,  "jvmti_VTMS_transition_disable_count")      \
535   template(jvmti_is_in_VTMS_transition_name,          "jvmti_is_in_VTMS_transition")              \
536   template(module_entry_name,                         "module_entry")                             \
537   template(resolved_references_name,                  "<resolved_references>")                    \
538   template(init_lock_name,                            "<init_lock>")                              \
539   template(default_value_name,                        ".default")                                 \
540   template(empty_marker_name,                         ".empty")                                   \
541   template(address_size_name,                         "ADDRESS_SIZE0")                            \
542   template(page_size_name,                            "PAGE_SIZE")                                \
543   template(big_endian_name,                           "BIG_ENDIAN")                               \
544   template(use_unaligned_access_name,                 "UNALIGNED_ACCESS")                         \
545   template(data_cache_line_flush_size_name,           "DATA_CACHE_LINE_FLUSH_SIZE")               \
546   template(during_unsafe_access_name,                 "during_unsafe_access")                     \
547   template(checkIndex_name,                           "checkIndex")                               \
548   template(jfr_epoch_name,                            "jfr_epoch")                                \
549   template(maxThawingSize_name,                       "maxThawingSize")                           \
550                                                                                                   \
551   /* name symbols needed by intrinsics */                                                         \
552   VM_INTRINSICS_DO(VM_INTRINSIC_IGNORE, VM_SYMBOL_IGNORE, template, VM_SYMBOL_IGNORE, VM_ALIAS_IGNORE) \
553                                                                                                   \
554   /* common signatures names */                                                                   \
555   template(void_method_signature,                     "()V")                                      \
556   template(void_boolean_signature,                    "()Z")                                      \
557   template(void_byte_signature,                       "()B")                                      \
558   template(void_char_signature,                       "()C")                                      \
559   template(void_short_signature,                      "()S")                                      \
560   template(void_int_signature,                        "()I")                                      \

597   template(continuation_signature,                    "Ljdk/internal/vm/Continuation;")           \
598   template(continuationscope_signature,               "Ljdk/internal/vm/ContinuationScope;")      \
599   template(stackchunk_signature,                      "Ljdk/internal/vm/StackChunk;")             \
600   template(vthread_signature,                         "Ljava/lang/VirtualThread;")                \
601   template(object_void_signature,                     "(Ljava/lang/Object;)V")                    \
602   template(object_int_signature,                      "(Ljava/lang/Object;)I")                    \
603   template(long_object_long_signature,                "(JLjava/lang/Object;)J")                   \
604   template(object_boolean_signature,                  "(Ljava/lang/Object;)Z")                    \
605   template(object_object_signature,                   "(Ljava/lang/Object;)Ljava/lang/Object;")   \
606   template(string_void_signature,                     "(Ljava/lang/String;)V")                    \
607   template(string_int_signature,                      "(Ljava/lang/String;)I")                    \
608   template(string_byte_array_signature,               "(Ljava/lang/String;)[B")                   \
609   template(string_bool_byte_array_signature,          "(Ljava/lang/String;Z)[B")                  \
610   template(throwable_signature,                       "Ljava/lang/Throwable;")                    \
611   template(throwable_void_signature,                  "(Ljava/lang/Throwable;)V")                 \
612   template(void_throwable_signature,                  "()Ljava/lang/Throwable;")                  \
613   template(class_void_signature,                      "(Ljava/lang/Class;)V")                     \
614   template(class_int_signature,                       "(Ljava/lang/Class;)I")                     \
615   template(class_long_signature,                      "(Ljava/lang/Class;)J")                     \
616   template(class_boolean_signature,                   "(Ljava/lang/Class;)Z")                     \
617   template(class_class_signature,                     "(Ljava/lang/Class;)Ljava/lang/Class;")     \
618   template(throwable_throwable_signature,             "(Ljava/lang/Throwable;)Ljava/lang/Throwable;")             \
619   template(throwable_string_void_signature,           "(Ljava/lang/Throwable;Ljava/lang/String;)V")               \
620   template(string_array_void_signature,               "([Ljava/lang/String;)V")                                   \
621   template(string_array_string_array_void_signature,  "([Ljava/lang/String;[Ljava/lang/String;)V")                \
622   template(thread_throwable_void_signature,           "(Ljava/lang/Thread;Ljava/lang/Throwable;)V")               \
623   template(thread_void_signature,                     "(Ljava/lang/Thread;)V")                                    \
624   template(runnable_void_signature,                   "(Ljava/lang/Runnable;)V")                                   \
625   template(threadgroup_runnable_void_signature,       "(Ljava/lang/ThreadGroup;Ljava/lang/Runnable;)V")           \
626   template(threadgroup_string_void_signature,         "(Ljava/lang/ThreadGroup;Ljava/lang/String;)V")             \
627   template(void_threadgroup_array_signature,          "()[Ljava/lang/ThreadGroup;")                               \
628   template(string_class_signature,                    "(Ljava/lang/String;)Ljava/lang/Class;")                    \
629   template(string_boolean_class_signature,            "(Ljava/lang/String;Z)Ljava/lang/Class;")                   \
630   template(object_object_object_signature,            "(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;") \
631   template(object_object_boolean_signature,           "(Ljava/lang/Object;Ljava/lang/Object;)Z") \
632   template(string_string_string_signature,            "(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;") \
633   template(string_string_signature,                   "(Ljava/lang/String;)Ljava/lang/String;")                   \
634   template(classloader_string_long_signature,         "(Ljava/lang/ClassLoader;Ljava/lang/String;)J")             \
635   template(byte_array_void_signature,                 "([B)V")                                                    \
636   template(char_array_void_signature,                 "([C)V")                                                    \
637   template(int_int_void_signature,                    "(II)V")                                                    \
638   template(long_long_void_signature,                  "(JJ)V")                                                    \
639   template(void_byte_array_signature,                 "()[B")                                                     \
640   template(void_classloader_signature,                "()Ljava/lang/ClassLoader;")                                \
641   template(void_BuiltinClassLoader_signature,         "()Ljdk/internal/loader/BuiltinClassLoader;")               \
642   template(void_object_signature,                     "()Ljava/lang/Object;")                                     \
643   template(void_class_signature,                      "()Ljava/lang/Class;")                                      \
644   template(void_class_array_signature,                "()[Ljava/lang/Class;")                                     \
645   template(void_string_signature,                     "()Ljava/lang/String;")                                     \
646   template(void_module_signature,                     "()Ljava/lang/Module;")                                     \
647   template(object_array_object_signature,             "([Ljava/lang/Object;)Ljava/lang/Object;")                  \
648   template(object_object_array_object_signature,      "(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;")\
649   template(exception_void_signature,                  "(Ljava/lang/Exception;)V")                                 \
650   template(protectiondomain_signature,                "[Ljava/security/ProtectionDomain;")                        \
651   template(accesscontrolcontext_signature,            "Ljava/security/AccessControlContext;")                     \

755   template(addUses_signature,                          "(Ljava/lang/Module;Ljava/lang/Class;)V")                  \
756   template(addProvides_name,                           "addProvides")                                             \
757   template(addProvides_signature,                      "(Ljava/lang/Module;Ljava/lang/Class;Ljava/lang/Class;)V") \
758   template(loadModule_name,                            "loadModule")                                              \
759   template(loadModule_signature,                       "(Ljava/lang/String;)Ljava/lang/Module;")                  \
760   template(transformedByAgent_name,                    "transformedByAgent")                                      \
761   template(transformedByAgent_signature,               "(Ljava/lang/Module;)V")                                   \
762   template(appendToClassPathForInstrumentation_name,   "appendToClassPathForInstrumentation")                     \
763   do_alias(appendToClassPathForInstrumentation_signature, string_void_signature)                                  \
764   template(serializePropertiesToByteArray_name,        "serializePropertiesToByteArray")                          \
765   template(serializeAgentPropertiesToByteArray_name,   "serializeAgentPropertiesToByteArray")                     \
766   template(encodeThrowable_name,                       "encodeThrowable")                                         \
767   template(encodeThrowable_signature,                  "(Ljava/lang/Throwable;JI)I")                              \
768   template(decodeAndThrowThrowable_name,               "decodeAndThrowThrowable")                                 \
769   template(encodeAnnotations_name,                     "encodeAnnotations")                                       \
770   template(encodeAnnotations_signature,                "([BLjava/lang/Class;Ljdk/internal/reflect/ConstantPool;Z[Ljava/lang/Class;)[B")\
771   template(decodeAndThrowThrowable_signature,          "(IJZ)V")                                                  \
772   template(classRedefinedCount_name,                   "classRedefinedCount")                                     \
773   template(classLoader_name,                           "classLoader")                                             \
774   template(componentType_name,                         "componentType")                                           \
775   template(primaryType_name,                           "primaryType")                                             \
776   template(secondaryType_name,                         "secondaryType")                                           \
777                                                                                                                   \
778   /* forEachRemaining support */                                                                                  \
779   template(java_util_stream_StreamsRangeIntSpliterator,          "java/util/stream/Streams$RangeIntSpliterator")  \
780                                                                                                                   \
781   /* jfr signatures */                                                                                            \
782   JFR_TEMPLATES(template)                                                                                         \
783                                                                                                                   \
784   /* CDS */                                                                                                       \
785   template(dumpSharedArchive,                               "dumpSharedArchive")                                  \
786   template(dumpSharedArchive_signature,                     "(ZLjava/lang/String;)Ljava/lang/String;")            \
787   template(generateLambdaFormHolderClasses,                 "generateLambdaFormHolderClasses")                    \
788   template(generateLambdaFormHolderClasses_signature,       "([Ljava/lang/String;)[Ljava/lang/Object;")           \
789   template(java_lang_Enum,                                  "java/lang/Enum")                                     \
790   template(java_lang_invoke_Invokers_Holder,                "java/lang/invoke/Invokers$Holder")                   \
791   template(java_lang_invoke_DirectMethodHandle_Holder,      "java/lang/invoke/DirectMethodHandle$Holder")         \
792   template(java_lang_invoke_LambdaForm_Holder,              "java/lang/invoke/LambdaForm$Holder")                 \
793   template(java_lang_invoke_DelegatingMethodHandle_Holder,  "java/lang/invoke/DelegatingMethodHandle$Holder")     \
794   template(jdk_internal_loader_ClassLoaders,                "jdk/internal/loader/ClassLoaders")                   \
795   template(jdk_internal_misc_CDS,                           "jdk/internal/misc/CDS")                              \
796   template(java_util_concurrent_ConcurrentHashMap,          "java/util/concurrent/ConcurrentHashMap")             \
797   template(java_util_ArrayList,                             "java/util/ArrayList")                                \
798   template(toFileURL_name,                                  "toFileURL")                                          \
799   template(toFileURL_signature,                             "(Ljava/lang/String;)Ljava/net/URL;")                 \
800   template(url_void_signature,                              "(Ljava/net/URL;)V")                                  \
801   template(url_array_classloader_void_signature,            "([Ljava/net/URL;Ljava/lang/ClassLoader;)V")          \
802                                                                                                                   \
803   template(java_lang_runtime_ValueObjectMethods,            "java/lang/runtime/ValueObjectMethods")               \
804   template(isSubstitutable_name,                            "isSubstitutable")                                    \
805   template(valueObjectHashCode_name,                        "valueObjectHashCode")                                \
806   template(jdk_internal_value_PrimitiveClass,               "jdk/internal/value/PrimitiveClass")                  \
807   template(jdk_internal_value_ValueClass,                   "jdk/internal/value/ValueClass")                      \
808                                                                                                                   \
809   /* Thread.dump_to_file jcmd */                                                                                  \
810   template(jdk_internal_vm_ThreadDumper,           "jdk/internal/vm/ThreadDumper")                                \
811   template(dumpThreads_name,                       "dumpThreads")                                                 \
812   template(dumpThreadsToJson_name,                 "dumpThreadsToJson")                                           \
813 
814   /*end*/
815 
816 // enum for figuring positions and size of Symbol::_vm_symbols[]
817 enum class vmSymbolID : int {
818   // [FIRST_SID ... LAST_SID] is the iteration range for the *valid* symbols.
819   // NO_SID is used to indicate an invalid symbol. Some implementation code
820   // *may* read _vm_symbols[NO_SID], so it must be a valid array index.
821   NO_SID = 0,                // exclusive lower limit
822 
823   #define VM_SYMBOL_ENUM(name, string) VM_SYMBOL_ENUM_NAME_(name),
824   VM_SYMBOLS_DO(VM_SYMBOL_ENUM, VM_ALIAS_IGNORE)
825   #undef VM_SYMBOL_ENUM
826 
827   SID_LIMIT,                 // exclusive upper limit
828 
< prev index next >