[llvm-commits] [llvm] r78603 - in /llvm/trunk/lib/Target/PIC16: PIC16DebugInfo.cpp PIC16DebugInfo.h

Devang Patel dpatel at apple.com
Thu Aug 13 12:51:16 PDT 2009


On Aug 13, 2009, at 12:46 PM, Sanjiv Gupta wrote:

> Devang Patel wrote:
>> Aha.. I see the bug in my patch.
>>
>>>>>
>>>>>
>>>>> +  unsigned SuffixNo = 0;
>>>>> +  for (DebugInfoFinder::iterator I =  
>>>>> DbgFinder.global_variable_begin(),
>>>>> +         E = DbgFinder.global_variable_end(); I != E; ++I) {
>>>>> +    DICompositeType CTy(*I);
>>>>> +    if (CTy.isNull())
>>>>> +      continue;
>>
>> Here it should use
>>
>>  for(debugInfoFinder::iterator I = DbgFinder.type_begin(),
>>       E = DbgFinder.type_end(); I != E; ++I) {
>>     DICompositeType CTY(*I);
>>     if (CTy.isNull())
>>       continue;
>>
>>
>> Can you try this ?
>> Thanks,
>> -
>> Devang
> No. This doesn't work.
> I don't see processModule() handling Composites.

It does, see processType(). Are you hitting a breakpoint at  addType() ?

/// processType - Process DIType.
void DebugInfoFinder::processType(DIType DT) {
   if (!addType(DT))
     return;

-
Devang
>
> What we have there is below:
>
> if (!GV->hasName() || !GV->isConstant()
>       || strcmp(GV->getName().data(), "llvm.dbg.global_variable")
>       || !GV->hasInitializer())
>     continue;
>
> - Sanjiv
>




More information about the llvm-commits mailing list