<?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 DwarfCompileUnit.h</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>ed98c1b3 - Cleanup includes: DebugInfo &amp; CodeGen</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h#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/CodeGen/AsmPrinter/DwarfCompileUnit.h</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>9554aaa2 - [Dwarf] Optimize getOrCreateSourceID() for repeated calls on same file (NFCI)</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h#9554aaa2</link>
        <description>[Dwarf] Optimize getOrCreateSourceID() for repeated calls on same file (NFCI)DwarfCompileUnit::getOrCreateSourceID() is often called many timesin sequence with the same DIFile. This is currently very expensive,because it involves creating a string from directory and file nameand looking it up in a string map. This patch remembers the lastDIFile and its ID and directly returns that.This gives a geomean -1.3% compile-time improvement on CTMark O0-g.Differential Revision: https://reviews.llvm.org/D118041

            List of files:
            /llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h</description>
        <pubDate>Mon, 24 Jan 2022 13:29:05 +0000</pubDate>
        <dc:creator>Nikita Popov &lt;npopov@redhat.com&gt;</dc:creator>
    </item>
<item>
        <title>81378f7e - Revert &quot;[DwarfDebug] Support emitting function-local declaration for a lexical block&quot; &amp; dependent patches</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h#81378f7e</link>
        <description>Revert &quot;[DwarfDebug] Support emitting function-local declaration for a lexical block&quot; &amp; dependent patchesTry to revert D113741 once again.This also reverts 0ac75e82fff93a80ca401d3db3541e8d1d9098f9 (D114705)as it causes LLDB&apos;s lldb-api.lang/cpp/nsimport.TestCppNsImport.py testfailure w/o D113741.This reverts commit f9607d45f399e2afc39ec16222ea68b4e0831564.Differential Revision: https://reviews.llvm.org/D116225

            List of files:
            /llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h</description>
        <pubDate>Thu, 23 Dec 2021 16:10:52 +0000</pubDate>
        <dc:creator>Kristina Bessonova &lt;kbessonova@accesssoftek.com&gt;</dc:creator>
    </item>
<item>
        <title>f9607d45 - Revert &quot;Revert &quot;[DwarfDebug] Support emitting function-local declaration for a lexical block&quot; &amp; dependent patches&quot;</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h#f9607d45</link>
        <description>Revert &quot;Revert &quot;[DwarfDebug] Support emitting function-local declaration for a lexical block&quot; &amp; dependent patches&quot;This has broke following LLDB buildbots:https://lab.llvm.org/buildbot/#/builders/17/builds/14984https://lab.llvm.org/buildbot/#/builders/96/builds/15928https://lab.llvm.org/buildbot/#/builders/68/builds/23600This reverts commit 62a6b9e9ab3eb778111e90a34fee1e6a7c64db8a.

            List of files:
            /llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h</description>
        <pubDate>Thu, 23 Dec 2021 09:08:37 +0000</pubDate>
        <dc:creator>Muhammad Omair Javaid &lt;omair.javaid@linaro.org&gt;</dc:creator>
    </item>
<item>
        <title>62a6b9e9 - Revert &quot;[DwarfDebug] Support emitting function-local declaration for a lexical block&quot; &amp; dependent patches</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h#62a6b9e9</link>
        <description>Revert &quot;[DwarfDebug] Support emitting function-local declaration for a lexical block&quot; &amp; dependent patchesThis patch causes invalid DWARF to be generated in some cases of LTO +Split DWARF - follow-up on the original review thread (D113741) containsfurther detail and test cases.This reverts commit 75b622a7959479ccdb758ebe0973061b7b4fcacd.This reverts commit b6ccca217c35a95b8c2a337a7801b37cb23dbae2.This reverts commit 514d37441918dd04a2cd4f35c08959d7c3ff096d.

            List of files:
            /llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h</description>
        <pubDate>Wed, 22 Dec 2021 22:29:41 +0000</pubDate>
        <dc:creator>David Blaikie &lt;dblaikie@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>75b622a7 - Reland [DwarfDebug] Support emitting function-local declaration for a lexical block</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h#75b622a7</link>
        <description>Reland [DwarfDebug] Support emitting function-local declaration for a lexical blockThis is another attempt to make function-local declarations(like static variables, structs/classes and other) be correctlyemitted within a lexical (bracketed) block.Fixes https://bugs.llvm.org/show_bug.cgi?id=19238.Reviewed By: dblaikieDifferential Revision: https://reviews.llvm.org/D113741

            List of files:
            /llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h</description>
        <pubDate>Sat, 04 Dec 2021 15:12:47 +0000</pubDate>
        <dc:creator>Kristina Bessonova &lt;kbessonova@accesssoftek.com&gt;</dc:creator>
    </item>
