Skip to content

Commit

Permalink
Micro-optimize level checking by inlining
Browse files Browse the repository at this point in the history
  • Loading branch information
gabime committed Nov 3, 2019
1 parent 3ee4f28 commit bf40855
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 12 deletions.
10 changes: 0 additions & 10 deletions include/spdlog/logger-inl.h
Expand Up @@ -64,16 +64,6 @@ SPDLOG_INLINE void swap(logger &a, logger &b)
a.swap(b);
}

SPDLOG_INLINE bool logger::should_log(level::level_enum msg_level) const
{
return msg_level >= level_.load(std::memory_order_relaxed);
}

SPDLOG_INLINE bool logger::should_backtrace() const
{
return tracer_.enabled();
}

SPDLOG_INLINE void logger::set_level(level::level_enum log_level)
{
level_.store(log_level);
Expand Down
10 changes: 8 additions & 2 deletions include/spdlog/logger.h
Expand Up @@ -299,10 +299,16 @@ class logger
#endif // SPDLOG_WCHAR_TO_UTF8_SUPPORT

// return true logging is enabled for the given level.
bool should_log(level::level_enum msg_level) const;
bool should_log(level::level_enum msg_level) const
{
return msg_level >= level_.load(std::memory_order_relaxed);
}

// return true if backtrace logging is enabled.
bool should_backtrace() const;
bool should_backtrace() const
{
return tracer_.enabled();
}

void set_level(level::level_enum log_level);

Expand Down

0 comments on commit bf40855

Please sign in to comment.