< prev index next >

src/hotspot/share/jfr/recorder/checkpoint/types/traceid/jfrTraceId.inline.hpp

Print this page




  73   assert(method != NULL, "invariant");
  74   SET_METHOD_FLAG_USED_THIS_EPOCH(method);
  75 
  76   SET_METHOD_AND_CLASS_USED_THIS_EPOCH(klass);
  77   assert(METHOD_AND_CLASS_USED_THIS_EPOCH(klass), "invariant");
  78   return (METHOD_ID(klass, method));
  79 }
  80 
  81 inline traceid JfrTraceId::use(const ModuleEntry* module) {
  82   assert(module != NULL, "invariant");
  83   return set_used_and_get(module);
  84 }
  85 
  86 inline traceid JfrTraceId::use(const PackageEntry* package) {
  87   assert(package != NULL, "invariant");
  88   return set_used_and_get(package);
  89 }
  90 
  91 inline traceid JfrTraceId::use(const ClassLoaderData* cld) {
  92   assert(cld != NULL, "invariant");
  93   return cld->is_unsafe_anonymous() ? 0 : set_used_and_get(cld);
  94 }
  95 
  96 inline void JfrTraceId::set_leakp(const Method* method) {
  97   assert(method != NULL, "invariant");
  98   const Klass* const klass = method->method_holder();
  99   assert(klass != NULL, "invariant");
 100   assert(METHOD_AND_CLASS_USED_THIS_EPOCH(klass), "invariant");
 101   assert(METHOD_FLAG_USED_THIS_EPOCH(method), "invariant");
 102   SET_LEAKP(klass);
 103   SET_METHOD_LEAKP(method);
 104 }
 105 
 106 inline bool JfrTraceId::in_visible_set(const Klass* klass) {
 107   assert(klass != NULL, "invariant");
 108   assert(((JavaThread*)Thread::current())->thread_state() == _thread_in_vm, "invariant");
 109   return (IS_JDK_JFR_EVENT_SUBKLASS(klass) && !klass->is_abstract()) || IS_EVENT_HOST_KLASS(klass);
 110 }
 111 
 112 inline bool JfrTraceId::is_jdk_jfr_event(const Klass* k) {
 113   assert(k != NULL, "invariant");




  73   assert(method != NULL, "invariant");
  74   SET_METHOD_FLAG_USED_THIS_EPOCH(method);
  75 
  76   SET_METHOD_AND_CLASS_USED_THIS_EPOCH(klass);
  77   assert(METHOD_AND_CLASS_USED_THIS_EPOCH(klass), "invariant");
  78   return (METHOD_ID(klass, method));
  79 }
  80 
  81 inline traceid JfrTraceId::use(const ModuleEntry* module) {
  82   assert(module != NULL, "invariant");
  83   return set_used_and_get(module);
  84 }
  85 
  86 inline traceid JfrTraceId::use(const PackageEntry* package) {
  87   assert(package != NULL, "invariant");
  88   return set_used_and_get(package);
  89 }
  90 
  91 inline traceid JfrTraceId::use(const ClassLoaderData* cld) {
  92   assert(cld != NULL, "invariant");
  93   return cld->is_shortlived() ? 0 : set_used_and_get(cld);
  94 }
  95 
  96 inline void JfrTraceId::set_leakp(const Method* method) {
  97   assert(method != NULL, "invariant");
  98   const Klass* const klass = method->method_holder();
  99   assert(klass != NULL, "invariant");
 100   assert(METHOD_AND_CLASS_USED_THIS_EPOCH(klass), "invariant");
 101   assert(METHOD_FLAG_USED_THIS_EPOCH(method), "invariant");
 102   SET_LEAKP(klass);
 103   SET_METHOD_LEAKP(method);
 104 }
 105 
 106 inline bool JfrTraceId::in_visible_set(const Klass* klass) {
 107   assert(klass != NULL, "invariant");
 108   assert(((JavaThread*)Thread::current())->thread_state() == _thread_in_vm, "invariant");
 109   return (IS_JDK_JFR_EVENT_SUBKLASS(klass) && !klass->is_abstract()) || IS_EVENT_HOST_KLASS(klass);
 110 }
 111 
 112 inline bool JfrTraceId::is_jdk_jfr_event(const Klass* k) {
 113   assert(k != NULL, "invariant");


< prev index next >