<item>
        <title>a9616048 - Revert &quot;[DwarfDebug] Support emitting function-local declaration for a lexical block&quot;</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h#a9616048</link>
        <description>Revert &quot;[DwarfDebug] Support emitting function-local declaration for a lexical block&quot;This reverts commits* ee691970a9a85470948ada623c31f0ab8773617c (D113741),* 79d3132998b2828be8f7d2ec411f91fb11b3e01f (D114705)due to lldb and dexter test failures.

            List of files:
            /llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h</description>
        <pubDate>Sat, 04 Dec 2021 16:03:46 +0000</pubDate>
        <dc:creator>Kristina Bessonova &lt;kbessonova@accesssoftek.com&gt;</dc:creator>
    </item>
<item>
        <title>ee691970 - [DwarfDebug] Support emitting function-local declaration for a lexical block</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h#ee691970</link>
        <description>[DwarfDebug] Support emitting function-local declaration for a lexical blockThis is another attempt to make function-local declarations(like static variables, structs/classes and other) be correctlyemitted within a lexical (bracketed) block.Fixes https://bugs.llvm.org/show_bug.cgi?id=19238.Differential Revision: https://reviews.llvm.org/D113741

            List of files:
            /llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h</description>
        <pubDate>Sat, 04 Dec 2021 15:12:47 +0000</pubDate>
        <dc:creator>Kristina Bessonova &lt;kbessonova@accesssoftek.com&gt;</dc:creator>
    </item>
<item>
        <title>90432893 - [DwarfCompileUnit] Set parent DIE right after creating a local entity</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h#90432893</link>
        <description>[DwarfCompileUnit] Set parent DIE right after creating a local entityNo functional changes intended.Before this patch DwarfCompileUnit::createScopeChildrenDIE() andDwarfCompileUnit::createAndAddScopeChildrenDIE() used to emit child subtreesand then when all the children get created, attach them to a parent scope DIE.However, when a DIE doesn&apos;t have a parent, all the requests for its unit DIEfail.Currently, this is not a big issue since it isn&apos;t usually needed to know unit DIEfor a local (function-scoped) entity. But once we introduce lexical blocks asa valid scope for global variables (static locals) and type DIEs, any requestsfor a unit DIE need to be guarded against local scope due to the potentialabsence of the DIE&apos;s parent.To avoid the aforementioned issue, this patch refactors a few DwarfCompileUnitmethods to support the idea of attaching a DIE to its parent as close to thecreation of this DIE as possible.Reviewed By: ellisDifferential Revision: https://reviews.llvm.org/D114350

            List of files:
            /llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h</description>
        <pubDate>Sat, 27 Nov 2021 15:56:40 +0000</pubDate>
        <dc:creator>Kristina Bessonova &lt;kbessonova@accesssoftek.com&gt;</dc:creator>
    </item>
<item>
        <title>d4ce9e46 - [DWARF] Revert sharing subprograms across CUs</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h#d4ce9e46</link>
        <description>[DWARF] Revert sharing subprograms across CUsThis patch is a revert of e08f205f5c2c. In that patch, DW_TAG_subprogramswere permitted to be referenced across CU boundaries, to improve stacktrace construction using call site information. Unfortunately, asdocumented in PR48790, the way that subprograms are &quot;owned&quot; by dwarf unitsis sufficiently complicated that subprograms end up in unexpected units,invalidating cross-unit references.There&apos;s no obvious way to easily fix this, and several attempts havefailed. Revert this to ensure correct DWARF is always emitted.Three tests change in addition to the reversion, but they&apos;re all verylight alterations.Differential Revision: https://reviews.llvm.org/D107076

            List of files:
            /llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h</description>
        <pubDate>Mon, 09 Aug 2021 11:40:21 +0000</pubDate>
        <dc:creator>Jeremy Morse &lt;jeremy.morse@sony.com&gt;</dc:creator>
    </item>
<item>
        <title>5dd1c591 - [DebugInfo] Fix emitting DWARF64 compilation units (5/19).</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h#5dd1c591</link>
        <description>[DebugInfo] Fix emitting DWARF64 compilation units (5/19).The patch also adds a method to choose an appropriate DWARF formto represent section offsets according to the version and the formatof producing debug info.Differential Revision: https://reviews.llvm.org/D87014

            List of files:
            /llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h</description>
        <pubDate>Tue, 15 Sep 2020 04:30:30 +0000</pubDate>
        <dc:creator>Igor Kudrin &lt;ikudrin@accesssoftek.com&gt;</dc:creator>
    </item>
