< prev index next >

src/hotspot/share/classfile/vmSymbols.hpp

Print this page
rev 49509 : [vector] Intrinsic support for resize


1470    do_name(vector_test_name, "test")                                                                                                           \
1471                                                                                                                                                \
1472   do_intrinsic(_VectorBlend, jdk_incubator_vector_VectorIntrinsics, vector_blend_name, vector_blend_sig, F_S)                                  \
1473    do_signature(vector_blend_sig, "(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/Class;I"                                                      \
1474                                    "Ljdk/incubator/vector/Vector;Ljdk/incubator/vector/Vector;Ljdk/incubator/vector/Vector$Mask;"              \
1475                                    "Ljdk/incubator/vector/VectorIntrinsics$VectorBlendOp;)Ljdk/incubator/vector/Vector;")                      \
1476    do_name(vector_blend_name, "blend")                                                                                                         \
1477                                                                                                                                                \
1478   do_intrinsic(_VectorCompare, jdk_incubator_vector_VectorIntrinsics, vector_compare_name, vector_compare_sig, F_S)                            \
1479    do_signature(vector_compare_sig, "(ILjava/lang/Class;Ljava/lang/Class;Ljava/lang/Class;I"                                                   \
1480                                     "Ljdk/incubator/vector/Vector;Ljdk/incubator/vector/Vector;"                                               \
1481                                     "Ljdk/incubator/vector/VectorIntrinsics$VectorCompareOp;)Ljdk/incubator/vector/Vector$Mask;")              \
1482    do_name(vector_compare_name, "compare")                                                                                                     \
1483                                                                                                                                                \
1484   do_intrinsic(_VectorBroadcastInt, jdk_incubator_vector_VectorIntrinsics, vector_broadcast_int_name, vector_broadcast_int_sig, F_S)           \
1485    do_signature(vector_broadcast_int_sig, "(ILjava/lang/Class;Ljava/lang/Class;I"                                                              \
1486                                           "Ljdk/incubator/vector/Vector;I"                                                                     \
1487                                           "Ljdk/incubator/vector/VectorIntrinsics$VectorBroadcastIntOp;)Ljdk/incubator/vector/Vector;")        \
1488    do_name(vector_broadcast_int_name, "broadcastInt")                                                                                          \
1489                                                                                                                                                \
1490   do_intrinsic(_VectorRebracket, jdk_incubator_vector_VectorIntrinsics, vector_rebracket_name, vector_rebracket_sig, F_S)                      \
1491    do_signature(vector_rebracket_sig, "(Ljava/lang/Class;Ljava/lang/Class;I"                                                                   \
1492                                       "Ljava/lang/Class;Ljava/lang/Object;"                                                                    \
1493                                       "Ljdk/incubator/vector/VectorIntrinsics$VectorRebracketOp;)Ljava/lang/Object;")                          \
1494    do_name(vector_rebracket_name, "rebracket")                                                                                                 \
1495                                                                                                                                                \
1496   do_intrinsic(_VectorRebox, jdk_incubator_vector_VectorIntrinsics, vector_rebox_name, vector_rebox_sig, F_S)                                  \
1497    do_alias(vector_rebox_sig, object_object_signature)                                                                                         \
1498    do_name(vector_rebox_name, "maybeRebox")                                                                                                    \
1499                                                                                                                                                \
1500                                                                                                                                \
1501    /* (2) Bytecode intrinsics                                                                        */                        \
1502                                                                                                                                \
1503   do_intrinsic(_park,                     jdk_internal_misc_Unsafe,     park_name, park_signature,                     F_R)    \
1504    do_name(     park_name,                                              "park")                                                \
1505    do_signature(park_signature,                                         "(ZJ)V")                                               \
1506   do_intrinsic(_unpark,                   jdk_internal_misc_Unsafe,     unpark_name, unpark_signature,                 F_R)    \
1507    do_name(     unpark_name,                                            "unpark")                                              \
1508    do_alias(    unpark_signature,                                       /*(LObject;)V*/ object_void_signature)                 \
1509                                                                                                                                \
1510   do_intrinsic(_StringBuilder_void,   java_lang_StringBuilder, object_initializer_name, void_method_signature,     F_R)   \
1511   do_intrinsic(_StringBuilder_int,    java_lang_StringBuilder, object_initializer_name, int_void_signature,        F_R)   \
1512   do_intrinsic(_StringBuilder_String, java_lang_StringBuilder, object_initializer_name, string_void_signature,     F_R)   \
1513                                                                                                                           \
1514   do_intrinsic(_StringBuilder_append_char,   java_lang_StringBuilder, append_name, char_StringBuilder_signature,   F_R)   \


