< prev index next >

src/hotspot/share/oops/constMethodFlags.hpp

Print this page

 43    flag(has_checked_exceptions    , 1 << 1) \
 44    flag(has_localvariable_table   , 1 << 2) \
 45    flag(has_exception_table       , 1 << 3) \
 46    flag(has_generic_signature     , 1 << 4) \
 47    flag(has_method_parameters     , 1 << 5) \
 48    flag(is_overpass               , 1 << 6) \
 49    flag(has_method_annotations    , 1 << 7) \
 50    flag(has_parameter_annotations , 1 << 8) \
 51    flag(has_type_annotations      , 1 << 9) \
 52    flag(has_default_annotations   , 1 << 10) \
 53    flag(caller_sensitive          , 1 << 11) \
 54    flag(is_hidden                 , 1 << 12) \
 55    flag(has_injected_profile      , 1 << 13) \
 56    flag(intrinsic_candidate       , 1 << 14) \
 57    flag(reserved_stack_access     , 1 << 15) \
 58    flag(is_scoped                 , 1 << 16) \
 59    flag(changes_current_thread    , 1 << 17) \
 60    flag(jvmti_mount_transition    , 1 << 18) \
 61    flag(deprecated                , 1 << 19) \
 62    flag(deprecated_for_removal    , 1 << 20) \





 63    /* end of list */
 64 
 65 #define CM_FLAGS_ENUM_NAME(name, value)    _misc_##name = value,
 66   enum {
 67     CM_FLAGS_DO(CM_FLAGS_ENUM_NAME)
 68   };
 69 #undef CM_FLAGS_ENUM_NAME
 70 
 71   // These flags are write-once before the class is published and then read-only so don't require atomic updates.
 72   u4 _flags;
 73 
 74  public:
 75 
 76   ConstMethodFlags() : _flags(0) {}
 77 
 78   // Create getters and setters for the flag values.
 79 #define CM_FLAGS_GET_SET(name, ignore)          \
 80   bool name() const { return (_flags & _misc_##name) != 0; } \
 81   void set_##name() {         \
 82     _flags |= _misc_##name;  \
 83   }
 84   CM_FLAGS_DO(CM_FLAGS_GET_SET)
 85 #undef CM_FLAGS_GET_SET
 86 




 87   int as_int() const { return _flags; }
 88   void print_on(outputStream* st) const;
 89 };
 90 
 91 #endif // SHARE_OOPS_CONSTMETHODFLAGS_HPP

 43    flag(has_checked_exceptions    , 1 << 1) \
 44    flag(has_localvariable_table   , 1 << 2) \
 45    flag(has_exception_table       , 1 << 3) \
 46    flag(has_generic_signature     , 1 << 4) \
 47    flag(has_method_parameters     , 1 << 5) \
 48    flag(is_overpass               , 1 << 6) \
 49    flag(has_method_annotations    , 1 << 7) \
 50    flag(has_parameter_annotations , 1 << 8) \
 51    flag(has_type_annotations      , 1 << 9) \
 52    flag(has_default_annotations   , 1 << 10) \
 53    flag(caller_sensitive          , 1 << 11) \
 54    flag(is_hidden                 , 1 << 12) \
 55    flag(has_injected_profile      , 1 << 13) \
 56    flag(intrinsic_candidate       , 1 << 14) \
 57    flag(reserved_stack_access     , 1 << 15) \
 58    flag(is_scoped                 , 1 << 16) \
 59    flag(changes_current_thread    , 1 << 17) \
 60    flag(jvmti_mount_transition    , 1 << 18) \
 61    flag(deprecated                , 1 << 19) \
 62    flag(deprecated_for_removal    , 1 << 20) \
 63    flag(has_scalarized_args       , 1 << 21) \
 64    flag(has_scalarized_return     , 1 << 22) \
 65    flag(c1_needs_stack_repair     , 1 << 23) \
 66    flag(c2_needs_stack_repair     , 1 << 24) \
 67    flag(mismatch                  , 1 << 25) \
 68    /* end of list */
 69 
 70 #define CM_FLAGS_ENUM_NAME(name, value)    _misc_##name = value,
 71   enum {
 72     CM_FLAGS_DO(CM_FLAGS_ENUM_NAME)
 73   };
 74 #undef CM_FLAGS_ENUM_NAME
 75 
 76   // These flags are write-once before the class is published and then read-only so don't require atomic updates.
 77   u4 _flags;
 78 
 79  public:
 80 
 81   ConstMethodFlags() : _flags(0) {}
 82 
 83   // Create getters and setters for the flag values.
 84 #define CM_FLAGS_GET_SET(name, ignore)          \
 85   bool name() const { return (_flags & _misc_##name) != 0; } \
 86   void set_##name() {         \
 87     _flags |= _misc_##name;  \
 88   }
 89   CM_FLAGS_DO(CM_FLAGS_GET_SET)
 90 #undef CM_FLAGS_GET_SET
 91 
 92   static u4 has_scalarized_return_flag() {
 93     return _misc_has_scalarized_return;
 94   }
 95 
 96   int as_int() const { return _flags; }
 97   void print_on(outputStream* st) const;
 98 };
 99 
100 #endif // SHARE_OOPS_CONSTMETHODFLAGS_HPP
< prev index next >