src/hotspot/share/jfr/recorder/checkpoint/types/traceid/jfrTraceId.inline.hpp
branchJEP-349-branch
changeset 57874 cd496c5a3823
parent 57873 68134337dbf8
child 57902 f6502e486572
--- a/src/hotspot/share/jfr/recorder/checkpoint/types/traceid/jfrTraceId.inline.hpp	Sun Aug 25 15:13:16 2019 +0200
+++ b/src/hotspot/share/jfr/recorder/checkpoint/types/traceid/jfrTraceId.inline.hpp	Sun Aug 25 19:09:22 2019 +0200
@@ -58,11 +58,12 @@
 
 inline traceid JfrTraceId::use(const Klass* klass) {
   assert(klass != NULL, "invariant");
-  const traceid id = set_used_and_get(klass);
-  if (IS_NOT_SERIALIZED(klass)) {
+  if (SHOULD_TAG(klass)) {
     JfrTraceIdEpoch::set_klass_tagged_in_epoch();
+    return set_used_and_get(klass);
   }
-  return id;
+  assert(USED_THIS_EPOCH(klass), "invariant");
+  return TRACE_ID(klass);
 }
 
 inline traceid JfrTraceId::use(const Method* method) {
@@ -74,11 +75,11 @@
   assert(klass != NULL, "invariant");
   assert(method != NULL, "invariant");
   SET_METHOD_FLAG_USED_THIS_EPOCH(method);
-  SET_METHOD_AND_CLASS_USED_THIS_EPOCH(klass);
+  if (SHOULD_TAG_KLASS_METHOD(klass)) {
+    JfrTraceIdEpoch::set_klass_tagged_in_epoch();
+    SET_METHOD_AND_CLASS_USED_THIS_EPOCH(klass);
+  }
   assert(METHOD_AND_CLASS_USED_THIS_EPOCH(klass), "invariant");
-  if (IS_NOT_SERIALIZED(klass)) {
-    JfrTraceIdEpoch::set_klass_tagged_in_epoch();
-  }
   return (METHOD_ID(klass, method));
 }