[patch] migrating DragonEgg to DIBuilder

David Blaikie dblaikie at gmail.com
Thu Feb 21 11:48:42 PST 2013


On Wed, Feb 20, 2013 at 12:57 PM, Duncan Sands <baldrick at free.fr> wrote:

> Hi David,
>
>      - some Fortran testcases crash, but it's not your fault: it occurs
>> with
>>     pointers to arrays, due to hitting this:
>>
>>        if (isa<ARRAY_TYPE>(type) && TYPE_STRING_FLAG(type) &&
>>            isa<INTEGER_TYPE>(TREE_TYPE(__**type))) {
>>
>>          DEBUGASSERT(0 && "Don't support pascal strings");
>>          return DIType();
>>        }
>>
>>     Then the empty DIType is used by the pointer code to try and form a
>>     derived type.  I'm not sure why this (ancient) debug code thinks there
>>     is a problem with this kind of array, so I will try to fix it to
>> handle
>>     them properly.
>>
>
> I've "fixed" this by removing this code and letting "pascal strings" fall
> through to the general array case.  I think this is good enough for the
> moment.
>

Thanks


> Your patch still applies, and now the only failure is the objc member
> problem
> I mentioned before.


Looking at this, it seems like there's no change in behavior - the test
appears to have been accidentally passing because the IR dumper wasn't
printing out the annotated debug info comments next to the metadata (I
guess the IR printer lost support for annotating the old debug info format
somewhere along the way)

Attached are the old (ToT) & new (with my patch applied) IR for this test
case - perhaps I'm missing something about what the test case is meant to
test, etc.

- David
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20130221/bde46a7d/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: old.ll
Type: application/octet-stream
Size: 2747 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20130221/bde46a7d/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: new.ll
Type: application/octet-stream
Size: 3538 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20130221/bde46a7d/attachment-0001.obj>


More information about the llvm-commits mailing list