hotspot/src/share/vm/classfile/vmSymbols.hpp
changeset 31587 e48945b7849c
parent 31584 24e491478c2f
child 31862 8673bd4db4b1
child 31856 614d6786ba55
equal deleted inserted replaced
31586:6e57742d1adb 31587:e48945b7849c
   256   template(sun_reflect_UnsafeStaticFieldAccessorImpl, "sun/reflect/UnsafeStaticFieldAccessorImpl")\
   256   template(sun_reflect_UnsafeStaticFieldAccessorImpl, "sun/reflect/UnsafeStaticFieldAccessorImpl")\
   257   template(base_name,                                 "base")                                     \
   257   template(base_name,                                 "base")                                     \
   258   /* Type Annotations (JDK 8 and above) */                                                        \
   258   /* Type Annotations (JDK 8 and above) */                                                        \
   259   template(type_annotations_name,                     "typeAnnotations")                          \
   259   template(type_annotations_name,                     "typeAnnotations")                          \
   260                                                                                                   \
   260                                                                                                   \
       
   261   /* Intrinsic Annotation (JDK 9 and above) */                                                    \
       
   262   template(jdk_internal_HotSpotIntrinsicCandidate_signature, "Ljdk/internal/HotSpotIntrinsicCandidate;") \
   261                                                                                                   \
   263                                                                                                   \
   262   /* Support for JSR 292 & invokedynamic (JDK 1.7 and above) */                                   \
   264   /* Support for JSR 292 & invokedynamic (JDK 1.7 and above) */                                   \
   263   template(java_lang_invoke_CallSite,                 "java/lang/invoke/CallSite")                \
   265   template(java_lang_invoke_CallSite,                 "java/lang/invoke/CallSite")                \
   264   template(java_lang_invoke_ConstantCallSite,         "java/lang/invoke/ConstantCallSite")        \
   266   template(java_lang_invoke_ConstantCallSite,         "java/lang/invoke/ConstantCallSite")        \
   265   template(java_lang_invoke_DirectMethodHandle,       "java/lang/invoke/DirectMethodHandle")      \
   267   template(java_lang_invoke_DirectMethodHandle,       "java/lang/invoke/DirectMethodHandle")      \
   343   template(throwIllegalAccessError_name,              "throwIllegalAccessError")                  \
   345   template(throwIllegalAccessError_name,              "throwIllegalAccessError")                  \
   344   template(getFromClass_name,                         "getFromClass")                             \
   346   template(getFromClass_name,                         "getFromClass")                             \
   345   template(dispatch_name,                             "dispatch")                                 \
   347   template(dispatch_name,                             "dispatch")                                 \
   346   template(getSystemClassLoader_name,                 "getSystemClassLoader")                     \
   348   template(getSystemClassLoader_name,                 "getSystemClassLoader")                     \
   347   template(fillInStackTrace_name,                     "fillInStackTrace")                         \
   349   template(fillInStackTrace_name,                     "fillInStackTrace")                         \
   348   template(fillInStackTrace0_name,                    "fillInStackTrace0")                        \
       
   349   template(getCause_name,                             "getCause")                                 \
   350   template(getCause_name,                             "getCause")                                 \
   350   template(initCause_name,                            "initCause")                                \
   351   template(initCause_name,                            "initCause")                                \
   351   template(setProperty_name,                          "setProperty")                              \
   352   template(setProperty_name,                          "setProperty")                              \
   352   template(getProperty_name,                          "getProperty")                              \
   353   template(getProperty_name,                          "getProperty")                              \
   353   template(context_name,                              "context")                                  \
   354   template(context_name,                              "context")                                  \
   633 // intentions here about kinds of symbols (class vs. name vs. signature).
   634 // intentions here about kinds of symbols (class vs. name vs. signature).
   634 //
   635 //
   635 // The F_xx is one of the Flags enum; see below.
   636 // The F_xx is one of the Flags enum; see below.
   636 //
   637 //
   637 // for Emacs: (let ((c-backslash-column 120) (c-backslash-max-column 120)) (c-backslash-region (point) (point-max) nil t))
   638 // for Emacs: (let ((c-backslash-column 120) (c-backslash-max-column 120)) (c-backslash-region (point) (point-max) nil t))
       
   639 //
       
   640 //
       
   641 // There are two types of intrinsic methods: (1) Library intrinsics and (2) bytecode intrinsics.
       
   642 //
       
   643 // (1) A library intrinsic method may be replaced with hand-crafted assembly code,
       
   644 // with hand-crafted compiler IR, or with a combination of the two. The semantics
       
   645 // of the replacement code may differ from the semantics of the replaced code.
       
   646 //
       
   647 // (2) Bytecode intrinsic methods are not replaced by special code, but they are
       
   648 // treated in some other special way by the compiler. For example, the compiler
       
   649 // may delay inlining for some String-related intrinsic methods (e.g., some methods
       
   650 // defined in the StringBuilder and StringBuffer classes, see
       
   651 // Compile::should_delay_string_inlining() for more details).
       
   652 //
       
   653 // Due to the difference between the semantics of an intrinsic method as defined
       
   654 // in the (Java) source code and the semantics of the method as defined
       
   655 // by the code in the VM, intrinsic methods must be explicitly marked.
       
   656 //
       
   657 // Intrinsic methods are marked by the jdk.internal.HotSpotIntrinsicCandidate
       
   658 // annotation. If CheckIntrinsics is enabled, the VM performs the following
       
   659 // checks when a class C is loaded: (1) all intrinsics defined by the VM for
       
   660 // class C are present in the loaded class file and are marked;
       
   661 // (2) an intrinsic is defined by the VM for all marked methods of class C.
       
   662 //
       
   663 // If a mismatch is detected for a method, the VM behaves differently depending
       
   664 // on the type of build. A fastdebug build exits and reports an error on a mismatch.
       
   665 // A product build will not replace an unmarked library intrinsic method with
       
   666 // hand-crafted code, that is, unmarked library intrinsics are treated as ordinary
       
   667 // methods in a product build. The special treatment of a bytecode intrinsic method
       
   668 // persists even if the method not marked.
       
   669 //
       
   670 // When adding an intrinsic for a method, please make sure to appropriately
       
   671 // annotate the method in the source code. The list below contains all
       
   672 // library intrinsics followed by bytecode intrinsics. Please also make sure to
       
   673 // add the declaration of the intrinsic to the approriate section of the list.
   638 #define VM_INTRINSICS_DO(do_intrinsic, do_class, do_name, do_signature, do_alias)                                       \
   674 #define VM_INTRINSICS_DO(do_intrinsic, do_class, do_name, do_signature, do_alias)                                       \
       
   675   /* (1) Library intrinsics                                                                        */                   \
   639   do_intrinsic(_hashCode,                 java_lang_Object,       hashCode_name, void_int_signature,             F_R)   \
   676   do_intrinsic(_hashCode,                 java_lang_Object,       hashCode_name, void_int_signature,             F_R)   \
   640    do_name(     hashCode_name,                                   "hashCode")                                            \
   677    do_name(     hashCode_name,                                   "hashCode")                                            \
   641   do_intrinsic(_getClass,                 java_lang_Object,       getClass_name, void_class_signature,           F_R)   \
   678   do_intrinsic(_getClass,                 java_lang_Object,       getClass_name, void_class_signature,           F_R)   \
   642    do_name(     getClass_name,                                   "getClass")                                            \
   679    do_name(     getClass_name,                                   "getClass")                                            \
   643   do_intrinsic(_clone,                    java_lang_Object,       clone_name, void_object_signature,             F_R)   \
   680   do_intrinsic(_clone,                    java_lang_Object,       clone_name, void_object_signature,             F_R)   \
   790   do_intrinsic(_checkIndex,               java_nio_Buffer,        checkIndex_name, int_int_signature,            F_R)   \
   827   do_intrinsic(_checkIndex,               java_nio_Buffer,        checkIndex_name, int_int_signature,            F_R)   \
   791    do_name(     checkIndex_name,                                 "checkIndex")                                          \
   828    do_name(     checkIndex_name,                                 "checkIndex")                                          \
   792                                                                                                                         \
   829                                                                                                                         \
   793   do_class(sun_nio_cs_iso8859_1_Encoder,  "sun/nio/cs/ISO_8859_1$Encoder")                                              \
   830   do_class(sun_nio_cs_iso8859_1_Encoder,  "sun/nio/cs/ISO_8859_1$Encoder")                                              \
   794   do_intrinsic(_encodeISOArray,     sun_nio_cs_iso8859_1_Encoder, encodeISOArray_name, encodeISOArray_signature, F_S)   \
   831   do_intrinsic(_encodeISOArray,     sun_nio_cs_iso8859_1_Encoder, encodeISOArray_name, encodeISOArray_signature, F_S)   \
   795    do_name(     encodeISOArray_name,                             "encodeISOArray")                                      \
   832    do_name(     encodeISOArray_name,                             "implEncodeISOArray")                                  \
   796    do_signature(encodeISOArray_signature,                        "([CI[BII)I")                                          \
   833    do_signature(encodeISOArray_signature,                        "([CI[BII)I")                                          \
   797                                                                                                                         \
   834                                                                                                                         \
   798   do_class(java_math_BigInteger,                      "java/math/BigInteger")                                           \
   835   do_class(java_math_BigInteger,                      "java/math/BigInteger")                                           \
   799   do_intrinsic(_multiplyToLen,      java_math_BigInteger, multiplyToLen_name, multiplyToLen_signature, F_S)             \
   836   do_intrinsic(_multiplyToLen,      java_math_BigInteger, multiplyToLen_name, multiplyToLen_signature, F_S)             \
   800    do_name(     multiplyToLen_name,                             "multiplyToLen")                                        \
   837    do_name(     multiplyToLen_name,                             "implMultiplyToLen")                                    \
   801    do_signature(multiplyToLen_signature,                        "([II[II[I)[I")                                         \
   838    do_signature(multiplyToLen_signature,                        "([II[II[I)[I")                                         \
   802                                                                                                                         \
   839                                                                                                                         \
   803   do_intrinsic(_squareToLen, java_math_BigInteger, squareToLen_name, squareToLen_signature, F_S)                        \
   840   do_intrinsic(_squareToLen, java_math_BigInteger, squareToLen_name, squareToLen_signature, F_S)                        \
   804    do_name(     squareToLen_name,                             "implSquareToLen")                                        \
   841    do_name(     squareToLen_name,                             "implSquareToLen")                                        \
   805    do_signature(squareToLen_signature,                        "([II[II)[I")                                             \
   842    do_signature(squareToLen_signature,                        "([II[II)[I")                                             \
   821                                                                                                                         \
   858                                                                                                                         \
   822   /* support for com.sun.crypto.provider.AESCrypt and some of its callers */                                            \
   859   /* support for com.sun.crypto.provider.AESCrypt and some of its callers */                                            \
   823   do_class(com_sun_crypto_provider_aescrypt,      "com/sun/crypto/provider/AESCrypt")                                   \
   860   do_class(com_sun_crypto_provider_aescrypt,      "com/sun/crypto/provider/AESCrypt")                                   \
   824   do_intrinsic(_aescrypt_encryptBlock, com_sun_crypto_provider_aescrypt, encryptBlock_name, byteArray_int_byteArray_int_signature, F_R)   \
   861   do_intrinsic(_aescrypt_encryptBlock, com_sun_crypto_provider_aescrypt, encryptBlock_name, byteArray_int_byteArray_int_signature, F_R)   \
   825   do_intrinsic(_aescrypt_decryptBlock, com_sun_crypto_provider_aescrypt, decryptBlock_name, byteArray_int_byteArray_int_signature, F_R)   \
   862   do_intrinsic(_aescrypt_decryptBlock, com_sun_crypto_provider_aescrypt, decryptBlock_name, byteArray_int_byteArray_int_signature, F_R)   \
   826    do_name(     encryptBlock_name,                                 "encryptBlock")                                      \
   863    do_name(     encryptBlock_name,                                 "implEncryptBlock")                                  \
   827    do_name(     decryptBlock_name,                                 "decryptBlock")                                      \
   864    do_name(     decryptBlock_name,                                 "implDecryptBlock")                                  \
   828    do_signature(byteArray_int_byteArray_int_signature,             "([BI[BI)V")                                         \
   865    do_signature(byteArray_int_byteArray_int_signature,             "([BI[BI)V")                                         \
   829                                                                                                                         \
   866                                                                                                                         \
   830   do_class(com_sun_crypto_provider_cipherBlockChaining,            "com/sun/crypto/provider/CipherBlockChaining")       \
   867   do_class(com_sun_crypto_provider_cipherBlockChaining,            "com/sun/crypto/provider/CipherBlockChaining")       \
   831    do_intrinsic(_cipherBlockChaining_encryptAESCrypt, com_sun_crypto_provider_cipherBlockChaining, encrypt_name, byteArray_int_int_byteArray_int_signature, F_R)   \
   868    do_intrinsic(_cipherBlockChaining_encryptAESCrypt, com_sun_crypto_provider_cipherBlockChaining, encrypt_name, byteArray_int_int_byteArray_int_signature, F_R)   \
   832    do_intrinsic(_cipherBlockChaining_decryptAESCrypt, com_sun_crypto_provider_cipherBlockChaining, decrypt_name, byteArray_int_int_byteArray_int_signature, F_R)   \
   869    do_intrinsic(_cipherBlockChaining_decryptAESCrypt, com_sun_crypto_provider_cipherBlockChaining, decrypt_name, byteArray_int_int_byteArray_int_signature, F_R)   \
   833    do_name(     encrypt_name,                                      "encrypt")                                           \
   870    do_name(     encrypt_name,                                      "implEncrypt")                                       \
   834    do_name(     decrypt_name,                                      "decrypt")                                           \
   871    do_name(     decrypt_name,                                      "implDecrypt")                                       \
   835    do_signature(byteArray_int_int_byteArray_int_signature,         "([BII[BI)I")                                        \
   872    do_signature(byteArray_int_int_byteArray_int_signature,         "([BII[BI)I")                                        \
   836                                                                                                                         \
   873                                                                                                                         \
   837   /* support for sun.security.provider.SHA */                                                                           \
   874   /* support for sun.security.provider.SHA */                                                                           \
   838   do_class(sun_security_provider_sha,                              "sun/security/provider/SHA")                         \
   875   do_class(sun_security_provider_sha,                              "sun/security/provider/SHA")                         \
   839   do_intrinsic(_sha_implCompress, sun_security_provider_sha, implCompress_name, implCompress_signature, F_R)            \
   876   do_intrinsic(_sha_implCompress, sun_security_provider_sha, implCompress_name, implCompress_signature, F_R)            \
   840    do_name(     implCompress_name,                                 "implCompress")                                      \
   877    do_name(     implCompress_name,                                 "implCompress0")                                     \
   841    do_signature(implCompress_signature,                            "([BI)V")                                            \
   878    do_signature(implCompress_signature,                            "([BI)V")                                            \
   842                                                                                                                         \
   879                                                                                                                         \
   843   /* support for sun.security.provider.SHA2 */                                                                          \
   880   /* support for sun.security.provider.SHA2 */                                                                          \
   844   do_class(sun_security_provider_sha2,                             "sun/security/provider/SHA2")                        \
   881   do_class(sun_security_provider_sha2,                             "sun/security/provider/SHA2")                        \
   845   do_intrinsic(_sha2_implCompress, sun_security_provider_sha2, implCompress_name, implCompress_signature, F_R)          \
   882   do_intrinsic(_sha2_implCompress, sun_security_provider_sha2, implCompress_name, implCompress_signature, F_R)          \
   849   do_intrinsic(_sha5_implCompress, sun_security_provider_sha5, implCompress_name, implCompress_signature, F_R)          \
   886   do_intrinsic(_sha5_implCompress, sun_security_provider_sha5, implCompress_name, implCompress_signature, F_R)          \
   850                                                                                                                         \
   887                                                                                                                         \
   851   /* support for sun.security.provider.DigestBase */                                                                    \
   888   /* support for sun.security.provider.DigestBase */                                                                    \
   852   do_class(sun_security_provider_digestbase,                       "sun/security/provider/DigestBase")                  \
   889   do_class(sun_security_provider_digestbase,                       "sun/security/provider/DigestBase")                  \
   853   do_intrinsic(_digestBase_implCompressMB, sun_security_provider_digestbase, implCompressMB_name, implCompressMB_signature, F_R)   \
   890   do_intrinsic(_digestBase_implCompressMB, sun_security_provider_digestbase, implCompressMB_name, implCompressMB_signature, F_R)   \
   854    do_name(     implCompressMB_name,                               "implCompressMultiBlock")                            \
   891    do_name(     implCompressMB_name,                               "implCompressMultiBlock0")                           \
   855    do_signature(implCompressMB_signature,                          "([BII)I")                                           \
   892    do_signature(implCompressMB_signature,                          "([BII)I")                                           \
   856                                                                                                                         \
   893                                                                                                                         \
   857   /* support for com.sun.crypto.provider.GHASH */                                                                       \
   894   /* support for com.sun.crypto.provider.GHASH */                                                                       \
   858   do_class(com_sun_crypto_provider_ghash, "com/sun/crypto/provider/GHASH")                                              \
   895   do_class(com_sun_crypto_provider_ghash, "com/sun/crypto/provider/GHASH")                                              \
   859   do_intrinsic(_ghash_processBlocks, com_sun_crypto_provider_ghash, processBlocks_name, ghash_processBlocks_signature, F_S) \
   896   do_intrinsic(_ghash_processBlocks, com_sun_crypto_provider_ghash, processBlocks_name, ghash_processBlocks_signature, F_S) \
   863   /* support for java.util.zip */                                                                                       \
   900   /* support for java.util.zip */                                                                                       \
   864   do_class(java_util_zip_CRC32,           "java/util/zip/CRC32")                                                        \
   901   do_class(java_util_zip_CRC32,           "java/util/zip/CRC32")                                                        \
   865   do_intrinsic(_updateCRC32,               java_util_zip_CRC32,   update_name, int2_int_signature,               F_SN)  \
   902   do_intrinsic(_updateCRC32,               java_util_zip_CRC32,   update_name, int2_int_signature,               F_SN)  \
   866    do_name(     update_name,                                      "update")                                             \
   903    do_name(     update_name,                                      "update")                                             \
   867   do_intrinsic(_updateBytesCRC32,          java_util_zip_CRC32,   updateBytes_name, updateBytes_signature,       F_SN)  \
   904   do_intrinsic(_updateBytesCRC32,          java_util_zip_CRC32,   updateBytes_name, updateBytes_signature,       F_SN)  \
   868    do_name(     updateBytes_name,                                "updateBytes")                                         \
   905    do_name(     updateBytes_name,                                "updateBytes0")                                        \
   869    do_signature(updateBytes_signature,                           "(I[BII)I")                                            \
   906    do_signature(updateBytes_signature,                           "(I[BII)I")                                            \
   870   do_intrinsic(_updateByteBufferCRC32,     java_util_zip_CRC32,   updateByteBuffer_name, updateByteBuffer_signature, F_SN) \
   907   do_intrinsic(_updateByteBufferCRC32,     java_util_zip_CRC32,   updateByteBuffer_name, updateByteBuffer_signature, F_SN) \
   871    do_name(     updateByteBuffer_name,                           "updateByteBuffer")                                    \
   908    do_name(     updateByteBuffer_name,                           "updateByteBuffer0")                                   \
   872    do_signature(updateByteBuffer_signature,                      "(IJII)I")                                             \
   909    do_signature(updateByteBuffer_signature,                      "(IJII)I")                                             \
   873                                                                                                                         \
   910                                                                                                                         \
   874   /* support for java.util.zip.CRC32C */                                                                                \
   911   /* support for java.util.zip.CRC32C */                                                                                \
   875   do_class(java_util_zip_CRC32C,          "java/util/zip/CRC32C")                                                       \
   912   do_class(java_util_zip_CRC32C,          "java/util/zip/CRC32C")                                                       \
   876   do_intrinsic(_updateBytesCRC32C,         java_util_zip_CRC32C,  updateBytes_name, updateBytes_signature,       F_S)   \
   913   do_intrinsic(_updateBytesCRC32C,         java_util_zip_CRC32C,  updateBytes_C_name, updateBytes_signature,       F_S) \
   877   do_intrinsic(_updateDirectByteBufferCRC32C, java_util_zip_CRC32C, updateDirectByteBuffer_name, updateByteBuffer_signature, F_S) \
   914    do_name(     updateBytes_C_name,                               "updateBytes")                                        \
   878    do_name(     updateDirectByteBuffer_name,                     "updateDirectByteBuffer")                              \
   915   do_intrinsic(_updateDirectByteBufferCRC32C, java_util_zip_CRC32C, updateDirectByteBuffer_C_name, updateByteBuffer_signature, F_S) \
       
   916    do_name(    updateDirectByteBuffer_C_name,                     "updateDirectByteBuffer")                             \
   879                                                                                                                         \
   917                                                                                                                         \
   880   /* support for sun.misc.Unsafe */                                                                                     \
   918   /* support for sun.misc.Unsafe */                                                                                     \
   881   do_class(sun_misc_Unsafe,               "sun/misc/Unsafe")                                                            \
   919   do_class(sun_misc_Unsafe,               "sun/misc/Unsafe")                                                            \
   882                                                                                                                         \
   920                                                                                                                         \
   883   do_intrinsic(_allocateInstance,         sun_misc_Unsafe,        allocateInstance_name, allocateInstance_signature, F_RN) \
   921   do_intrinsic(_allocateInstance,         sun_misc_Unsafe,        allocateInstance_name, allocateInstance_signature, F_RN) \
   884    do_name(     allocateInstance_name,                           "allocateInstance")                                    \
   922    do_name(     allocateInstance_name,                           "allocateInstance")                                    \
   885    do_signature(allocateInstance_signature,   "(Ljava/lang/Class;)Ljava/lang/Object;")                                  \
   923    do_signature(allocateInstance_signature,   "(Ljava/lang/Class;)Ljava/lang/Object;")                                  \
   886   do_intrinsic(_copyMemory,               sun_misc_Unsafe,        copyMemory_name, copyMemory_signature,         F_RN)  \
   924   do_intrinsic(_copyMemory,               sun_misc_Unsafe,        copyMemory_name, copyMemory_signature,         F_RN)  \
   887    do_name(     copyMemory_name,                                 "copyMemory")                                          \
   925    do_name(     copyMemory_name,                                 "copyMemory")                                          \
   888    do_signature(copyMemory_signature,         "(Ljava/lang/Object;JLjava/lang/Object;JJ)V")                             \
   926    do_signature(copyMemory_signature,         "(Ljava/lang/Object;JLjava/lang/Object;JJ)V")                             \
   889   do_intrinsic(_park,                     sun_misc_Unsafe,        park_name, park_signature,                     F_RN)  \
       
   890    do_name(     park_name,                                       "park")                                                \
       
   891    do_signature(park_signature,                                  "(ZJ)V")                                               \
       
   892   do_intrinsic(_unpark,                   sun_misc_Unsafe,        unpark_name, unpark_signature,                 F_RN)  \
       
   893    do_name(     unpark_name,                                     "unpark")                                              \
       
   894    do_alias(    unpark_signature,                               /*(LObject;)V*/ object_void_signature)                  \
       
   895   do_intrinsic(_loadFence,                sun_misc_Unsafe,        loadFence_name, loadFence_signature,           F_RN)  \
   927   do_intrinsic(_loadFence,                sun_misc_Unsafe,        loadFence_name, loadFence_signature,           F_RN)  \
   896    do_name(     loadFence_name,                                  "loadFence")                                           \
   928    do_name(     loadFence_name,                                  "loadFence")                                           \
   897    do_alias(    loadFence_signature,                              void_method_signature)                                \
   929    do_alias(    loadFence_signature,                              void_method_signature)                                \
   898   do_intrinsic(_storeFence,               sun_misc_Unsafe,        storeFence_name, storeFence_signature,         F_RN)  \
   930   do_intrinsic(_storeFence,               sun_misc_Unsafe,        storeFence_name, storeFence_signature,         F_RN)  \
   899    do_name(     storeFence_name,                                 "storeFence")                                          \
   931    do_name(     storeFence_name,                                 "storeFence")                                          \
  1072    do_name(     getAndSetLong_name,                               "getAndSetLong")                                      \
  1104    do_name(     getAndSetLong_name,                               "getAndSetLong")                                      \
  1073    do_alias(    getAndSetLong_signature,                        /*"(Ljava/lang/Object;JJ)J"*/ getAndAddLong_signature)  \
  1105    do_alias(    getAndSetLong_signature,                        /*"(Ljava/lang/Object;JJ)J"*/ getAndAddLong_signature)  \
  1074   do_intrinsic(_getAndSetObject,          sun_misc_Unsafe,        getAndSetObject_name, getAndSetObject_signature,  F_R)\
  1106   do_intrinsic(_getAndSetObject,          sun_misc_Unsafe,        getAndSetObject_name, getAndSetObject_signature,  F_R)\
  1075    do_name(     getAndSetObject_name,                             "getAndSetObject")                                    \
  1107    do_name(     getAndSetObject_name,                             "getAndSetObject")                                    \
  1076    do_signature(getAndSetObject_signature,                        "(Ljava/lang/Object;JLjava/lang/Object;)Ljava/lang/Object;" ) \
  1108    do_signature(getAndSetObject_signature,                        "(Ljava/lang/Object;JLjava/lang/Object;)Ljava/lang/Object;" ) \
  1077     /*== LAST_COMPILER_INLINE*/                                                                                         \
  1109                                                                                                                         \
  1078     /*the compiler does have special inlining code for these; bytecode inline is just fine */                           \
  1110    /* (2) Bytecode intrinsics                                                                        */                 \
  1079                                                                                                                         \
  1111                                                                                                                         \
  1080   do_intrinsic(_fillInStackTrace,         java_lang_Throwable, fillInStackTrace_name, void_throwable_signature,  F_RNY) \
  1112   do_intrinsic(_park,                     sun_misc_Unsafe,        park_name, park_signature,                     F_RN)  \
  1081                                                                                                                           \
  1113    do_name(     park_name,                                       "park")                                                \
       
  1114    do_signature(park_signature,                                  "(ZJ)V")                                               \
       
  1115   do_intrinsic(_unpark,                   sun_misc_Unsafe,        unpark_name, unpark_signature,                 F_RN)  \
       
  1116    do_name(     unpark_name,                                     "unpark")                                              \
       
  1117    do_alias(    unpark_signature,                               /*(LObject;)V*/ object_void_signature)                  \
  1082   do_intrinsic(_StringBuilder_void,   java_lang_StringBuilder, object_initializer_name, void_method_signature,     F_R)   \
  1118   do_intrinsic(_StringBuilder_void,   java_lang_StringBuilder, object_initializer_name, void_method_signature,     F_R)   \
  1083   do_intrinsic(_StringBuilder_int,    java_lang_StringBuilder, object_initializer_name, int_void_signature,        F_R)   \
  1119   do_intrinsic(_StringBuilder_int,    java_lang_StringBuilder, object_initializer_name, int_void_signature,        F_R)   \
  1084   do_intrinsic(_StringBuilder_String, java_lang_StringBuilder, object_initializer_name, string_void_signature,     F_R)   \
  1120   do_intrinsic(_StringBuilder_String, java_lang_StringBuilder, object_initializer_name, string_void_signature,     F_R)   \
  1085                                                                                                                           \
  1121                                                                                                                           \
  1086   do_intrinsic(_StringBuilder_append_char,   java_lang_StringBuilder, append_name, char_StringBuilder_signature,   F_R)   \
  1122   do_intrinsic(_StringBuilder_append_char,   java_lang_StringBuilder, append_name, char_StringBuilder_signature,   F_R)   \