[lldb-dev] Infinite recursion in IRForTarget::RegisterFunctionMetadata

Todd Fiala tfiala at google.com
Mon Mar 10 12:32:14 PDT 2014


Hey all,

Anybody else seeing these?  I've got a bunch of tests failing with a few
(!) of these in the call stack:

(frames below repeat tens of thousands of times)

*#45756 *0x00007fa60f00ea5a in IRForTarget::RegisterFunctionMetadata
(this=0x7fff0096f0a0, context=...,
    function_ptr=0x20a45d0, name=0x7fa5f47a0560 "_ZL6printfPKcz")
    at
/mnt/ssd/work/git/llgs/llvm/tools/lldb/source/Expression/IRForTarget.cpp:315
*#45757* 0x00007fa60f00ea5a in IRForTarget::RegisterFunctionMetadata
(this=0x7fff0096f0a0, context=...,
    function_ptr=0x20a45d0, name=0x7fa5f47a0560 "_ZL6printfPKcz")
    at
/mnt/ssd/work/git/llgs/llvm/tools/lldb/source/Expression/IRForTarget.cpp:315
...

(here is what drives it)

#47524 0x00007fa60f017183 in IRForTarget::runOnModule (this=0x7fff0096f0a0,
llvm_module=...)
    at
/mnt/ssd/work/git/llgs/llvm/tools/lldb/source/Expression/IRForTarget.cpp:2722
#47525 0x00007fa60f00a579 in
lldb_private::ClangExpressionParser::PrepareForExecution
(this=0x7fff0096f2f0,
    func_addr=@0x1ff0208: 18446744073709551615, func_end=@0x1ff0210:
18446744073709551615,
execution_unit_ap=std::unique_ptr<lldb_private::IRExecutionUnit> containing
0x0, exe_ctx=...,
    can_interpret=@0x1ff02a8: false,
execution_policy=lldb_private::eExecutionPolicyOnlyWhenNeeded)
    at
/mnt/ssd/work/git/llgs/llvm/tools/lldb/source/Expression/ClangExpressionParser.cpp:517
#47526 0x00007fa60efd21c0 in lldb_private::ClangUserExpression::Parse
(this=0x1ff01f0, error_stream=..., exe_ctx=...,
    execution_policy=lldb_private::eExecutionPolicyOnlyWhenNeeded,
keep_result_in_memory=true)
    at
/mnt/ssd/work/git/llgs/llvm/tools/lldb/source/Expression/ClangUserExpression.cpp:539
#47527 0x00007fa60efd3aac in lldb_private::ClangUserExpression::Evaluate
(exe_ctx=..., options=..., expr_cstr=0x1f70a08 "(int)
printf(\"\\x68\\x65\\x6c\\x6c\\x6f\\n\")", expr_prefix=0x0,
result_valobj_sp=..., error=...) at
/mnt/ssd/work/git/llgs/llvm/tools/lldb/source/Expression/ClangUserExpression.cpp:969
#47528 0x00007fa60ece67e4 in lldb_private::Target::EvaluateExpression
(this=0x1e61100,
    expr_cstr=0x1f70a08 "(int) printf(\"\\x68\\x65\\x6c\\x6c\\x6f\\n\")",
frame=0x7fa5f4001e40, result_valobj_sp=...,
    options=...) at
/mnt/ssd/work/git/llgs/llvm/tools/lldb/source/Target/Target.cpp:1910
#47529 0x00007fa60ef07d14 in
lldb_private::CommandObjectExpression::EvaluateExpression (this=0x191d860,
    expr=0x1f70a08 "(int) printf(\"\\x68\\x65\\x6c\\x6c\\x6f\\n\")",
output_stream=0x1df8e70, error_stream=0x1df8ec8,
    result=0x1df8e70) at
/mnt/ssd/work/git/llgs/llvm/tools/lldb/source/Commands/CommandObjectExpression.cpp:301
*#47530* 0x00007fa60ef0864a in
lldb_private::CommandObjectExpression::DoExecute (this=0x191d860,
    command=0x1f70a08 "(int) printf(\"\\x68\\x65\\x6c\\x6c\\x6f\\n\")",
result=...)
    at
/mnt/ssd/work/git/llgs/llvm/tools/lldb/source/Commands/CommandObjectExpression.cpp:485
-- 
Todd Fiala | Software Engineer | tfiala at google.com | 650-943-3180
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20140310/58f54119/attachment.html>


More information about the lldb-dev mailing list