| 385 | } |
| 386 | |
| 387 | remote_addr_t |
| 388 | AbstractUnwinder::getAddressforSymbol(const std::string& symbol, const std::string& modulename) const |
| 389 | { |
| 390 | LOG(DEBUG) << "Trying to find address for symbol " << symbol; |
| 391 | ModuleArg arg = {symbol.c_str(), modulename.c_str(), 0}; |
| 392 | if (dwfl_getmodules(Dwfl(), module_callback, &arg, 0) == -1) { |
| 393 | throw UnwinderError("Failed to fetch modules!"); |
| 394 | } |
| 395 | LOG(DEBUG) << "Address for symbol " << symbol << " resolved to: " << std::hex << std::showbase |
| 396 | << arg.addr; |
| 397 | return arg.addr; |
| 398 | } |
| 399 | |
| 400 | std::string |
| 401 | AbstractUnwinder::demangleSymbol(const std::string& symbol) |
no test coverage detected