diff options
Diffstat (limited to 'lldb/source/Expression/IRInterpreter.cpp')
-rw-r--r-- | lldb/source/Expression/IRInterpreter.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/lldb/source/Expression/IRInterpreter.cpp b/lldb/source/Expression/IRInterpreter.cpp index 449f0e8bef4..dcbf584cfb6 100644 --- a/lldb/source/Expression/IRInterpreter.cpp +++ b/lldb/source/Expression/IRInterpreter.cpp @@ -428,6 +428,20 @@ IRInterpreter::CanInterpret (llvm::Module &module, { lldb_private::Log *log(lldb_private::GetLogIfAllCategoriesSet (LIBLLDB_LOG_EXPRESSIONS)); + bool saw_function_with_body = false; + + for (Module::iterator fi = module.begin(), fe = module.end(); + fi != fe; + ++fi) + { + if (fi->begin() != fi->end()) + { + if (saw_function_with_body) + return false; + saw_function_with_body = true; + } + } + for (Function::iterator bbi = function.begin(), bbe = function.end(); bbi != bbe; ++bbi) |