< prev index next >
src/share/vm/utilities/ticks.inline.hpp
Print this page
rev 8910 : full patch for jfr
@@ -1,7 +1,7 @@
/*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
@@ -25,73 +25,167 @@
#ifndef SHARE_VM_UTILITIES_TICKS_INLINE_HPP
#define SHARE_VM_UTILITIES_TICKS_INLINE_HPP
#include "utilities/ticks.hpp"
-inline Tickspan operator+(Tickspan lhs, const Tickspan& rhs) {
- lhs += rhs;
- return lhs;
+template <typename InstantType>
+inline TimeInterval<InstantType>& TimeInterval<InstantType>::operator+=(const TimeInterval<InstantType>& rhs) {
+ _interval += rhs._interval;
+ return *this;
}
-inline bool operator==(const Tickspan& lhs, const Tickspan& rhs) {
+template <typename InstantType>
+inline TimeInterval<InstantType>& TimeInterval<InstantType>::operator-=(const TimeInterval<InstantType>& rhs) {
+ _interval -= rhs._interval;
+ return *this;
+}
+
+template <typename InstantType>
+inline bool operator==(const TimeInterval<InstantType>& lhs, const TimeInterval<InstantType>& rhs) {
+ return lhs.value() == rhs.value();
+}
+
+template <typename InstantType>
+inline bool operator!=(const TimeInterval<InstantType>& lhs, const TimeInterval<InstantType>& rhs) {
+ return !operator==(lhs, rhs);
+}
+
+template <typename InstantType>
+inline bool operator<(const TimeInterval<InstantType>& lhs, const TimeInterval<InstantType>& rhs) {
+ return lhs.value() < rhs.value();
+}
+
+template <typename InstantType>
+inline bool operator>(const TimeInterval<InstantType>& lhs, const TimeInterval<InstantType>& rhs) {
+ return operator<(rhs, lhs);
+}
+
+template <typename InstantType>
+inline bool operator<=(const TimeInterval<InstantType>& lhs, const TimeInterval<InstantType>& rhs) {
+ return !operator>(lhs, rhs);
+}
+
+template <typename InstantType>
+inline bool operator>=(const TimeInterval<InstantType>& lhs, const TimeInterval<InstantType>& rhs) {
+ return !operator<(lhs, rhs);
+}
+
+template <typename InstantType>
+inline TimeInterval<InstantType> operator-(const InstantType& end, const InstantType& start) {
+ return TimeInterval<InstantType>(end, start);
+}
+
+inline TimeInstant& TimeInstant::operator+=(const TimeInterval<TimeInstant>& rhs) {
+ _instant += rhs.value();
+ return *this;
+}
+
+inline TimeInstant& TimeInstant::operator-=(const TimeInterval<TimeInstant>& rhs) {
+ _instant -= rhs.value();
+ return *this;
+}
+
+inline bool operator==(const TimeInstant& lhs, const TimeInstant& rhs) {
return lhs.value() == rhs.value();
}
-inline bool operator!=(const Tickspan& lhs, const Tickspan& rhs) {
- return !operator==(lhs,rhs);
+inline bool operator!=(const TimeInstant& lhs, const TimeInstant& rhs) {
+ return !operator==(lhs, rhs);
}
-inline bool operator<(const Tickspan& lhs, const Tickspan& rhs) {
+inline bool operator<(const TimeInstant& lhs, const TimeInstant& rhs) {
return lhs.value() < rhs.value();
}
-inline bool operator>(const Tickspan& lhs, const Tickspan& rhs) {
- return operator<(rhs,lhs);
+inline bool operator>(const TimeInstant& lhs, const TimeInstant& rhs) {
+ return operator<(rhs, lhs);
+}
+
+inline bool operator<=(const TimeInstant& lhs, const TimeInstant& rhs) {
+ return !operator>(lhs, rhs);
}
-inline bool operator<=(const Tickspan& lhs, const Tickspan& rhs) {
- return !operator>(lhs,rhs);
+inline bool operator>=(const TimeInstant& lhs, const TimeInstant& rhs) {
+ return !operator<(lhs, rhs);
}
-inline bool operator>=(const Tickspan& lhs, const Tickspan& rhs) {
- return !operator<(lhs,rhs);
+inline TimeInstant operator+(const TimeInstant& lhs, const TimeInterval<TimeInstant>& span) {
+ TimeInstant t(lhs);
+ t += span;
+ return t;
}
-inline Ticks operator+(Ticks lhs, const Tickspan& span) {
- lhs += span;
- return lhs;
+inline TimeInstant operator-(const TimeInstant& lhs, const TimeInterval<TimeInstant>& span) {
+ TimeInstant t(lhs);
+ t -= span;
+ return t;
}
-inline Ticks operator-(Ticks lhs, const Tickspan& span) {
- lhs -= span;
- return lhs;
+// TraceElapsedInterval
+
+inline bool operator==(const TraceElapsedInterval& lhs, const TraceElapsedInterval& rhs) {
+ return lhs.value() == rhs.value();
+}
+
+inline bool operator!=(const TraceElapsedInterval& lhs, const TraceElapsedInterval& rhs) {
+ return !operator==(lhs, rhs);
+}
+
+inline bool operator<(const TraceElapsedInterval& lhs, const TraceElapsedInterval& rhs) {
+ return lhs.value() < rhs.value();
+}
+
+inline bool operator>(const TraceElapsedInterval& lhs, const TraceElapsedInterval& rhs) {
+ return operator<(rhs, lhs);
+}
+
+inline bool operator<=(const TraceElapsedInterval& lhs, const TraceElapsedInterval& rhs) {
+ return !operator>(lhs, rhs);
+}
+
+inline bool operator>=(const TraceElapsedInterval& lhs, const TraceElapsedInterval& rhs) {
+ return !operator<(lhs, rhs);
+}
+
+inline TraceElapsedInterval operator-(const TraceElapsedCounter& end, const TraceElapsedCounter& start) {
+ return TraceElapsedInterval(end, start);
+}
+
+// TraceElapsedCounter
+
+inline TraceElapsedCounter operator+(const TraceElapsedCounter& lhs, const TraceElapsedInterval& span) {
+ TraceElapsedCounter t(lhs);
+ t += span;
+ return t;
}
-inline Tickspan operator-(const Ticks& end, const Ticks& start) {
- return Tickspan(end, start);
+inline TraceElapsedCounter operator-(const TraceElapsedCounter& lhs, const TraceElapsedInterval& span) {
+ TraceElapsedCounter t(lhs);
+ t -= span;
+ return t;
}
-inline bool operator==(const Ticks& lhs, const Ticks& rhs) {
+inline bool operator==(const TraceElapsedCounter& lhs, const TraceElapsedCounter& rhs) {
return lhs.value() == rhs.value();
}
-inline bool operator!=(const Ticks& lhs, const Ticks& rhs) {
- return !operator==(lhs,rhs);
+inline bool operator!=(const TraceElapsedCounter& lhs, const TraceElapsedCounter& rhs) {
+ return !operator==(lhs, rhs);
}
-inline bool operator<(const Ticks& lhs, const Ticks& rhs) {
+inline bool operator<(const TraceElapsedCounter& lhs, const TraceElapsedCounter& rhs) {
return lhs.value() < rhs.value();
}
-inline bool operator>(const Ticks& lhs, const Ticks& rhs) {
- return operator<(rhs,lhs);
+inline bool operator>(const TraceElapsedCounter& lhs, const TraceElapsedCounter& rhs) {
+ return operator<(rhs, lhs);
}
-inline bool operator<=(const Ticks& lhs, const Ticks& rhs) {
- return !operator>(lhs,rhs);
+inline bool operator<=(const TraceElapsedCounter& lhs, const TraceElapsedCounter& rhs) {
+ return !operator>(lhs, rhs);
}
-inline bool operator>=(const Ticks& lhs, const Ticks& rhs) {
- return !operator<(lhs,rhs);
+inline bool operator>=(const TraceElapsedCounter& lhs, const TraceElapsedCounter& rhs) {
+ return !operator<(lhs, rhs);
}
#endif // SHARE_VM_UTILITIES_TICKS_INLINE_HPP
< prev index next >