search for: fnscope

Displaying 9 results from an estimated 9 matches for "fnscope".

2013 Dec 04
2
[LLVMdev] DwarfDebug problems
Thanks for the quick response. I wrote some code to search “llvm.dbg.cu” for the function (right before the failed assertion): if (TheCU == nullptr) { errs() << "compile unit: " << TheCU << "\n scopeNode(" << FnScope->getScopeNode() << ") => " << *FnScope->getScopeNode() << "\n"; auto fn = MF->getFunction(); errs() << " fn => " << fn->getName() << "\n"; MDNode *node = nullptr; auto mod = fn->ge...
2013 Dec 04
2
[LLVMdev] DwarfDebug problems
...sponse. >> >> I wrote some code to search “llvm.dbg.cu” for the function (right before the >> failed assertion): >> >> if (TheCU == nullptr) { >> errs() << "compile unit: " << TheCU << "\n scopeNode(" << >> FnScope->getScopeNode() << ") => " << *FnScope->getScopeNode() << "\n"; >> auto fn = MF->getFunction(); >> errs() << " fn => " << fn->getName() << "\n"; >> >> >> >>...
2013 Dec 04
0
[LLVMdev] DwarfDebug problems
...> Thanks for the quick response. > > I wrote some code to search “llvm.dbg.cu” for the function (right before the > failed assertion): > > if (TheCU == nullptr) { > errs() << "compile unit: " << TheCU << "\n scopeNode(" << > FnScope->getScopeNode() << ") => " << *FnScope->getScopeNode() << "\n"; > auto fn = MF->getFunction(); > errs() << " fn => " << fn->getName() << "\n"; > > > > MDNode *node = nullptr;...
2013 Dec 04
0
[LLVMdev] DwarfDebug problems
...t;> I wrote some code to search “llvm.dbg.cu” for the function (right before the >>> failed assertion): >>> >>> if (TheCU == nullptr) { >>> errs() << "compile unit: " << TheCU << "\n scopeNode(" << >>> FnScope->getScopeNode() << ") => " << *FnScope->getScopeNode() << "\n"; >>> auto fn = MF->getFunction(); >>> errs() << " fn => " << fn->getName() << "\n"; >>> >>> >&...
2013 Dec 04
2
[LLVMdev] DwarfDebug problems
...onst*, void*) + 925 > 22 clang-3.4 0x00000001033015c3 main + 7283 > 23 libdyld.dylib 0x00007fff8e68d5fd start + 1 (note the line number of the assertion is probably different because I’ve added some prints to help me debug this) When I print the MDNode returned by “FnScope->getScopeNode()”, I get lots of <badref>’s: > !{i32 786478, metadata <badref>, metadata <badref>, metadata !"grappa_wide_get_pointer", metadata !"grappa_wide_get_pointer", metadata !"", i32 53, metadata <badref>, i1 false, i1 true, i32 0,...
2013 Dec 04
0
[LLVMdev] DwarfDebug problems
...t; 22 clang-3.4 0x00000001033015c3 main + 7283 >> 23 libdyld.dylib 0x00007fff8e68d5fd start + 1 > > (note the line number of the assertion is probably different because I’ve added some prints to help me debug this) > > When I print the MDNode returned by “FnScope->getScopeNode()”, I get lots of <badref>’s: The badrefs are a red herring, so far as I know - they're printed that way even when they're valid references, in my experience. That being said, given your assertion it does look like /something/ is up. It appears as if the function b...
2012 Aug 17
1
[LLVMdev] Debug information causing assertion
We have a test case where we are hitting an assertion in the X86 code generator. The assertion is: "Assertion failed: TheCU && "Unable to find compile unit!", file .\..\..\..\lib\CodeGen\AsmPrinter\DwarfDebug.cpp, line 1411" The bitcode is attached. What I am trying to figure out is what is malformed about our debug that is causing this error? This is reproducible
2014 Aug 27
6
[LLVMdev] Minimizing -gmlt
...SPCU->applySubprogramAttributesToDefinition(SP, *D); + if (D) + // And attach the attributes + SPCU->applySubprogramAttributesToDefinition(SP, *D); } } } @@ -1670,6 +1676,17 @@ void DwarfDebug::endFunction(const MachineFunction *MF) { LexicalScope *FnScope = LScopes.getCurrentFunctionScope(); DwarfCompileUnit &TheCU = *SPMap.lookup(FnScope->getScopeNode()); + if (TheCU.getCUNode().getEmissionKind() == DIBuilder::LineTablesOnly && LScopes.getAbstractScopesList().empty()) { + assert(ScopeVariables.empty()); + assert(CurrentFnAr...
2018 Nov 25
6
RFC: Modernizing our use of auto
I'm not advocating AAA. However this is a proposal for more modern thinking regarding the permissiveness of auto in LLVM codebases. Currently the rule on the use of auto is here: https://llvm.org/docs/CodingStandards.html#use-auto-type-deduction-to-make-code-more-readable It is quite strict. It allows the use of auto for * lambdas * iterators because they are long to type * casts to