<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="/rss.xsl.xml"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Changes in DWARFLinker.cpp</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>0d191b75 - [Debuginfo][llvm-dwarfutil] Add check for unsupported debug sections.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp#0d191b75</link>
        <description>[Debuginfo][llvm-dwarfutil] Add check for unsupported debug sections.Current DWARFLinker implementation does not support some debug sections(mainly DWARF v5 sections). This patch adds diagnostic for such sections.The warning would be displayed for critical(such that could not be removed)sections and the source file would be skipped. Other unsupported sectionswould be removed and warning message should be displayed. The zero exitstatus would be returned for both cases.Reviewed By: JDevlieghereDifferential Revision: https://reviews.llvm.org/D123623

            List of files:
            /llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp</description>
        <pubDate>Mon, 25 Jul 2022 17:08:46 +0000</pubDate>
        <dc:creator>Alexey Lapshin &lt;a.v.lapshin@mail.ru&gt;</dc:creator>
    </item>
<item>
        <title>8bb4451a - [Reland][DebugInfo][llvm-dwarfutil] Combine overlapped address ranges.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp#8bb4451a</link>
        <description>[Reland][DebugInfo][llvm-dwarfutil] Combine overlapped address ranges.DWARF files may contain overlapping address ranges. f.e. it can happen if the twocopies of the function have identical instruction sequences and they end up sharing.That looks incorrect from the point of view of DWARF spec. Current implementationof DWARFLinker does not combine overlapped address ranges. It would be good if suchranges would be handled in some useful way. Thus, this patch allows DWARFLinkerto combine overlapped ranges in a single one.Depends on D86539Reviewed By: aprantlDifferential Revision: https://reviews.llvm.org/D123469

            List of files:
            /llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp</description>
        <pubDate>Tue, 19 Jul 2022 15:11:07 +0000</pubDate>
        <dc:creator>Alexey Lapshin &lt;a.v.lapshin@mail.ru&gt;</dc:creator>
    </item>
<item>
        <title>3aad4908 - Revert &quot;[DebugInfo][llvm-dwarfutil] Combine overlapped address ranges.&quot;</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp#3aad4908</link>
        <description>Revert &quot;[DebugInfo][llvm-dwarfutil] Combine overlapped address ranges.&quot;This reverts commit d2a4d6bf9c52861f3d418bf7bb7d05f6e74dfead.

            List of files:
            /llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp</description>
        <pubDate>Thu, 21 Jul 2022 10:39:50 +0000</pubDate>
        <dc:creator>Alexey Lapshin &lt;a.v.lapshin@mail.ru&gt;</dc:creator>
    </item>
<item>
        <title>d2a4d6bf - [DebugInfo][llvm-dwarfutil] Combine overlapped address ranges.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp#d2a4d6bf</link>
        <description>[DebugInfo][llvm-dwarfutil] Combine overlapped address ranges.DWARF files may contain overlapping address ranges. f.e. it can happen if the twocopies of the function have identical instruction sequences and they end up sharing.That looks incorrect from the point of view of DWARF spec. Current implementationof DWARFLinker does not combine overlapped address ranges. It would be good if suchranges would be handled in some useful way. Thus, this patch allows DWARFLinkerto combine overlapped ranges in a single one.Depends on D86539Reviewed By: aprantlDifferential Revision: https://reviews.llvm.org/D123469

            List of files:
            /llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp</description>
        <pubDate>Tue, 19 Jul 2022 15:11:07 +0000</pubDate>
        <dc:creator>Alexey Lapshin &lt;a.v.lapshin@mail.ru&gt;</dc:creator>
    </item>
<item>
        <title>4539b441 - [Reland][Debuginfo][llvm-dwarfutil] llvm-dwarfutil dsymutil-like tool for ELF.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp#4539b441</link>
        <description>[Reland][Debuginfo][llvm-dwarfutil] llvm-dwarfutil dsymutil-like tool for ELF.This patch implements proposal https://lists.llvm.org/pipermail/llvm-dev/2020-August/144579.htmlllvm-dwarfutil - is a tool that is used for processing debug info(DWARF) located in built binary files to improve debug info quality, reduce debug info size. The patch currently implements smaller set of command-line options(comparing to the proposal):```./llvm-dwarfutil [options] &lt;input file&gt; &lt;output file&gt;  --garbage-collection    Do garbage collection for debug info(default)  -j &lt;value&gt;              Alias for --num-threads  --no-garbage-collection Don`t do garbage collection for debug info  --no-odr-deduplication  Don`t do ODR deduplication for debug types  --no-odr                Alias for --no-odr-deduplication  --no-separate-debug-file                          Create single output file, containing debug tables(default)  --num-threads &lt;threads&gt; Number of available threads for multi-threaded execution. Defaults to the number of cores on the current machine  --odr-deduplication     Do ODR deduplication for debug types(default)  --odr                   Alias for --odr-deduplication  --separate-debug-file   Create two output files: file w/o debug tables and file with debug tables  --tombstone [bfd,maxpc,exec,universal]                          Tombstone value used as a marker of invalid address(default: universal)    =bfd - Zero for all addresses and [1,1] for DWARF v4 (or less) address ranges and exec    =maxpc - Minus 1 for all addresses and minus 2 for DWARF v4 (or less) address ranges    =exec - Match with address ranges of executable sections    =universal - Both: bfd and maxpc```Reviewed By: clayborgDifferential Revision: https://reviews.llvm.org/D86539

            List of files:
            /llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp</description>
        <pubDate>Sun, 10 Jul 2022 17:11:55 +0000</pubDate>
        <dc:creator>Alexey Lapshin &lt;a.v.lapshin@mail.ru&gt;</dc:creator>
    </item>
