<?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 backend-optimization-failure-nodbg.cpp</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>72448525 - [Unroll/UnrollAndJam/Vectorizer/Distribute] Add followup loop attributes.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/Misc/backend-optimization-failure-nodbg.cpp#72448525</link>
        <description>[Unroll/UnrollAndJam/Vectorizer/Distribute] Add followup loop attributes.When multiple loop transformation are defined in a loop&apos;s metadata, their order of execution is defined by the order of their respective passes in the pass pipeline. For instance, e.g.    #pragma clang loop unroll_and_jam(enable)    #pragma clang loop distribute(enable)is the same as    #pragma clang loop distribute(enable)    #pragma clang loop unroll_and_jam(enable)and will try to loop-distribute before Unroll-And-Jam because the LoopDistribute pass is scheduled after UnrollAndJam pass. UnrollAndJamPass only supports one inner loop, i.e. it will necessarily fail after loop distribution. It is not possible to specify another execution order. Also,t the order of passes in the pipeline is subject to change between versions of LLVM, optimization options and which pass manager is used.This patch adds &apos;followup&apos; attributes to various loop transformation passes. These attributes define which attributes the resulting loop of a transformation should have. For instance,    !0 = !{!0, !1, !2}    !1 = !{!&quot;llvm.loop.unroll_and_jam.enable&quot;}    !2 = !{!&quot;llvm.loop.unroll_and_jam.followup_inner&quot;, !3}    !3 = !{!&quot;llvm.loop.distribute.enable&quot;}defines a loop ID (!0) to be unrolled-and-jammed (!1) and then the attribute !3 to be added to the jammed inner loop, which contains the instruction to distribute the inner loop.Currently, in both pass managers, pass execution is in a fixed order and UnrollAndJamPass will not execute again after LoopDistribute. We hope to fix this in the future by allowing pass managers to run passes until a fixpoint is reached, use Polly to perform these transformations, or add a loop transformation pass which takes the order issue into account.For mandatory/forced transformations (e.g. by having been declared by #pragma omp simd), the user must be notified when a transformation could not be performed. It is not possible that the responsible pass emits such a warning because the transformation might be &apos;hidden&apos; in a followup attribute when it is executed, or it is not present in the pipeline at all. For this reason, this patche introduces a WarnMissedTransformations pass, to warn about orphaned transformations.Since this changes the user-visible diagnostic message when a transformation is applied, two test cases in the clang repository need to be updated.To ensure that no other transformation is executed before the intended one, the attribute `llvm.loop.disable_nonforced` can be added which should disable transformation heuristics before the intended transformation is applied. E.g. it would be surprising if a loop is distributed before a #pragma unroll_and_jam is applied.With more supported code transformations (loop fusion, interchange, stripmining, offloading, etc.), transformations can be used as building blocks for more complex transformations (e.g. stripmining+stripmining+interchange -&gt; tiling).Reviewed By: hfinkel, dmgreenDifferential Revision: https://reviews.llvm.org/D49281Differential Revision: https://reviews.llvm.org/D55288llvm-svn: 348944

            List of files:
            /llvm-project-15.0.7/clang/test/Misc/backend-optimization-failure-nodbg.cpp</description>
        <pubDate>Wed, 12 Dec 2018 17:32:52 +0000</pubDate>
        <dc:creator>Michael Kruse &lt;llvm@meinersbur.de&gt;</dc:creator>
    </item>
<item>
        <title>75b1fb9b - Attempt to pacify buildbots after r280217</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/Misc/backend-optimization-failure-nodbg.cpp#75b1fb9b</link>
        <description>Attempt to pacify buildbots after r280217These clang tests check diagnostics from the backend by giving it an unvectorizable loop. This loop is now vectorized :/Make it really unvectorizable by making it unprofitable to ifconvert.llvm-svn: 280220

            List of files:
            /llvm-project-15.0.7/clang/test/Misc/backend-optimization-failure-nodbg.cpp</description>
        <pubDate>Wed, 31 Aug 2016 11:01:41 +0000</pubDate>
        <dc:creator>James Molloy &lt;james.molloy@arm.com&gt;</dc:creator>
    </item>
<item>
        <title>9181785a - Add backend dignostic printer for unsupported features</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/Misc/backend-optimization-failure-nodbg.cpp#9181785a</link>
        <description>Add backend dignostic printer for unsupported featuresRe-commit of r258950 after fixing layering violation.The related LLVM patch adds a backend diagnostic type for reportingunsupported features, this adds a printer for them to clang.In the case where debug location information is not available, I&apos;vechanged the printer to report the location as the first line of thefunction, rather than the closing brace, as the latter does not give theuser any information. This also affects optimisation remarks.llvm-svn: 259499

            List of files:
            /llvm-project-15.0.7/clang/test/Misc/backend-optimization-failure-nodbg.cpp</description>
        <pubDate>Tue, 02 Feb 2016 13:52:52 +0000</pubDate>
        <dc:creator>Oliver Stannard &lt;oliver.stannard@arm.com&gt;</dc:creator>
    </item>
