<div dir="ltr">Can you give me a test case to reproduce, or at least the IR for the module we're importing from (where these presumably came from) and which function(s) were imported?<div><br></div><div>Thanks,</div><div>Teresa</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Feb 22, 2016 at 5:37 PM, Mehdi Amini <span dir="ltr"><<a href="mailto:mehdi.amini@apple.com" target="_blank">mehdi.amini@apple.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">We still have an issue with this patch, when compiling this with thinlto and debug info: <a href="https://github.com/adobe/webkit/blob/master/Source/WebCore/inspector/InspectorRuntimeAgent.cpp" rel="noreferrer" target="_blank">https://github.com/adobe/webkit/blob/master/Source/WebCore/inspector/InspectorRuntimeAgent.cpp</a><br>
<br>
I haven't had time to narrow it unfortunately, it seems that "baseType" for some DIDerivedType entries are not present.<br>
What we see is a broken LLVM Module straight after the FunctionImporter. The output looks like this:<br>
<br>
unresolved type ref<br>
!"_ZTSN3JSC14ScopeLabelInfoE"<br>
!121713 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !"_ZTSN3JSC14ScopeLabelInfoE", size: 64, align: 64)<br>
unresolved type ref<br>
!"_ZTSN3JSC15DeclarationTypeE"<br>
!121577 = !DISubroutineType(types: !121578)<br>
unresolved type ref<br>
!"_ZTSN3JSC17AssignmentContextE"<br>
!121580 = !DISubroutineType(types: !121581)<br>
unresolved type ref<br>
!"_ZTSN3JSC17DestructuringKindE"<br>
!121577 = !DISubroutineType(types: !121578)<br>
unresolved type ref<br>
!"_ZTSN3JSC21DeclarationImportTypeE"<br>
!121606 = !DISubroutineType(types: !121607)<br>
unresolved type ref<br>
!"_ZTSN3JSC23SourceProviderCacheItemE"<br>
!121621 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !"_ZTSN3JSC23SourceProviderCacheItemE")<br>
unresolved type ref<br>
!"_ZTSN3JSC6ParserINS_5LexerIhEEE10LexerStateE"<br>
!121743 = !DISubroutineType(types: !121744)<br>
unresolved type ref<br>
!"_ZTSN3JSC6ParserINS_5LexerIhEEE15AutoPopScopeRefE"<br>
!121600 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !"_ZTSN3JSC6ParserINS_5LexerIhEEE15AutoPopScopeRefE", size: 64, align: 64)<br>
unresolved type ref<br>
!"_ZTSN3JSC6ParserINS_5LexerIhEEE20ExpressionErrorClassE"<br>
!121571 = !DISubroutineType(types: !121572)<br>
unresolved type ref<br>
!"_ZTSN3JSC6ParserINS_5LexerIhEEE23AutoCleanupLexicalScopeE"<br>
!121604 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !"_ZTSN3JSC6ParserINS_5LexerIhEEE23AutoCleanupLexicalScopeE", size: 64, align: 64)<br>
unresolved type ref<br>
!"_ZTSN3JSC6ParserINS_5LexerIhEEE25ExpressionErrorClassifierE"<br>
!121535 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !"_ZTSN3JSC6ParserINS_5LexerIhEEE25ExpressionErrorClassifierE", size: 64, align: 64)<br>
unresolved type ref<br>
!"_ZTSN3JSC6ParserINS_5LexerIhEEE9SavePointE"<br>
!121751 = !DISubroutineType(types: !121752)<br>
unresolved type ref<br>
!"_ZTSN3JSC6ParserINS_5LexerItEEE10LexerStateE"<br>
!122000 = !DISubroutineType(types: !122001)<br>
unresolved type ref<br>
!"_ZTSN3JSC6ParserINS_5LexerItEEE15AutoPopScopeRefE"<br>
!121866 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !"_ZTSN3JSC6ParserINS_5LexerItEEE15AutoPopScopeRefE", size: 64, align: 64)<br>
unresolved type ref<br>
!"_ZTSN3JSC6ParserINS_5LexerItEEE20ExpressionErrorClassE"<br>
!121838 = !DISubroutineType(types: !121839)<br>
unresolved type ref<br>
!"_ZTSN3JSC6ParserINS_5LexerItEEE23AutoCleanupLexicalScopeE"<br>
!121870 = !DIDerivedType(tag: DW_TAG_reference_type, baseType: !"_ZTSN3JSC6ParserINS_5LexerItEEE23AutoCleanupLexicalScopeE", size: 64, align: 64)<br>
unresolved type ref<br>
!"_ZTSN3JSC6ParserINS_5LexerItEEE25ExpressionErrorClassifierE"<br>
!121803 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !"_ZTSN3JSC6ParserINS_5LexerItEEE25ExpressionErrorClassifierE", size: 64, align: 64)<br>
unresolved type ref<br>
!"_ZTSN3JSC6ParserINS_5LexerItEEE9SavePointE"<br>
!122008 = !DISubroutineType(types: !122009)<br>
unresolved type ref<br>
!"_ZTSN3JSC9ScopeNodeE"<br>
!121635 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !"_ZTSN3JSC9ScopeNodeE", size: 64, align: 64)<br>
<br>
<br>
--<br>
Mehdi<br>
<div><div class="h5"><br>
<br>
> On Feb 22, 2016, at 2:20 PM, Teresa Johnson <<a href="mailto:tejohnson@google.com">tejohnson@google.com</a>> wrote:<br>
><br>
> tejohnson updated this revision to Diff 48732.<br>
> tejohnson added a comment.<br>
><br>
> Handle a null MD passed to MapMetadata to address problem reported by<br>
> ahatanak.<br>
><br>
><br>
> <a href="http://reviews.llvm.org/D16440" rel="noreferrer" target="_blank">http://reviews.llvm.org/D16440</a><br>
><br>
> Files:<br>
>  include/llvm/Linker/IRMover.h<br>
>  lib/Linker/IRMover.cpp<br>
>  lib/Linker/LinkModules.cpp<br>
>  lib/Transforms/Utils/ValueMapper.cpp<br>
>  test/Linker/thinlto_funcimport_debug.ll<br>
>  test/Transforms/FunctionImport/Inputs/funcimport_debug.ll<br>
>  test/Transforms/FunctionImport/funcimport_debug.ll<br>
><br>
</div></div>> <D16440.48732.patch><br>
<br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><span style="font-family:Times;font-size:medium"><table cellspacing="0" cellpadding="0"><tbody><tr style="color:rgb(85,85,85);font-family:sans-serif;font-size:small"><td nowrap style="border-top-style:solid;border-top-color:rgb(213,15,37);border-top-width:2px">Teresa Johnson |</td><td nowrap style="border-top-style:solid;border-top-color:rgb(51,105,232);border-top-width:2px"> Software Engineer |</td><td nowrap style="border-top-style:solid;border-top-color:rgb(0,153,57);border-top-width:2px"> <a href="mailto:tejohnson@google.com" target="_blank">tejohnson@google.com</a> |</td><td nowrap style="border-top-style:solid;border-top-color:rgb(238,178,17);border-top-width:2px"> 408-460-2413</td></tr></tbody></table></span></div>
</div>