https://bugs.llvm.org/show_bug.cgi?id=33054

            Bug ID: 33054
           Summary: `upgradeCUVariable` is non linear
           Product: libraries
           Version: trunk
          Hardware: PC
                OS: Windows NT
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: DebugInfo
          Assignee: [email protected]
          Reporter: [email protected]
                CC: [email protected], [email protected],
                    [email protected], [email protected],
                    [email protected]

I have in my hands a modestly sized piece of bitcode [250MB] produced with 3.8
(dumped after the mover merged input modules at LTO time) that takes circa
1000secs to be parsed. The overall time spent in the optimizer is about 1/10th
of that (120secs).

The profiler shows all the time goes in `parseMetadata` while materializing, in
particular in `upgradeCUVariables` on metadata operations.

- 94.82%  llvm::MetadataLoader::MetadataLoaderImpl::upgradeCUVariables 
    - 42.72% llvm::GlobalObject::getMetadata 
       - 21.45% llvm::MDGlobalAttachmentMap::get
       [...]
    + 29.10% llvm::GlobalObject::addMetadata
    + 11.56% llvm::GlobalObject::eraseMetadata
    [...]

I'm afraid I'm not in a position to share the bitcode as it's owned by one of
our internal game teams, but I may try to reproduce on something publicly
available.

Adrian, you committed this code, any ideas on how we can make it more
efficient?

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
llvm-bugs mailing list
[email protected]
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to