aboutsummaryrefslogtreecommitdiff
path: root/src/common/mac/dwarf
diff options
context:
space:
mode:
Diffstat (limited to 'src/common/mac/dwarf')
-rw-r--r--src/common/mac/dwarf/functioninfo.cc8
-rw-r--r--src/common/mac/dwarf/functioninfo.h2
2 files changed, 8 insertions, 2 deletions
diff --git a/src/common/mac/dwarf/functioninfo.cc b/src/common/mac/dwarf/functioninfo.cc
index e9d33b83..66355ec0 100644
--- a/src/common/mac/dwarf/functioninfo.cc
+++ b/src/common/mac/dwarf/functioninfo.cc
@@ -152,8 +152,12 @@ void CUFunctionInfoHandler::ProcessAttributeString(uint64 offset,
enum DwarfAttribute attr,
enum DwarfForm form,
const string &data) {
- if (attr == DW_AT_name && current_function_info_)
- current_function_info_->name = data;
+ if (current_function_info_) {
+ if (attr == DW_AT_name)
+ current_function_info_->name = data;
+ else if(attr == DW_AT_MIPS_linkage_name)
+ current_function_info_->mangled_name = data;
+ }
}
void CUFunctionInfoHandler::ProcessAttributeUnsigned(uint64 offset,
diff --git a/src/common/mac/dwarf/functioninfo.h b/src/common/mac/dwarf/functioninfo.h
index f529f092..aa8bf705 100644
--- a/src/common/mac/dwarf/functioninfo.h
+++ b/src/common/mac/dwarf/functioninfo.h
@@ -47,6 +47,8 @@ namespace dwarf2reader {
struct FunctionInfo {
// Name of the function
string name;
+ // Mangled name of the function
+ string mangled_name;
// File containing this function
string file;
// Line number for start of function.