Commit 17619b44 authored by tqcq's avatar tqcq
Browse files

Feat add no instrucment function

parent 50955166
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -2,10 +2,11 @@
#define SLED_DEBUGGING_DEMANGLE_H
#pragma once

#include "sled/lang/attributes.h"
#include <string>

namespace sled {
bool Demangle(const char *mangled, char *out, size_t out_size);
std::string DemangleString(const char *mangled);
bool SLED_NO_INSTRUMENT_FUNCTION Demangle(const char *mangled, char *out, size_t out_size);
std::string SLED_NO_INSTRUMENT_FUNCTION DemangleString(const char *mangled);
}// namespace sled
#endif// SLED_DEBUGGING_DEMANGLE_H
+1 −0
Original line number Diff line number Diff line
#include "sled/debugging/symbolize.h"
#include "sled/lang/attributes.h"

#ifdef _WIN32
void
+3 −0
Original line number Diff line number Diff line
@@ -10,6 +10,7 @@ namespace sled {
namespace {

static std::string
SLED_NO_INSTRUMENT_FUNCTION
GetSymbolString(const std::string &backtrace_line)
{
    // Example Backtrace lines:
@@ -40,10 +41,12 @@ GetSymbolString(const std::string &backtrace_line)
}// namespace

void
SLED_NO_INSTRUMENT_FUNCTION
InitializeSymbolizer(const char *argv0)
{}

bool
SLED_NO_INSTRUMENT_FUNCTION
Symbolize(const void *pc, char *out, int out_size)
{
    if (out_size <= 0 || pc == nullptr) {
+2 −0
Original line number Diff line number Diff line
@@ -56,4 +56,6 @@
#define SLED_UNLOCK_FUNCTION(...) SLED_THREAD_ANNOTATION_ATTRIBUTE__(unlock_function(__VA_ARGS__))
#define SLED_ASSERT_EXCLUSIVE_LOCK(...) SLED_THREAD_ANNOTATION_ATTRIBUTE__(assert_exclusive_lock(__VA_ARGS__))

#define SLED_NO_INSTRUMENT_FUNCTION SLED_THREAD_ANNOTATION_ATTRIBUTE__(no_instrument_function)

#endif//  SLED_LANG_ATTRIBUTES_H