< prev index next >

src/hotspot/share/gc/shared/specialized_oop_closures.hpp

Print this page




  63   SERIALGC_ONLY(SPECIALIZED_OOP_OOP_ITERATE_CLOSURES_S(f))        \
  64      CMSGC_ONLY(SPECIALIZED_OOP_OOP_ITERATE_CLOSURES_P(f))
  65 
  66 #define SPECIALIZED_OOP_OOP_ITERATE_CLOSURES_2(f)                 \
  67   SERIALGC_ONLY(SPECIALIZED_OOP_OOP_ITERATE_CLOSURES_MS(f))       \
  68      CMSGC_ONLY(SPECIALIZED_OOP_OOP_ITERATE_CLOSURES_CMS(f))      \
  69       G1GC_ONLY(SPECIALIZED_OOP_OOP_ITERATE_CLOSURES_G1(f))       \
  70       G1GC_ONLY(SPECIALIZED_OOP_OOP_ITERATE_CLOSURES_G1FULL(f))
  71 
  72 // We separate these out, because sometime the general one has
  73 // a different definition from the specialized ones, and sometimes it
  74 // doesn't.
  75 
  76 #define ALL_OOP_OOP_ITERATE_CLOSURES_1(f)                         \
  77   f(ExtendedOopClosure,_v)                                        \
  78   SPECIALIZED_OOP_OOP_ITERATE_CLOSURES_1(f)
  79 
  80 #define ALL_OOP_OOP_ITERATE_CLOSURES_2(f)                         \
  81   SPECIALIZED_OOP_OOP_ITERATE_CLOSURES_2(f)
  82 
  83 // This macro applies an argument macro to all OopClosures for which we
  84 // want specialized bodies of a family of methods related to
  85 // "par_oop_iterate".  The arguments to f are the same as above.
  86 // The "root_class" is the most general class to define; this may be
  87 // "OopClosure" in some applications and "OopsInGenClosure" in others.
  88 
  89 
  90 #define ALL_PAR_OOP_ITERATE_CLOSURES(f)                           \
  91   f(ExtendedOopClosure,_v)                                        \
  92   CMSGC_ONLY(SPECIALIZED_PAR_OOP_ITERATE_CLOSURES(f))
  93 
  94 #endif // SHARE_VM_GC_SHARED_SPECIALIZED_OOP_CLOSURES_HPP


  63   SERIALGC_ONLY(SPECIALIZED_OOP_OOP_ITERATE_CLOSURES_S(f))        \
  64      CMSGC_ONLY(SPECIALIZED_OOP_OOP_ITERATE_CLOSURES_P(f))
  65 
  66 #define SPECIALIZED_OOP_OOP_ITERATE_CLOSURES_2(f)                 \
  67   SERIALGC_ONLY(SPECIALIZED_OOP_OOP_ITERATE_CLOSURES_MS(f))       \
  68      CMSGC_ONLY(SPECIALIZED_OOP_OOP_ITERATE_CLOSURES_CMS(f))      \
  69       G1GC_ONLY(SPECIALIZED_OOP_OOP_ITERATE_CLOSURES_G1(f))       \
  70       G1GC_ONLY(SPECIALIZED_OOP_OOP_ITERATE_CLOSURES_G1FULL(f))
  71 
  72 // We separate these out, because sometime the general one has
  73 // a different definition from the specialized ones, and sometimes it
  74 // doesn't.
  75 
  76 #define ALL_OOP_OOP_ITERATE_CLOSURES_1(f)                         \
  77   f(ExtendedOopClosure,_v)                                        \
  78   SPECIALIZED_OOP_OOP_ITERATE_CLOSURES_1(f)
  79 
  80 #define ALL_OOP_OOP_ITERATE_CLOSURES_2(f)                         \
  81   SPECIALIZED_OOP_OOP_ITERATE_CLOSURES_2(f)
  82 











  83 #endif // SHARE_VM_GC_SHARED_SPECIALIZED_OOP_CLOSURES_HPP
< prev index next >