<item>
        <title>d400606f - [DebugInfo] Fix initialization of DwarfCompileUnit::LabelBegin.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h#d400606f</link>
        <description>[DebugInfo] Fix initialization of DwarfCompileUnit::LabelBegin.This also fixes the condition in the assertion inDwarfCompileUnit::getLabelBegin() because it checked something unrelatedto the returned value.Differential Revision: https://reviews.llvm.org/D85437

            List of files:
            /llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h</description>
        <pubDate>Mon, 10 Aug 2020 08:56:30 +0000</pubDate>
        <dc:creator>Igor Kudrin &lt;ikudrin@accesssoftek.com&gt;</dc:creator>
    </item>
<item>
        <title>1c060aa9 - DwarfCompileUnit.cpp - remove duplicate includes that already exist in DwarfCompileUnit.h. NFC.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h#1c060aa9</link>
        <description>DwarfCompileUnit.cpp - remove duplicate includes that already exist in DwarfCompileUnit.h. NFC.Also remove DIE.h include from DwarfCompileUnit.h and replace with forward declarations.

            List of files:
            /llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h</description>
        <pubDate>Wed, 22 Jul 2020 18:00:28 +0000</pubDate>
        <dc:creator>Simon Pilgrim &lt;llvm-dev@redking.me.uk&gt;</dc:creator>
    </item>
<item>
        <title>0d71782f - [DebugInfo]: Allow DwarfCompileUnit to have line table symbol</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h#0d71782f</link>
        <description>[DebugInfo]: Allow DwarfCompileUnit to have line table symbolPreviously line table symbol was represented as `DIE::value_iterator`inside `DwarfCompileUnit` and subsequent function `intStmtList`was used to create a local `MCSymbol` to initialize it.This patch removes `DIE::value_iterator` from `DwarfCompileUnit`and intoduce `MCSymbol` for representing this units symbol for`debug_line` section. As a result `applyStmtList` is also modified to utilize this. Further more a helper function `getLineTableStartSym`is also introduced to get this symbol, this would be used by clientswhich need to access this line table, i.e `debug_macro`.Reviewed By: dblaikieDifferential Revision: https://reviews.llvm.org/D77489

            List of files:
            /llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h</description>
        <pubDate>Sat, 04 Apr 2020 19:29:11 +0000</pubDate>
        <dc:creator>Sourabh Singh Tomar &lt;SourabhSingh.Tomar@amd.com&gt;</dc:creator>
    </item>
<item>
        <title>f7052da6 - [DWARF] Emit DW_AT_call_pc for tail calls</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h#f7052da6</link>
        <description>[DWARF] Emit DW_AT_call_pc for tail callsRecord the address of a tail-calling branch instruction within its callsite entry using DW_AT_call_pc. This allows a debugger to determine theaddress to use when creating aritificial frames.This creates an extra attribute + relocation at tail call sites, whichconstitute 3-5% of all call sites in xnu/clang respectively.rdar://60307600Differential Revision: https://reviews.llvm.org/D76336

            List of files:
            /llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h</description>
        <pubDate>Wed, 18 Mar 2020 00:56:28 +0000</pubDate>
        <dc:creator>Vedant Kumar &lt;vsk@apple.com&gt;</dc:creator>
    </item>
<item>
        <title>e08f205f - Reland (again): [DWARF] Allow cross-CU references of subprogram definitions</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h#e08f205f</link>
        <description>Reland (again): [DWARF] Allow cross-CU references of subprogram definitionsThis is a revert-of-revert (i.e. this reverts commit 802bec89, whichitself reverted fa4701e1 and 79daafc9) with a fix folded in. The problemwas that call site tags weren&apos;t emitted properly when LTO was enabledalong with split-dwarf. This required a minor fix. I&apos;ve added a reducedtest case in test/DebugInfo/X86/fission-call-site.ll.Original commit message:This allows a call site tag in CU A to reference a callee DIE in CU Bwithout resorting to creating an incomplete duplicate DIE for the calleeinside of CU A.We already allow cross-CU references of subprogram declarations, so itdoesn&apos;t seem like definitions ought to be special.This improves entry value evaluation and tail call frame synthesis inthe LTO setting. During LTO, it&apos;s common for cross-module inlining toproduce a call in some CU A where the callee resides in a different CU,and there is no declaration subprogram for the callee anywhere. In thiscase llvm would (unnecessarily, I think) emit an empty DW_TAG_subprogramin order to fill in the call site tag. That empty &apos;definition&apos; defeatsentry value evaluation etc., because the debugger can&apos;t figure out whatit means.As a follow-up, maybe we could add a DWARF verifier check that aDW_TAG_subprogram at least has a DW_AT_name attribute.Update #1:Reland with a fix to create a declaration DIE when the declaration ismissing from the CU&apos;s retainedTypes list. The declaration is left outof the retainedTypes list in two cases:1) Re-compiling pre-r266445 bitcode (in which declarations weren&apos;t added   to the retainedTypes list), and2) Doing LTO function importing (which doesn&apos;t update the retainedTypes   list).It&apos;s possible to handle (1) and (2) by modifying the retainedTypes list(in AutoUpgrade, or in the LTO importing logic resp.), but I don&apos;t seean advantage to doing it this way, as it would cause more DWARF to beemitted compared to creating the declaration DIEs lazily.Update #2:Fold in a fix for call site tag emission in the split-dwarf + LTO case.Tested with a stage2 ThinLTO+RelWithDebInfo build of clang, and with aReleaseLTO-g build of the test suite.rdar://46577651, rdar://57855316, rdar://57840415, rdar://58888440Differential Revision: https://reviews.llvm.org/D70350

            List of files:
            /llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h</description>
        <pubDate>Sat, 25 Jan 2020 20:52:47 +0000</pubDate>
        <dc:creator>Vedant Kumar &lt;vsk@apple.com&gt;</dc:creator>
    </item>
