Mercurial > hg > graal-compiler
comparison src/share/vm/classfile/vmSymbols.hpp @ 6006:0105f367a14c
7160570: Intrinsification support for tracing framework
Reviewed-by: sla, never
author | rbackman |
---|---|
date | Tue, 06 Mar 2012 12:36:59 +0100 |
parents | 645162d94294 |
children | 8f972594effc |
comparison
equal
deleted
inserted
replaced
6005:c263e0e9f14b | 6006:0105f367a14c |
---|---|
25 #ifndef SHARE_VM_CLASSFILE_VMSYMBOLS_HPP | 25 #ifndef SHARE_VM_CLASSFILE_VMSYMBOLS_HPP |
26 #define SHARE_VM_CLASSFILE_VMSYMBOLS_HPP | 26 #define SHARE_VM_CLASSFILE_VMSYMBOLS_HPP |
27 | 27 |
28 #include "oops/symbol.hpp" | 28 #include "oops/symbol.hpp" |
29 #include "memory/iterator.hpp" | 29 #include "memory/iterator.hpp" |
30 #include "trace/traceMacros.hpp" | |
30 | 31 |
31 // The class vmSymbols is a name space for fast lookup of | 32 // The class vmSymbols is a name space for fast lookup of |
32 // symbols commonly used in the VM. | 33 // symbols commonly used in the VM. |
33 // | 34 // |
34 // Sample usage: | 35 // Sample usage: |
422 template(throwable_void_signature, "(Ljava/lang/Throwable;)V") \ | 423 template(throwable_void_signature, "(Ljava/lang/Throwable;)V") \ |
423 template(void_throwable_signature, "()Ljava/lang/Throwable;") \ | 424 template(void_throwable_signature, "()Ljava/lang/Throwable;") \ |
424 template(throwable_throwable_signature, "(Ljava/lang/Throwable;)Ljava/lang/Throwable;") \ | 425 template(throwable_throwable_signature, "(Ljava/lang/Throwable;)Ljava/lang/Throwable;") \ |
425 template(class_void_signature, "(Ljava/lang/Class;)V") \ | 426 template(class_void_signature, "(Ljava/lang/Class;)V") \ |
426 template(class_int_signature, "(Ljava/lang/Class;)I") \ | 427 template(class_int_signature, "(Ljava/lang/Class;)I") \ |
428 template(class_long_signature, "(Ljava/lang/Class;)J") \ | |
427 template(class_boolean_signature, "(Ljava/lang/Class;)Z") \ | 429 template(class_boolean_signature, "(Ljava/lang/Class;)Z") \ |
428 template(throwable_string_void_signature, "(Ljava/lang/Throwable;Ljava/lang/String;)V") \ | 430 template(throwable_string_void_signature, "(Ljava/lang/Throwable;Ljava/lang/String;)V") \ |
429 template(string_array_void_signature, "([Ljava/lang/String;)V") \ | 431 template(string_array_void_signature, "([Ljava/lang/String;)V") \ |
430 template(string_array_string_array_void_signature, "([Ljava/lang/String;[Ljava/lang/String;)V") \ | 432 template(string_array_string_array_void_signature, "([Ljava/lang/String;[Ljava/lang/String;)V") \ |
431 template(thread_throwable_void_signature, "(Ljava/lang/Thread;Ljava/lang/Throwable;)V") \ | 433 template(thread_throwable_void_signature, "(Ljava/lang/Thread;Ljava/lang/Throwable;)V") \ |
537 do_alias(appendToClassPathForInstrumentation_signature, string_void_signature) \ | 539 do_alias(appendToClassPathForInstrumentation_signature, string_void_signature) \ |
538 template(serializePropertiesToByteArray_name, "serializePropertiesToByteArray") \ | 540 template(serializePropertiesToByteArray_name, "serializePropertiesToByteArray") \ |
539 template(serializePropertiesToByteArray_signature, "()[B") \ | 541 template(serializePropertiesToByteArray_signature, "()[B") \ |
540 template(serializeAgentPropertiesToByteArray_name, "serializeAgentPropertiesToByteArray") \ | 542 template(serializeAgentPropertiesToByteArray_name, "serializeAgentPropertiesToByteArray") \ |
541 template(classRedefinedCount_name, "classRedefinedCount") \ | 543 template(classRedefinedCount_name, "classRedefinedCount") \ |
544 \ | |
545 /* trace signatures */ \ | |
546 TRACE_TEMPLATES(template) \ | |
547 \ | |
542 /*end*/ | 548 /*end*/ |
543 | |
544 | |
545 | 549 |
546 // Here are all the intrinsics known to the runtime and the CI. | 550 // Here are all the intrinsics known to the runtime and the CI. |
547 // Each intrinsic consists of a public enum name (like _hashCode), | 551 // Each intrinsic consists of a public enum name (like _hashCode), |
548 // followed by a specification of its klass, name, and signature: | 552 // followed by a specification of its klass, name, and signature: |
549 // template(<id>, <klass>, <name>, <sig>, <FCODE>) | 553 // template(<id>, <klass>, <name>, <sig>, <FCODE>) |
646 \ | 650 \ |
647 do_name( currentTimeMillis_name, "currentTimeMillis") \ | 651 do_name( currentTimeMillis_name, "currentTimeMillis") \ |
648 do_intrinsic(_nanoTime, java_lang_System, nanoTime_name, void_long_signature, F_S) \ | 652 do_intrinsic(_nanoTime, java_lang_System, nanoTime_name, void_long_signature, F_S) \ |
649 do_name( nanoTime_name, "nanoTime") \ | 653 do_name( nanoTime_name, "nanoTime") \ |
650 \ | 654 \ |
655 TRACE_INTRINSICS(do_intrinsic, do_class, do_name, do_signature, do_alias) \ | |
656 \ | |
651 do_intrinsic(_arraycopy, java_lang_System, arraycopy_name, arraycopy_signature, F_S) \ | 657 do_intrinsic(_arraycopy, java_lang_System, arraycopy_name, arraycopy_signature, F_S) \ |
652 do_name( arraycopy_name, "arraycopy") \ | 658 do_name( arraycopy_name, "arraycopy") \ |
653 do_signature(arraycopy_signature, "(Ljava/lang/Object;ILjava/lang/Object;II)V") \ | 659 do_signature(arraycopy_signature, "(Ljava/lang/Object;ILjava/lang/Object;II)V") \ |
654 do_intrinsic(_isInterrupted, java_lang_Thread, isInterrupted_name, isInterrupted_signature, F_R) \ | 660 do_intrinsic(_isInterrupted, java_lang_Thread, isInterrupted_name, isInterrupted_signature, F_R) \ |
655 do_name( isInterrupted_name, "isInterrupted") \ | 661 do_name( isInterrupted_name, "isInterrupted") \ |