<item>
        <title>e717f91c - Revert &quot;[Debuginfo][llvm-dwarfutil] llvm-dwarfutil dsymutil-like tool for ELF.&quot;</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp#e717f91c</link>
        <description>Revert &quot;[Debuginfo][llvm-dwarfutil] llvm-dwarfutil dsymutil-like tool for ELF.&quot;This reverts commit e2147c26bd1522ad67a98836fbe94933eab869bb.

            List of files:
            /llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp</description>
        <pubDate>Tue, 19 Jul 2022 09:16:24 +0000</pubDate>
        <dc:creator>Alexey Lapshin &lt;a.v.lapshin@mail.ru&gt;</dc:creator>
    </item>
<item>
        <title>e2147c26 - [Debuginfo][llvm-dwarfutil] llvm-dwarfutil dsymutil-like tool for ELF.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp#e2147c26</link>
        <description>[Debuginfo][llvm-dwarfutil] llvm-dwarfutil dsymutil-like tool for ELF.This patch implements proposal https://lists.llvm.org/pipermail/llvm-dev/2020-August/144579.htmlllvm-dwarfutil - is a tool that is used for processing debug info(DWARF) located in built binary files to improve debug info quality, reduce debug info size. The patch currently implements smaller set of command-line options(comparing to the proposal):```./llvm-dwarfutil [options] &lt;input file&gt; &lt;output file&gt;  --garbage-collection    Do garbage collection for debug info(default)  -j &lt;value&gt;              Alias for --num-threads  --no-garbage-collection Don`t do garbage collection for debug info  --no-odr-deduplication  Don`t do ODR deduplication for debug types  --no-odr                Alias for --no-odr-deduplication  --no-separate-debug-file                          Create single output file, containing debug tables(default)  --num-threads &lt;threads&gt; Number of available threads for multi-threaded execution. Defaults to the number of cores on the current machine  --odr-deduplication     Do ODR deduplication for debug types(default)  --odr                   Alias for --odr-deduplication  --separate-debug-file   Create two output files: file w/o debug tables and file with debug tables  --tombstone [bfd,maxpc,exec,universal]                          Tombstone value used as a marker of invalid address(default: universal)    =bfd - Zero for all addresses and [1,1] for DWARF v4 (or less) address ranges and exec    =maxpc - Minus 1 for all addresses and minus 2 for DWARF v4 (or less) address ranges    =exec - Match with address ranges of executable sections    =universal - Both: bfd and maxpc```Reviewed By: clayborgDifferential Revision: https://reviews.llvm.org/D86539

            List of files:
            /llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp</description>
        <pubDate>Sun, 10 Jul 2022 17:11:55 +0000</pubDate>
        <dc:creator>Alexey Lapshin &lt;a.v.lapshin@mail.ru&gt;</dc:creator>
    </item>
<item>
        <title>a17c90da - Re-land &quot;[dsymutil] Account for DW_OP_convert being CU relative&quot;</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp#a17c90da</link>
        <description>Re-land &quot;[dsymutil] Account for DW_OP_convert being CU relative&quot;Currently, dsymutil treats the DW_OP_convert operand as absolute insteadof CU relative, as described by in the DWARFv5 spec, 2.5.1.6:  &quot;[DW_OP_convert] takes one operand, which is an unsigned LEB128 integer  that represents the offset of a debugging information entry in the current  compilation unit&quot;This patch makes dsymutil correctly treat the offset as CU relative,preventing a crash when there are multiple compilation units.Big thanks to Akira Hatanaka for figuring out this issue and providingboth a reduced test case and a proposed fix.

            List of files:
            /llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp</description>
        <pubDate>Tue, 12 Jul 2022 21:18:19 +0000</pubDate>
        <dc:creator>Jonas Devlieghere &lt;jonas@devlieghere.com&gt;</dc:creator>
    </item>
