[PATCH] D16440: [ThinLTO] Link in only necessary DICompileUnit operands

Teresa Johnson via llvm-commits llvm-commits at lists.llvm.org
Mon Feb 22 17:52:22 PST 2016


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?

Thanks,
Teresa

On Mon, Feb 22, 2016 at 5:37 PM, Mehdi Amini <mehdi.amini at apple.com> wrote:

> We still have an issue with this patch, when compiling this with thinlto
> and debug info:
> https://github.com/adobe/webkit/blob/master/Source/WebCore/inspector/InspectorRuntimeAgent.cpp
>
> I haven't had time to narrow it unfortunately, it seems that "baseType"
> for some DIDerivedType entries are not present.
> What we see is a broken LLVM Module straight after the FunctionImporter.
> The output looks like this:
>
> unresolved type ref
> !"_ZTSN3JSC14ScopeLabelInfoE"
> !121713 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType:
> !"_ZTSN3JSC14ScopeLabelInfoE", size: 64, align: 64)
> unresolved type ref
> !"_ZTSN3JSC15DeclarationTypeE"
> !121577 = !DISubroutineType(types: !121578)
> unresolved type ref
> !"_ZTSN3JSC17AssignmentContextE"
> !121580 = !DISubroutineType(types: !121581)
> unresolved type ref
> !"_ZTSN3JSC17DestructuringKindE"
> !121577 = !DISubroutineType(types: !121578)
> unresolved type ref
> !"_ZTSN3JSC21DeclarationImportTypeE"
> !121606 = !DISubroutineType(types: !121607)
> unresolved type ref
> !"_ZTSN3JSC23SourceProviderCacheItemE"
> !121621 = !DIDerivedType(tag: DW_TAG_const_type, baseType:
> !"_ZTSN3JSC23SourceProviderCacheItemE")
> unresolved type ref
> !"_ZTSN3JSC6ParserINS_5LexerIhEEE10LexerStateE"
> !121743 = !DISubroutineType(types: !121744)
> unresolved type ref
> !"_ZTSN3JSC6ParserINS_5LexerIhEEE15AutoPopScopeRefE"
> !121600 = !DIDerivedType(tag: DW_TAG_reference_type, baseType:
> !"_ZTSN3JSC6ParserINS_5LexerIhEEE15AutoPopScopeRefE", size: 64, align: 64)
> unresolved type ref
> !"_ZTSN3JSC6ParserINS_5LexerIhEEE20ExpressionErrorClassE"
> !121571 = !DISubroutineType(types: !121572)
> unresolved type ref
> !"_ZTSN3JSC6ParserINS_5LexerIhEEE23AutoCleanupLexicalScopeE"
> !121604 = !DIDerivedType(tag: DW_TAG_reference_type, baseType:
> !"_ZTSN3JSC6ParserINS_5LexerIhEEE23AutoCleanupLexicalScopeE", size: 64,
> align: 64)
> unresolved type ref
> !"_ZTSN3JSC6ParserINS_5LexerIhEEE25ExpressionErrorClassifierE"
> !121535 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType:
> !"_ZTSN3JSC6ParserINS_5LexerIhEEE25ExpressionErrorClassifierE", size: 64,
> align: 64)
> unresolved type ref
> !"_ZTSN3JSC6ParserINS_5LexerIhEEE9SavePointE"
> !121751 = !DISubroutineType(types: !121752)
> unresolved type ref
> !"_ZTSN3JSC6ParserINS_5LexerItEEE10LexerStateE"
> !122000 = !DISubroutineType(types: !122001)
> unresolved type ref
> !"_ZTSN3JSC6ParserINS_5LexerItEEE15AutoPopScopeRefE"
> !121866 = !DIDerivedType(tag: DW_TAG_reference_type, baseType:
> !"_ZTSN3JSC6ParserINS_5LexerItEEE15AutoPopScopeRefE", size: 64, align: 64)
> unresolved type ref
> !"_ZTSN3JSC6ParserINS_5LexerItEEE20ExpressionErrorClassE"
> !121838 = !DISubroutineType(types: !121839)
> unresolved type ref
> !"_ZTSN3JSC6ParserINS_5LexerItEEE23AutoCleanupLexicalScopeE"
> !121870 = !DIDerivedType(tag: DW_TAG_reference_type, baseType:
> !"_ZTSN3JSC6ParserINS_5LexerItEEE23AutoCleanupLexicalScopeE", size: 64,
> align: 64)
> unresolved type ref
> !"_ZTSN3JSC6ParserINS_5LexerItEEE25ExpressionErrorClassifierE"
> !121803 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType:
> !"_ZTSN3JSC6ParserINS_5LexerItEEE25ExpressionErrorClassifierE", size: 64,
> align: 64)
> unresolved type ref
> !"_ZTSN3JSC6ParserINS_5LexerItEEE9SavePointE"
> !122008 = !DISubroutineType(types: !122009)
> unresolved type ref
> !"_ZTSN3JSC9ScopeNodeE"
> !121635 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType:
> !"_ZTSN3JSC9ScopeNodeE", size: 64, align: 64)
>
>
> --
> Mehdi
>
>
> > On Feb 22, 2016, at 2:20 PM, Teresa Johnson <tejohnson at google.com>
> wrote:
> >
> > tejohnson updated this revision to Diff 48732.
> > tejohnson added a comment.
> >
> > Handle a null MD passed to MapMetadata to address problem reported by
> > ahatanak.
> >
> >
> > http://reviews.llvm.org/D16440
> >
> > Files:
> >  include/llvm/Linker/IRMover.h
> >  lib/Linker/IRMover.cpp
> >  lib/Linker/LinkModules.cpp
> >  lib/Transforms/Utils/ValueMapper.cpp
> >  test/Linker/thinlto_funcimport_debug.ll
> >  test/Transforms/FunctionImport/Inputs/funcimport_debug.ll
> >  test/Transforms/FunctionImport/funcimport_debug.ll
> >
> > <D16440.48732.patch>
>
>


-- 
Teresa Johnson |  Software Engineer |  tejohnson at google.com |  408-460-2413
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160222/3fb1d8d1/attachment.html>


More information about the llvm-commits mailing list