1666   static const char* name_for(SID sid);
1667 #endif //PRODUCT
1668 };
1669 
1670 // VM Intrinsic ID's uniquely identify some very special methods
1671 class vmIntrinsics: AllStatic {
1672   friend class vmSymbols;
1673   friend class ciObjectFactory;
1674 
1675  public:
1676   // Accessing
1677   enum ID {
1678     _none = 0,                      // not an intrinsic (default answer)
1679 
1680     #define VM_INTRINSIC_ENUM(id, klass, name, sig, flags)  id,
1681     VM_INTRINSICS_DO(VM_INTRINSIC_ENUM,
1682                      VM_SYMBOL_IGNORE, VM_SYMBOL_IGNORE, VM_SYMBOL_IGNORE, VM_ALIAS_IGNORE)
1683     #undef VM_INTRINSIC_ENUM
1684 
1685     ID_LIMIT,
1686     LAST_COMPILER_INLINE = _VectorRebracket,
1687     FIRST_VECTOR_API     = _VectorUnaryOp,
1688     LAST_VECTOR_API      = _VectorRebox,
1689     FIRST_MH_SIG_POLY    = _invokeGeneric,
1690     FIRST_MH_STATIC      = _linkToVirtual,
1691     LAST_MH_SIG_POLY     = _linkToInterface,
1692 
1693     FIRST_ID = _none + 1
1694   };
1695 
1696   enum Flags {
1697     // AccessFlags syndromes relevant to intrinsics.
1698     F_none = 0,
1699     F_R,                        // !static ?native !synchronized (R="regular")
1700     F_S,                        //  static ?native !synchronized
1701     F_Y,                        // !static ?native  synchronized
1702     F_RN,                       // !static  native !synchronized
1703     F_SN,                       //  static  native !synchronized
1704     F_RNY,                      // !static  native  synchronized
1705 
1706     FLAG_LIMIT




1470    do_name(vector_test_name, "test")                                                                                                           \
1471                                                                                                                                                \
1472   do_intrinsic(_VectorBlend, jdk_incubator_vector_VectorIntrinsics, vector_blend_name, vector_blend_sig, F_S)                                  \
1473    do_signature(vector_blend_sig, "(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/Class;I"                                                      \
1474                                    "Ljdk/incubator/vector/Vector;Ljdk/incubator/vector/Vector;Ljdk/incubator/vector/Vector$Mask;"              \
1475                                    "Ljdk/incubator/vector/VectorIntrinsics$VectorBlendOp;)Ljdk/incubator/vector/Vector;")                      \
1476    do_name(vector_blend_name, "blend")                                                                                                         \
1477                                                                                                                                                \
1478   do_intrinsic(_VectorCompare, jdk_incubator_vector_VectorIntrinsics, vector_compare_name, vector_compare_sig, F_S)                            \
1479    do_signature(vector_compare_sig, "(ILjava/lang/Class;Ljava/lang/Class;Ljava/lang/Class;I"                                                   \
1480                                     "Ljdk/incubator/vector/Vector;Ljdk/incubator/vector/Vector;"                                               \
1481                                     "Ljdk/incubator/vector/VectorIntrinsics$VectorCompareOp;)Ljdk/incubator/vector/Vector$Mask;")              \
1482    do_name(vector_compare_name, "compare")                                                                                                     \
1483                                                                                                                                                \
1484   do_intrinsic(_VectorBroadcastInt, jdk_incubator_vector_VectorIntrinsics, vector_broadcast_int_name, vector_broadcast_int_sig, F_S)           \
1485    do_signature(vector_broadcast_int_sig, "(ILjava/lang/Class;Ljava/lang/Class;I"                                                              \
1486                                           "Ljdk/incubator/vector/Vector;I"                                                                     \
1487                                           "Ljdk/incubator/vector/VectorIntrinsics$VectorBroadcastIntOp;)Ljdk/incubator/vector/Vector;")        \
1488    do_name(vector_broadcast_int_name, "broadcastInt")                                                                                          \
1489                                                                                                                                                \
1490   do_intrinsic(_VectorReinterpret, jdk_incubator_vector_VectorIntrinsics, vector_reinterpret_name, vector_reinterpret_sig, F_S)                      \
1491    do_signature(vector_reinterpret_sig, "(Ljava/lang/Class;Ljava/lang/Class;I"                                                                   \
1492                                       "Ljava/lang/Class;ILjava/lang/Object;"                                                                    \
1493                                       "Ljdk/incubator/vector/VectorIntrinsics$VectorReinterpretOp;)Ljava/lang/Object;")                          \
1494    do_name(vector_reinterpret_name, "reinterpret")                                                                                                 \
1495                                                                                                                                                \
1496   do_intrinsic(_VectorRebox, jdk_incubator_vector_VectorIntrinsics, vector_rebox_name, vector_rebox_sig, F_S)                                  \
1497    do_alias(vector_rebox_sig, object_object_signature)                                                                                         \
1498    do_name(vector_rebox_name, "maybeRebox")                                                                                                    \
1499                                                                                                                                                \
1500                                                                                                                                \
1501    /* (2) Bytecode intrinsics                                                                        */                        \
1502                                                                                                                                \
1503   do_intrinsic(_park,                     jdk_internal_misc_Unsafe,     park_name, park_signature,                     F_R)    \
1504    do_name(     park_name,                                              "park")                                                \
1505    do_signature(park_signature,                                         "(ZJ)V")                                               \
1506   do_intrinsic(_unpark,                   jdk_internal_misc_Unsafe,     unpark_name, unpark_signature,                 F_R)    \
1507    do_name(     unpark_name,                                            "unpark")                                              \
1508    do_alias(    unpark_signature,                                       /*(LObject;)V*/ object_void_signature)                 \
1509                                                                                                                                \
1510   do_intrinsic(_StringBuilder_void,   java_lang_StringBuilder, object_initializer_name, void_method_signature,     F_R)   \
1511   do_intrinsic(_StringBuilder_int,    java_lang_StringBuilder, object_initializer_name, int_void_signature,        F_R)   \
1512   do_intrinsic(_StringBuilder_String, java_lang_StringBuilder, object_initializer_name, string_void_signature,     F_R)   \
1513                                                                                                                           \
1514   do_intrinsic(_StringBuilder_append_char,   java_lang_StringBuilder, append_name, char_StringBuilder_signature,   F_R)   \


1666   static const char* name_for(SID sid);
1667 #endif //PRODUCT
1668 };
1669 
1670 // VM Intrinsic ID's uniquely identify some very special methods
1671 class vmIntrinsics: AllStatic {
1672   friend class vmSymbols;
1673   friend class ciObjectFactory;
1674 
1675  public:
1676   // Accessing
1677   enum ID {
1678     _none = 0,                      // not an intrinsic (default answer)
1679 
1680     #define VM_INTRINSIC_ENUM(id, klass, name, sig, flags)  id,
1681     VM_INTRINSICS_DO(VM_INTRINSIC_ENUM,
1682                      VM_SYMBOL_IGNORE, VM_SYMBOL_IGNORE, VM_SYMBOL_IGNORE, VM_ALIAS_IGNORE)
1683     #undef VM_INTRINSIC_ENUM
1684 
1685     ID_LIMIT,
1686     LAST_COMPILER_INLINE = _VectorReinterpret,
1687     FIRST_VECTOR_API     = _VectorUnaryOp,
1688     LAST_VECTOR_API      = _VectorRebox,
1689     FIRST_MH_SIG_POLY    = _invokeGeneric,
1690     FIRST_MH_STATIC      = _linkToVirtual,
1691     LAST_MH_SIG_POLY     = _linkToInterface,
1692 
1693     FIRST_ID = _none + 1
1694   };
1695 
1696   enum Flags {
1697     // AccessFlags syndromes relevant to intrinsics.
1698     F_none = 0,
1699     F_R,                        // !static ?native !synchronized (R="regular")
1700     F_S,                        //  static ?native !synchronized
1701     F_Y,                        // !static ?native  synchronized
1702     F_RN,                       // !static  native !synchronized
1703     F_SN,                       //  static  native !synchronized
1704     F_RNY,                      // !static  native  synchronized
1705 
1706     FLAG_LIMIT


< prev index next >