<item>
        <title>92d4c328 - Revert r259036, it introduces a cyclic library dependency</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/Misc/backend-optimization-failure-nodbg.cpp#92d4c328</link>
        <description>Revert r259036, it introduces a cyclic library dependencyllvm-svn: 259043

            List of files:
            /llvm-project-15.0.7/clang/test/Misc/backend-optimization-failure-nodbg.cpp</description>
        <pubDate>Thu, 28 Jan 2016 13:09:49 +0000</pubDate>
        <dc:creator>Oliver Stannard &lt;oliver.stannard@arm.com&gt;</dc:creator>
    </item>
<item>
        <title>7a964fec - Add backend dignostic printer for unsupported features</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/Misc/backend-optimization-failure-nodbg.cpp#7a964fec</link>
        <description>Add backend dignostic printer for unsupported featuresRe-commit of r258950 after fixing layering violation.Add backend dignostic printer for unsupported featuresThe related LLVM patch adds a backend diagnostic type for reportingunsupported features, this adds a printer for them to clang.In the case where debug location information is not available, I&apos;vechanged the printer to report the location as the first line of thefunction, rather than the closing brace, as the latter does not give theuser any information. This also affects optimisation remarks.Differential Revision: http://reviews.llvm.org/D16591llvm-svn: 259036

            List of files:
            /llvm-project-15.0.7/clang/test/Misc/backend-optimization-failure-nodbg.cpp</description>
        <pubDate>Thu, 28 Jan 2016 10:07:34 +0000</pubDate>
        <dc:creator>Oliver Stannard &lt;oliver.stannard@arm.com&gt;</dc:creator>
    </item>
<item>
        <title>628a7a0a - Revert r258951 (and r258950), &quot;Refactor backend diagnostics for unsupported features&quot;</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/Misc/backend-optimization-failure-nodbg.cpp#628a7a0a</link>
        <description>Revert r258951 (and r258950), &quot;Refactor backend diagnostics for unsupported features&quot;It broke layering violation in LLVMIR.clang r258950 &quot;Add backend dignostic printer for unsupported features&quot;llvm  r258951 &quot;Refactor backend diagnostics for unsupported features&quot;llvm-svn: 259016

            List of files:
            /llvm-project-15.0.7/clang/test/Misc/backend-optimization-failure-nodbg.cpp</description>
        <pubDate>Thu, 28 Jan 2016 04:41:32 +0000</pubDate>
        <dc:creator>NAKAMURA Takumi &lt;geek4civic@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>5e03a4b8 - Add backend dignostic printer for unsupported features</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/Misc/backend-optimization-failure-nodbg.cpp#5e03a4b8</link>
        <description>Add backend dignostic printer for unsupported featuresThe related LLVM patch adds a backend diagnostic type for reportingunsupported features, this adds a printer for them to clang.In the case where debug location information is not available, I&apos;vechanged the printer to report the location as the first line of thefunction, rather than the closing brace, as the latter does not give theuser any information. This also affects optimisation remarks.Differential Revision: http://reviews.llvm.org/D16591llvm-svn: 258950

            List of files:
            /llvm-project-15.0.7/clang/test/Misc/backend-optimization-failure-nodbg.cpp</description>
        <pubDate>Wed, 27 Jan 2016 17:30:28 +0000</pubDate>
        <dc:creator>Oliver Stannard &lt;oliver.stannard@arm.com&gt;</dc:creator>
    </item>
<item>
        <title>86f884ed - Fix BackendConsumer::EmitOptimizationMessage()</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/Misc/backend-optimization-failure-nodbg.cpp#86f884ed</link>
        <description>Fix BackendConsumer::EmitOptimizationMessage()Patch from Geoff Berry &lt;gberry@codeaurora.org&gt;Fix BackendConsumer::EmitOptimizationMessage() to check if theDiagnosticInfoOptimizationBase object has a valid location beforecalling getLocation() to avoid dereferencing a null pointer insidegetLocation() when no debug info is present.llvm-svn: 236898

            List of files:
            /llvm-project-15.0.7/clang/test/Misc/backend-optimization-failure-nodbg.cpp</description>
        <pubDate>Fri, 08 May 2015 20:59:56 +0000</pubDate>
        <dc:creator>Diego Novillo &lt;dnovillo@google.com&gt;</dc:creator>
    </item>
</channel>
</rss>
