aboutsummaryrefslogtreecommitdiff
path: root/gold/symtab.cc
diff options
context:
space:
mode:
Diffstat (limited to 'gold/symtab.cc')
-rw-r--r--gold/symtab.cc4
1 files changed, 3 insertions, 1 deletions
diff --git a/gold/symtab.cc b/gold/symtab.cc
index 8fadd1d..1fad11e 100644
--- a/gold/symtab.cc
+++ b/gold/symtab.cc
@@ -3175,9 +3175,11 @@ Symbol_table::linenos_from_loc(const Task* task,
Task_lock_obj<Object> tl(task, loc.object);
std::vector<std::string> result;
+ Symbol_location code_loc = loc;
+ parameters->target().function_location(&code_loc);
// 16 is the size of the object-cache that one_addr2line should use.
std::string canonical_result = Dwarf_line_info::one_addr2line(
- loc.object, loc.shndx, loc.offset, 16, &result);
+ code_loc.object, code_loc.shndx, code_loc.offset, 16, &result);
if (!canonical_result.empty())
result.push_back(canonical_result);
return result;