<item>
        <title>f0120556 - [DWARF] Emit DW_AT_call_return_pc as an address</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h#f0120556</link>
        <description>[DWARF] Emit DW_AT_call_return_pc as an addressThis reverts D53469, which changed llvm&apos;s DWARF emission to emitDW_AT_call_return_pc as a function-local offset. Such an encoding is notcompatible with post-link block re-ordering tools and isn&apos;t standards-compliant.In addition to reverting back to the original DW_AT_call_return_pcencoding, teach lldb how to fix up DW_AT_call_return_pc when the addresscomes from an object file pointed-to by a debug map. While doing this Inoticed that lldb&apos;s support for tail calls that cross a DSO/object fileboundary wasn&apos;t covered, so I added tests for that. This latter caseexercises the newly added return PC fixup.The dsymutil changes in this patch were originally included in D49887:the associated test should be sufficient to test DW_AT_call_return_pcencoding purely on the llvm side.Differential Revision: https://reviews.llvm.org/D72489

            List of files:
            /llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h</description>
        <pubDate>Fri, 10 Jan 2020 02:00:33 +0000</pubDate>
        <dc:creator>Vedant Kumar &lt;vsk@apple.com&gt;</dc:creator>
    </item>
<item>
        <title>789e257c - [DWARF5][Debuginfo] Compilation unit type (DW_UT_skeleton) and root DIE (DW_TAG_compile_unit) do not match.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h#789e257c</link>
        <description>[DWARF5][Debuginfo] Compilation unit type (DW_UT_skeleton) and root DIE (DW_TAG_compile_unit) do not match.That patch fixes incompatible compilation unit type (DW_UT_skeleton) and root DIE (DW_TAG_compile_unit) error.cat split-dwarf.cppint main(){  int a = 1;  return 0;}clang++ -O -g -gsplit-dwarf -gdwarf-5 split-dwarf.cpp; llvm-dwarfdump --verify ./a.out | grep skeletonerror: Compilation unit type (DW_UT_skeleton) and root DIE (DW_TAG_compile_unit) do not match.The fix is to change DW_TAG_compile_unit into DW_TAG_skeleton_unit when skeleton file is generated.Differential Revision: https://reviews.llvm.org/D70880

            List of files:
            /llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h</description>
        <pubDate>Sat, 30 Nov 2019 20:48:32 +0000</pubDate>
        <dc:creator>Alexey Lapshin &lt;a.v.lapshin@mail.ru&gt;</dc:creator>
    </item>
<item>
        <title>58a07148 - [DWARF] Rename getDwarf5OrGNUCallSite{Attr,Tag}, NFC</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h#58a07148</link>
        <description>[DWARF] Rename getDwarf5OrGNUCallSite{Attr,Tag}, NFCllvm-svn: 369967

            List of files:
            /llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h</description>
        <pubDate>Mon, 26 Aug 2019 20:53:34 +0000</pubDate>
        <dc:creator>Vedant Kumar &lt;vsk@apple.com&gt;</dc:creator>
    </item>
<item>
        <title>533dd021 - [DWARF] Pick the DWARF5 OP_entry_value opcode on Darwin</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h#533dd021</link>
        <description>[DWARF] Pick the DWARF5 OP_entry_value opcode on DarwinUse the GNU extension for OP_entry_value consistently (i.e. whenever GNUextensions are used for TAG_call_site).llvm-svn: 369966

            List of files:
            /llvm-project-15.0.7/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h</description>
        <pubDate>Mon, 26 Aug 2019 20:53:12 +0000</pubDate>
        <dc:creator>Vedant Kumar &lt;vsk@apple.com&gt;</dc:creator>
    </item>
</channel>
</rss>
