< prev index next >

src/share/vm/oops/arrayKlass.hpp

Print this page




 127 
 128   // JVMTI support
 129   jint jvmti_class_status() const;
 130 
 131   // CDS support - remove and restore oops from metadata. Oops are not shared.
 132   virtual void remove_unshareable_info();
 133   virtual void restore_unshareable_info(ClassLoaderData* loader_data, Handle protection_domain, TRAPS);
 134 
 135   // Printing
 136   void print_on(outputStream* st) const;
 137   void print_value_on(outputStream* st) const;
 138 
 139   void oop_print_on(oop obj, outputStream* st);
 140 
 141   // Verification
 142   void verify_on(outputStream* st);
 143 
 144   void oop_verify_on(oop obj, outputStream* st);
 145 };
 146 
































 147 #endif // SHARE_VM_OOPS_ARRAYKLASS_HPP


 127 
 128   // JVMTI support
 129   jint jvmti_class_status() const;
 130 
 131   // CDS support - remove and restore oops from metadata. Oops are not shared.
 132   virtual void remove_unshareable_info();
 133   virtual void restore_unshareable_info(ClassLoaderData* loader_data, Handle protection_domain, TRAPS);
 134 
 135   // Printing
 136   void print_on(outputStream* st) const;
 137   void print_value_on(outputStream* st) const;
 138 
 139   void oop_print_on(oop obj, outputStream* st);
 140 
 141   // Verification
 142   void verify_on(outputStream* st);
 143 
 144   void oop_verify_on(oop obj, outputStream* st);
 145 };
 146 
 147 // Array oop iteration macros for declarations.
 148 // Used to generate the declarations in the *ArrayKlass header files.
 149 
 150 #define OOP_OOP_ITERATE_DECL_RANGE(OopClosureType, nv_suffix)                                  \
 151   int oop_oop_iterate_range##nv_suffix(oop obj, OopClosureType* closure, int start, int end);
 152 
 153 #if INCLUDE_ALL_GCS
 154 // Named NO_BACKWARDS because the definition used by *ArrayKlass isn't reversed, see below.
 155 #define OOP_OOP_ITERATE_DECL_NO_BACKWARDS(OopClosureType, nv_suffix)           \
 156   int oop_oop_iterate_backwards##nv_suffix(oop obj, OopClosureType* closure);
 157 #endif // INCLUDE_ALL_GCS
 158 
 159 
 160 // Array oop iteration macros for definitions.
 161 // Used to generate the definitions in the *ArrayKlass.inline.hpp files.
 162 
 163 #define OOP_OOP_ITERATE_DEFN_RANGE(KlassType, OopClosureType, nv_suffix)                                 \
 164                                                                                                          \
 165 int KlassType::oop_oop_iterate_range##nv_suffix(oop obj, OopClosureType* closure, int start, int end) {  \
 166   return oop_oop_iterate_range<nvs_to_bool(nv_suffix)>(obj, closure, start, end);                        \
 167 }
 168 
 169 #if INCLUDE_ALL_GCS
 170 #define OOP_OOP_ITERATE_DEFN_NO_BACKWARDS(KlassType, OopClosureType, nv_suffix)          \
 171 int KlassType::oop_oop_iterate_backwards##nv_suffix(oop obj, OopClosureType* closure) {  \
 172   /* No reverse implementation ATM. */                                                   \
 173   return oop_oop_iterate<nvs_to_bool(nv_suffix)>(obj, closure);                          \
 174 }
 175 #else
 176 #define OOP_OOP_ITERATE_DEFN_NO_BACKWARDS(KlassType, OopClosureType, nv_suffix)
 177 #endif
 178 
 179 #endif // SHARE_VM_OOPS_ARRAYKLASS_HPP
< prev index next >