Fixing spurious function declarations.

This commit is contained in:
Ben Vanik 2015-06-08 23:37:51 -07:00
parent 573f190a43
commit 1a2b4a38e0
1 changed files with 7 additions and 4 deletions

View File

@ -34,11 +34,14 @@ PPCScanner::PPCScanner(PPCFrontend* frontend) : frontend_(frontend) {}
PPCScanner::~PPCScanner() {}
bool PPCScanner::IsRestGprLr(uint32_t address) {
FunctionInfo* symbol_info;
if (!frontend_->processor()->LookupFunctionInfo(address, &symbol_info)) {
return false;
auto functions = frontend_->processor()->FindFunctionsWithAddress(address);
for (auto& function : functions) {
if (function->symbol_info()->behavior() ==
FunctionBehavior::kEpilogReturn) {
return true;
}
}
return symbol_info->behavior() == FunctionBehavior::kEpilogReturn;
return false;
}
bool PPCScanner::Scan(FunctionInfo* symbol_info, DebugInfo* debug_info) {