<item>
        <title>b93119aa - Revert &quot;[dsymutil] Account for DW_OP_convert being CU relative&quot;</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp#b93119aa</link>
        <description>Revert &quot;[dsymutil] Account for DW_OP_convert being CU relative&quot;This reverts commit 7f3000fa8b321f7fae169a615734de74a737b5d4.Breaks tests on Windows, see commits on https://reviews.llvm.org/rG7f3000fa

            List of files:
            /llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp</description>
        <pubDate>Tue, 12 Jul 2022 23:36:21 +0000</pubDate>
        <dc:creator>Nico Weber &lt;thakis@chromium.org&gt;</dc:creator>
    </item>
<item>
        <title>7f3000fa - [dsymutil] Account for DW_OP_convert being CU relative</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp#7f3000fa</link>
        <description>[dsymutil] Account for DW_OP_convert being CU relativeCurrently, dsymutil treats the DW_OP_convert operand as absolute insteadof CU relative, as described by in the DWARFv5 spec, 2.5.1.6:  &quot;[DW_OP_convert] takes one operand, which is an unsigned LEB128 integer  that represents the offset of a debugging information entry in the current  compilation unit&quot;This patch makes dsymutil correctly treat the offset as CU relative,preventing a crash when there are multiple compilation units.Big thanks to Akira Hatanaka for figuring out this issue and providingboth a reduced test case and a proposed fix.

            List of files:
            /llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp</description>
        <pubDate>Tue, 12 Jul 2022 21:18:19 +0000</pubDate>
        <dc:creator>Jonas Devlieghere &lt;jonas@devlieghere.com&gt;</dc:creator>
    </item>
<item>
        <title>2b747241 - [DWARFLinker] mark odr candidates inside the same object file.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp#2b747241</link>
        <description>[DWARFLinker] mark odr candidates inside the same object file.This patch is extracted from D86539.Current implementation of lookForDIEsToKeep() function skips typesduplications basing on the getCanonicalDIEOffset() data:```if (AttrSpec.Form != dwarf::DW_FORM_ref_addr &amp;&amp; (UseOdr || IsModuleRef) &amp;&amp;    Info.Ctxt &amp;&amp;    Info.Ctxt != ReferencedCU-&gt;getInfo(Info.ParentIdx).Ctxt &amp;&amp;    Info.Ctxt-&gt;getCanonicalDIEOffset() &amp;&amp; isODRAttribute(AttrSpec.Attr))  &lt;&lt;&lt;&lt;&lt;  continue;```But that field is set after all compile units inside object file are processed:```for (auto &amp;CurrentUnit : OptContext.CompileUnits)  lookForDIEsToKeep(.., &amp;CurrentUnit, ..);  // check CanonicalDIEOffsetDIECloner.cloneAllCompileUnits(); // set CanonicalDIEOffset```Thus, if the object file contains several compilation units - types wouldnot be deduplicated. The above solution works well for the case when the object filecontains only one compilation unit. But if the object file contains several compilationunits then types would not be deduplicated between these compilation units.This patch changes the algorithm so that types were deduplicated betweencompilation units from the same object file.It produces binary incompatible output for the cases when several compilation unitsare located inside the same object file.Reviewed By: aprantlDifferential Revision: https://reviews.llvm.org/D125469

            List of files:
            /llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp</description>
        <pubDate>Mon, 27 Jun 2022 15:40:10 +0000</pubDate>
        <dc:creator>Alexey Lapshin &lt;a.v.lapshin@mail.ru&gt;</dc:creator>
    </item>
<item>
        <title>5413bf1b - Don&apos;t use Optional::hasValue (NFC)</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp#5413bf1b</link>
        <description>Don&apos;t use Optional::hasValue (NFC)

            List of files:
            /llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp</description>
        <pubDate>Mon, 20 Jun 2022 18:33:56 +0000</pubDate>
        <dc:creator>Kazu Hirata &lt;kazu@google.com&gt;</dc:creator>
    </item>
<item>
        <title>129b531c - [llvm] Use value_or instead of getValueOr (NFC)</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp#129b531c</link>
        <description>[llvm] Use value_or instead of getValueOr (NFC)

            List of files:
            /llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp</description>
        <pubDate>Sun, 19 Jun 2022 06:07:11 +0000</pubDate>
        <dc:creator>Kazu Hirata &lt;kazu@google.com&gt;</dc:creator>
    </item>
