summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Lioncash2019-03-02 14:28:58 -0500
committerGravatar Lioncash2019-03-02 14:44:24 -0500
commitf8f1ff0b4f79a6c8807c3bca71e9a7a3ec4bff69 (patch)
treed6da2afbfecd91459070227a31010ab37bb36e20
parentlogging/backend: Move CreateEntry into the Impl class (diff)
downloadyuzu-f8f1ff0b4f79a6c8807c3bca71e9a7a3ec4bff69.tar.gz
yuzu-f8f1ff0b4f79a6c8807c3bca71e9a7a3ec4bff69.tar.xz
yuzu-f8f1ff0b4f79a6c8807c3bca71e9a7a3ec4bff69.zip
logging/backend: Make time_origin a class variable instead of a local static
Moves local global state into the Impl class itself and initializes it at the creation of the instance instead of in the function. This makes it nicer for weakly-ordered architectures, given the CreateEntry() class won't need to have atomic loads executed for each individual call to the CreateEntry class.
-rw-r--r--src/common/logging/backend.cpp3
1 files changed, 1 insertions, 2 deletions
diff --git a/src/common/logging/backend.cpp b/src/common/logging/backend.cpp
index 555addb95..4462ff3fb 100644
--- a/src/common/logging/backend.cpp
+++ b/src/common/logging/backend.cpp
@@ -115,8 +115,6 @@ private:
115 using std::chrono::duration_cast; 115 using std::chrono::duration_cast;
116 using std::chrono::steady_clock; 116 using std::chrono::steady_clock;
117 117
118 static steady_clock::time_point time_origin = steady_clock::now();
119
120 Entry entry; 118 Entry entry;
121 entry.timestamp = 119 entry.timestamp =
122 duration_cast<std::chrono::microseconds>(steady_clock::now() - time_origin); 120 duration_cast<std::chrono::microseconds>(steady_clock::now() - time_origin);
@@ -135,6 +133,7 @@ private:
135 std::vector<std::unique_ptr<Backend>> backends; 133 std::vector<std::unique_ptr<Backend>> backends;
136 Common::MPSCQueue<Log::Entry> message_queue; 134 Common::MPSCQueue<Log::Entry> message_queue;
137 Filter filter; 135 Filter filter;
136 std::chrono::steady_clock::time_point time_origin{std::chrono::steady_clock::now()};
138}; 137};
139 138
140void ConsoleBackend::Write(const Entry& entry) { 139void ConsoleBackend::Write(const Entry& entry) {