Index: runtime/vm/native_symbol_macos.cc |
diff --git a/runtime/vm/native_symbol_macos.cc b/runtime/vm/native_symbol_macos.cc |
index 4de33cef80b62eb1b3c5cfa9f91a6ee4990fadcc..83169e642102b39214835bea7407e71b32c5a0a2 100644 |
--- a/runtime/vm/native_symbol_macos.cc |
+++ b/runtime/vm/native_symbol_macos.cc |
@@ -21,7 +21,7 @@ void NativeSymbolResolver::ShutdownOnce() { |
} |
-char* NativeSymbolResolver::LookupSymbolName(uintptr_t pc) { |
+char* NativeSymbolResolver::LookupSymbolName(uintptr_t pc, uintptr_t* start) { |
Dl_info info; |
int r = dladdr(reinterpret_cast<void*>(pc), &info); |
if (r == 0) { |
@@ -30,6 +30,9 @@ char* NativeSymbolResolver::LookupSymbolName(uintptr_t pc) { |
if (info.dli_sname == NULL) { |
return NULL; |
} |
+ if (start != NULL) { |
+ *start = reinterpret_cast<uintptr_t>(info.dli_saddr); |
+ } |
int status; |
char* demangled = abi::__cxa_demangle(info.dli_sname, NULL, NULL, &status); |
if (status == 0) { |