search for: dbgcompileunit_

Displaying 14 results from an estimated 14 matches for "dbgcompileunit_".

2010 Sep 06
2
[LLVMdev] More DIFactory questions - still stumped
...m(const FunctionDefn * fn, Function * f) { DASSERT(fn != NULL); // Look up in the map to see if already generated. DISubprogram & sp = dbgSubprograms_[fn]; if (!sp.isSubprogram()) { DIType dbgFuncType = genDIType(fn->functionType()); DASSERT(dbgFuncType.Verify()); DASSERT(dbgCompileUnit_.Verify()); sp = dbgFactory_.CreateSubprogram( dbgCompileUnit_, fn->name(), fn->qualifiedName(), fn->linkageName(), dbgFile_, // genDIFile(fn), 1, // getSourceLineNumber(fn->location()), dbgFuncType, fn->isSynthetic()...
2010 Sep 05
0
[LLVMdev] More DIFactory questions - still stumped
On 5 September 2010 19:32, Talin <viridia at gmail.com> wrote: > I've carefully studied the source code of CGDebugInfo in clang as a working > example. One puzzlement is that there's a discrepancy between what the > "source level debugging with LLVM" docs say and what clang does: According > to the docs, DW_TAG_formal_parameter is used to specify a formal
2010 Nov 07
3
[LLVMdev] Next round of DWARF issues/questions
...I might be doing wrong. #1) Class sizes coming out as zero. In my frontend, I call DebugFactory::CreateCompositeTypeEx as follows: DICompositeType di = dbgFactory_.CreateCompositeTypeEx( type->typeClass() == Type::Class ? dwarf::DW_TAG_class_type : dwarf::DW_TAG_structure_type, dbgCompileUnit_, type->typeDefn()->linkageName().c_str(), genDIFile(type->typeDefn()), getSourceLineNumber(type->typeDefn()->location()), getSizeOfInBits(type->irType()), getAlignOfInBits(type->irType()), getInt64Val(0), 0, DIType(), dbgFactory_....
2010 Sep 05
2
[LLVMdev] More DIFactory questions - still stumped
...(ParameterList::const_iterator it = params.begin(); it != > params.end(); ++it) { > const ParameterDefn * param = *it; > DIType ptype = genDIParameterType(param->type()); > ptype = dbgFactory_.CreateDerivedTypeEx( > dwarf::DW_TAG_formal_parameter, > dbgCompileUnit_, > param->name() != NULL ? param->name() : "", > genDIFile(param), > getSourceLineNumber(param->location()), > getSizeOfInBits(param->internalType()->irParameterType()), > getInt64Val(0), > getInt64Val(0), 0,...
2010 Sep 07
0
[LLVMdev] More DIFactory questions - still stumped
...t ParameterDefn * param = *it; >     args.push_back(genDIParameterType(param->type())); >   } Don't do that. I know it looks right, but it's broken in DIFactory. >   DICompositeType fnType = dbgFactory_.CreateCompositeType( >       dwarf::DW_TAG_subroutine_type, >       dbgCompileUnit_, I use the file here, not the compile unit... But again, I could be wrong. Hope that puts you in the right direction. -- cheers, --renato http://systemcall.org/ Reclaim your digital rights, eliminate DRM, learn more at http://www.defectivebydesign.org/what_is_drm
2010 Sep 07
2
[LLVMdev] More DIFactory questions - still stumped
...args.push_back(genDIParameterType(param->type())); > > } > > Don't do that. I know it looks right, but it's broken in DIFactory. > > > > DICompositeType fnType = dbgFactory_.CreateCompositeType( > > dwarf::DW_TAG_subroutine_type, > > dbgCompileUnit_, > > I use the file here, not the compile unit... But again, I could be wrong. > > Hope that puts you in the right direction. > OK I made 3 changes: -- changed isDefinition to true. (I'm also only generating debug info for definitions.) -- commented out the code that pushes para...
2010 Nov 08
0
[LLVMdev] Next round of DWARF issues/questions
...Class sizes coming out as zero. > > In my frontend, I call DebugFactory::CreateCompositeTypeEx as follows: > > DICompositeType di = dbgFactory_.CreateCompositeTypeEx( > type->typeClass() == Type::Class ? dwarf::DW_TAG_class_type : dwarf::DW_TAG_structure_type, > dbgCompileUnit_, > type->typeDefn()->linkageName().c_str(), > genDIFile(type->typeDefn()), > getSourceLineNumber(type->typeDefn()->location()), > getSizeOfInBits(type->irType()), > getAlignOfInBits(type->irType()), > getInt64Val(0), 0, >...
2010 Nov 09
2
[LLVMdev] Next round of DWARF issues/questions
...ss sizes coming out as zero. > > In my frontend, I call DebugFactory::CreateCompositeTypeEx as follows: > > DICompositeType di = dbgFactory_.CreateCompositeTypeEx( > type->typeClass() == Type::Class ? dwarf::DW_TAG_class_type : > dwarf::DW_TAG_structure_type, > dbgCompileUnit_, > type->typeDefn()->linkageName().c_str(), > genDIFile(type->typeDefn()), > getSourceLineNumber(type->typeDefn()->location()), > getSizeOfInBits(type->irType()), > getAlignOfInBits(type->irType()), > getInt64Val(0), 0, >...
2010 Nov 09
0
[LLVMdev] Next round of DWARF issues/questions
...s zero. >> >> In my frontend, I call DebugFactory::CreateCompositeTypeEx as follows: >> >> DICompositeType di = dbgFactory_.CreateCompositeTypeEx( >> type->typeClass() == Type::Class ? dwarf::DW_TAG_class_type : dwarf::DW_TAG_structure_type, >> dbgCompileUnit_, >> type->typeDefn()->linkageName().c_str(), >> genDIFile(type->typeDefn()), >> getSourceLineNumber(type->typeDefn()->location()), >> getSizeOfInBits(type->irType()), >> getAlignOfInBits(type->irType()), >>...
2010 Aug 31
0
[LLVMdev] More DIFactory questions
On Aug 31, 2010, at 9:03 AM, Talin wrote: > 4) What is the meaning of the "inlinedAt" argument for DebugLoc::get()? Does it mean the location where the inlined code was defined, or the location where it was expanded? the location where it was expanded - Devang
2010 Nov 26
3
[LLVMdev] Next round of DWARF issues/questions
...>> >> In my frontend, I call DebugFactory::CreateCompositeTypeEx as follows: >> >> DICompositeType di = dbgFactory_.CreateCompositeTypeEx( >> type->typeClass() == Type::Class ? dwarf::DW_TAG_class_type : >> dwarf::DW_TAG_structure_type, >> dbgCompileUnit_, >> type->typeDefn()->linkageName().c_str(), >> genDIFile(type->typeDefn()), >> getSourceLineNumber(type->typeDefn()->location()), >> getSizeOfInBits(type->irType()), >> getAlignOfInBits(type->irType()), >>...
2010 Sep 07
0
[LLVMdev] More DIFactory questions - still stumped
...args.push_back(genDIParameterType(param->type())); > > } > > Don't do that. I know it looks right, but it's broken in DIFactory. > > > > DICompositeType fnType = dbgFactory_.CreateCompositeType( > > dwarf::DW_TAG_subroutine_type, > > dbgCompileUnit_, > > I use the file here, not the compile unit... But again, I could be wrong. > > Hope that puts you in the right direction. > > OK I made 3 changes: > -- changed isDefinition to true. (I'm also only generating debug info for definitions.) > -- commented out the code...
2010 Nov 26
0
[LLVMdev] Next round of DWARF issues/questions
...n my frontend, I call DebugFactory::CreateCompositeTypeEx as follows: >>> >>> DICompositeType di = dbgFactory_.CreateCompositeTypeEx( >>> type->typeClass() == Type::Class ? dwarf::DW_TAG_class_type : >>> dwarf::DW_TAG_structure_type, >>> dbgCompileUnit_, >>> type->typeDefn()->linkageName().c_str(), >>> genDIFile(type->typeDefn()), >>> getSourceLineNumber(type->typeDefn()->location()), >>> getSizeOfInBits(type->irType()), >>> getAlignOfInBits(type->irTyp...
2010 Aug 31
5
[LLVMdev] More DIFactory questions
Here are some issues that I am unclear about. What would be great is if the answers could be incorporated into the comments and documentation for DIFactory and DebugInfo.h: 1) What types of DIScope are valid arguments for DebugLoc::get()? The method takes an MDNode* argument, so looking at the function signature is no help. For example, DIFile is a subtype of DIScope, however looking at