Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1056)

Unified Diff: third_party/WebKit/Source/platform/exported/WebTraceLocation.cpp

Issue 2137013002: Make WebTraceLocation be an alias of tracked_objects::Location (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: +#include <intrin.h> Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/platform/exported/WebTraceLocation.cpp
diff --git a/third_party/WebKit/Source/platform/exported/WebTraceLocation.cpp b/third_party/WebKit/Source/platform/exported/WebTraceLocation.cpp
index 33517b360839080998f89a2522c494b6639d0453..c5dd479ffcb8a6346c006e649f67179d6be9b008 100644
--- a/third_party/WebKit/Source/platform/exported/WebTraceLocation.cpp
+++ b/third_party/WebKit/Source/platform/exported/WebTraceLocation.cpp
@@ -4,16 +4,27 @@
#include "public/platform/WebTraceLocation.h"
+#include "wtf/Compiler.h"
+#include "wtf/build_config.h"
+
+#if OS(WIN)
+#include <intrin.h>
+#endif
+
namespace blink {
WebTraceLocation::WebTraceLocation()
: m_functionName("unknown")
, m_fileName("unknown")
+ , m_lineNumber(-1)
+ , m_programCounter(nullptr)
{ }
-WebTraceLocation::WebTraceLocation(const char* functionName, const char* fileName)
+WebTraceLocation::WebTraceLocation(const char* functionName, const char* fileName, int lineNumber, const void* programCounter)
: m_functionName(functionName)
, m_fileName(fileName)
+ , m_lineNumber(lineNumber)
+ , m_programCounter(programCounter)
{ }
const char* WebTraceLocation::functionName() const
@@ -26,4 +37,28 @@ const char* WebTraceLocation::fileName() const
return m_fileName;
}
+int WebTraceLocation::lineNumber() const
+{
+ return m_lineNumber;
+}
+
+const void* WebTraceLocation::programCounter() const
+{
+ return m_programCounter;
+}
+
+#if COMPILER(MSVC)
+__declspec(noinline)
+#endif
+const void* WebTraceLocation::getProgramCounter()
+{
+#if COMPILER(MSVC)
+ return _ReturnAddress();
+#elif COMPILER(GCC) && !OS(NACL)
+ return __builtin_extract_return_addr(__builtin_return_address(0));
+#else
+ return nullptr;
+#endif
+}
+
} // namespace blink

Powered by Google App Engine
This is Rietveld 408576698