<item>
        <title>4d9c0834 - [DWARFLinker][NFC] Add None value to the DwarfLinkerAccelTableKind enum.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp#4d9c0834</link>
        <description>[DWARFLinker][NFC] Add None value to the DwarfLinkerAccelTableKind enum.this review is extracted from D86539.1. Rename AccelTableKind to DwarfLinkerAccelTableKind   (to differentiate from AccelTableKind from CodeGen/AsmPrinter/DwarfDebug.h)2. Add None value to the DwarfLinkerAccelTableKind.3. added &apos;None&apos; value for &apos;accelerator&apos; option of dsymutil.Differential Revision: https://reviews.llvm.org/D125474

            List of files:
            /llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp</description>
        <pubDate>Thu, 12 May 2022 16:01:53 +0000</pubDate>
        <dc:creator>Alexey Lapshin &lt;a.v.lapshin@mail.ru&gt;</dc:creator>
    </item>
<item>
        <title>fdae8641 - [DWARFLinker][NFC] cleanup AddressManager interface.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp#fdae8641</link>
        <description>[DWARFLinker][NFC] cleanup AddressManager interface.this review is extracted from D865391. delete areRelocationsResolved() method.2. rename hasLiveMemoryLocation() -&gt; isLiveVariable()          hasLiveAddressRange() -&gt; isLiveSubprogram().Differential Revision: https://reviews.llvm.org/D125492

            List of files:
            /llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp</description>
        <pubDate>Thu, 12 May 2022 18:48:14 +0000</pubDate>
        <dc:creator>Alexey Lapshin &lt;a.v.lapshin@mail.ru&gt;</dc:creator>
    </item>
<item>
        <title>ed98c1b3 - Cleanup includes: DebugInfo &amp; CodeGen</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp#ed98c1b3</link>
        <description>Cleanup includes: DebugInfo &amp; CodeGenDiscourse thread: https://discourse.llvm.org/t/include-what-you-use-include-cleanupDifferential Revision: https://reviews.llvm.org/D121332

            List of files:
            /llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp</description>
        <pubDate>Wed, 09 Mar 2022 21:29:31 +0000</pubDate>
        <dc:creator>serge-sans-paille &lt;sguelton@redhat.com&gt;</dc:creator>
    </item>
<item>
        <title>409c515f - [dsymutil] Add the ability to run the DWARF verifier on the input</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp#409c515f</link>
        <description>[dsymutil] Add the ability to run the DWARF verifier on the inputCurrently you can run the DWARF verifier on the linked dsymutil output.This patch extends this functionality and makes it possible torun the DWARF verifier on the input as well.A new option --verify-dwarf allows you to specify input, output, all andnone. The existing --verify flag remains unchanged and acts and aliasfor --verify-dwarf=output.Input verification issues do not result in a non-zero exit code becausedsymutil is capable of taking invalid DWARF as input and producing validDWARF as output.Differential revision: https://reviews.llvm.org/D89216

            List of files:
            /llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp</description>
        <pubDate>Mon, 14 Feb 2022 22:25:27 +0000</pubDate>
        <dc:creator>Jonas Devlieghere &lt;jonas@devlieghere.com&gt;</dc:creator>
    </item>
<item>
        <title>3a3cb929 - [llvm] Use = default (NFC)</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp#3a3cb929</link>
        <description>[llvm] Use = default (NFC)

            List of files:
            /llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp</description>
        <pubDate>Mon, 07 Feb 2022 06:18:35 +0000</pubDate>
        <dc:creator>Kazu Hirata &lt;kazu@google.com&gt;</dc:creator>
    </item>
<item>
        <title>2aed0813 - [llvm] Use true/false instead of 1/0 (NFC)</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp#2aed0813</link>
        <description>[llvm] Use true/false instead of 1/0 (NFC)Identified with modernize-use-bool-literals.

            List of files:
            /llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp</description>
        <pubDate>Fri, 07 Jan 2022 08:39:13 +0000</pubDate>
        <dc:creator>Kazu Hirata &lt;kazu@google.com&gt;</dc:creator>
    </item>
<item>
        <title>34435fd1 - [llvm] Add support for DW_TAG_immutable_type</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp#34435fd1</link>
        <description>[llvm] Add support for DW_TAG_immutable_typeAdded documentation about DW_TAG_immutable_type too.Reviewed By: probinsonDifferential Revision: https://reviews.llvm.org/D113633

            List of files:
            /llvm-project-15.0.7/llvm/lib/DWARFLinker/DWARFLinker.cpp</description>
        <pubDate>Wed, 05 Jan 2022 18:48:41 +0000</pubDate>
        <dc:creator>Lu&#237;s Ferreira &lt;contact@lsferreira.net&gt;</dc:creator>
    </item>
</channel>
</rss>
