[llvm] r186634 - Debug Info: enable verifying by default and disable testing cases that fail.
Manman Ren
mren at apple.com
Thu Jul 18 22:07:28 PDT 2013
Hi Duncan,
How can I debug the failures?
Also getDICompositeType is not used on mainline but is used on dragonegg, how can I figure out the usage?
Do I have access to the source?
Thanks,
Manman
On Jul 18, 2013, at 8:56 PM, Eric Christopher wrote:
> Also this appears to have broken the dragonegg bots. :)
>
> -eric
>
> On Thu, Jul 18, 2013 at 6:08 PM, Eric Christopher <echristo at gmail.com> wrote:
>>> Debug Info: enable verifying by default and disable testing cases that fail.
>>>
>>> 1> Use DebugInfoFinder to find debug info MDNodes.
>>> 2> Add disable-debug-info-verifier to disable verifying debug info.
>>> 3> Disable verifying for testing cases that fail (will update the testing cases
>>> later on).
>>> 4> MDNodes generated by clang can have empty filename for TAG_inheritance and
>>> TAG_friend, so DIType::Verify is modified accordingly.
>>>
>>
>> Cool, looks about like what I'd expected from when we discussed it.
>> I'd have preferred you split out the change to verify :)
>>
>>> Note that DebugInfoFinder does not list all debug info MDNode.
>>
>> Seems like we should fix this? :)
>>
>>> For example, clang can generate:
>>> metadata !{i32 786468}, which will fail to verify.
>>
>> This doesn't seem related to "not listing" all of the debug info, but
>> a problem because of:
>>
>>> This MDNode is used by debug info but not included in DebugInfoFinder.
>>> This MDNode is generated as a temporary node in DIBuilder::createFunction
>>> Value *TElts[] = { GetTagConstant(VMContext, DW_TAG_base_type) };
>>> MDNode::getTemporary(VMContext, TElts)
>>>
>>
>> This is the "we need a temporary placeholder" problem basically.
>> You'll see it in GVs, subprograms etc when we construct the CU as
>> well. Theoretically the verifier should catch these as "not
>> important". What's actually going on here that's causing it to fail?
>>
>> -eric
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20130718/4bd9208f/attachment.html>
More information about the llvm-commits
mailing list