<?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 openmp-opt-module.ll</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>a413663d - [NewPM][test] Avoid using -enable-new-pm=1 since -passes implies new PM</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/Transforms/PhaseOrdering/openmp-opt-module.ll#a413663d</link>
        <description>[NewPM][test] Avoid using -enable-new-pm=1 since -passes implies new PM

            List of files:
            /llvm-project-15.0.7/llvm/test/Transforms/PhaseOrdering/openmp-opt-module.ll</description>
        <pubDate>Wed, 20 Oct 2021 09:28:07 +0000</pubDate>
        <dc:creator>Bjorn Pettersson &lt;bjorn.a.pettersson@ericsson.com&gt;</dc:creator>
    </item>
<item>
        <title>d9659bf6 - [OpenMP] Create custom state machines for generic target regions</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/Transforms/PhaseOrdering/openmp-opt-module.ll#d9659bf6</link>
        <description>[OpenMP] Create custom state machines for generic target regionsIn the spirit of TRegions [0], this patch creates a custom statemachine for a generic target region based on the potentially calledparallel regions.The code analysis is done interprocedurally via an abstract attribute(AAKernelInfo). All outermost parallel regions are collected and wecheck if there might be unknown outermost parallel regions for whichwe need an indirect call. Other AAKernelInfo extensions are expected.[0] https://link.springer.com/chapter/10.1007/978-3-030-28596-8_11Differential Revision: https://reviews.llvm.org/D101977

            List of files:
            /llvm-project-15.0.7/llvm/test/Transforms/PhaseOrdering/openmp-opt-module.ll</description>
        <pubDate>Thu, 20 May 2021 05:37:29 +0000</pubDate>
        <dc:creator>Johannes Doerfert &lt;johannes@jdoerfert.de&gt;</dc:creator>
    </item>
<item>
        <title>5ccb7424 - [OpenMP] Change OpenMPOpt to check openmp metadata</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/Transforms/PhaseOrdering/openmp-opt-module.ll#5ccb7424</link>
        <description>[OpenMP] Change OpenMPOpt to check openmp metadataThe metadata added in D102361 introduces a module flag that we can checkto determine if the module was compiled with `-fopenmp` enables. We cannow check for the precense of this instead of scanning the call graphfor OpenMP runtime functions.Depends on D102361Reviewed By: jdoerfertDifferential Revision: https://reviews.llvm.org/D102423

            List of files:
            /llvm-project-15.0.7/llvm/test/Transforms/PhaseOrdering/openmp-opt-module.ll</description>
        <pubDate>Thu, 24 Jun 2021 21:11:54 +0000</pubDate>
        <dc:creator>Joseph Huber &lt;jhuber6@vols.utk.edu&gt;</dc:creator>
    </item>
<item>
        <title>44feacc7 - [OpenMP] Change remaining globalization from an analysis remark to missed</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/Transforms/PhaseOrdering/openmp-opt-module.ll#44feacc7</link>
        <description>[OpenMP] Change remaining globalization from an analysis remark to missedAfter landing the globalization optimizations, the precense of globalization onthe device that was not put in shared or stack memory is a failed optimizationwith performance consequences so it should indicate a missed remark.Reviewed By: jdoerfertDifferential Revision: https://reviews.llvm.org/D104735

            List of files:
            /llvm-project-15.0.7/llvm/test/Transforms/PhaseOrdering/openmp-opt-module.ll</description>
        <pubDate>Tue, 22 Jun 2021 18:57:52 +0000</pubDate>
        <dc:creator>Joseph Huber &lt;jhuber6@vols.utk.edu&gt;</dc:creator>
    </item>
<item>
        <title>7d69da71 - [OpenMP] Enable HeapToStack conversion in OpenMPOpt for new RTL globalization calls</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/Transforms/PhaseOrdering/openmp-opt-module.ll#7d69da71</link>
        <description>[OpenMP] Enable HeapToStack conversion in OpenMPOpt for new RTL globalization callsSummary:The changes to globalization introduced in D97680 introduce a large amount of overhead by default. The old globalization method would always ignore globalization code if executing in SPMD mode. This wasn&apos;t strictly correct as data sharing is still possible in SPMD mode. The new interface is correct but introduces globalization code even when unnecessary. This optimization will use the existing HeapToStack transformation in the attributor to allow for unneeded globalization to be replaced with thread-private stack memory. This is done using the newly introduced library instances for the RTL functions added in D102087.Depends on D97818Reviewed By: jdoerfertDifferential Revision: https://reviews.llvm.org/D102197

            List of files:
            /llvm-project-15.0.7/llvm/test/Transforms/PhaseOrdering/openmp-opt-module.ll</description>
        <pubDate>Mon, 07 Jun 2021 17:24:30 +0000</pubDate>
        <dc:creator>Joseph Huber &lt;jhuber6@vols.utk.edu&gt;</dc:creator>
    </item>
<item>
        <title>68d133a3 - [OpenMP] Simplify GPU memory globalization</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/Transforms/PhaseOrdering/openmp-opt-module.ll#68d133a3</link>
        <description>[OpenMP] Simplify GPU memory globalizationSummary:Memory globalization is required to maintain OpenMP standard semantics for data sharing betweenworker and master threads. The GPU cannot share data between its threads so must allocate global orshared memory to store the data in. Currently this is implemented fully in the frontend using the`__kmpc_data_sharing_push_stack` and __kmpc_data_sharing_pop_stack` functions to emulate standardCPU stack sharing. The front-end scans the target region for variables that escape the region andmust be shared between the threads. Each variable then has a field created for it in a global recordtype.This patch replaces this functinality with a single allocation command, effectively mimicing analloca instruction for the variables that must be shared between the threads. This will be muchslower than the current solution, but makes it much easier to optimize as we can analyze eachvariable independently and determine if it is not captured. In the future, we can replace thesecalls with an `alloca` and small allocations can be pushed to shared memory.Reviewed By: tianshilei1992Differential Revision: https://reviews.llvm.org/D97680

            List of files:
            /llvm-project-15.0.7/llvm/test/Transforms/PhaseOrdering/openmp-opt-module.ll</description>
        <pubDate>Mon, 22 Mar 2021 20:34:11 +0000</pubDate>
        <dc:creator>Joseph Huber &lt;jhuber6@vols.utk.edu&gt;</dc:creator>
    </item>
<item>
        <title>b2ad63d3 - [OpenMP] Add OpenMPOpt as a Module pass</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/Transforms/PhaseOrdering/openmp-opt-module.ll#b2ad63d3</link>
        <description>[OpenMP] Add OpenMPOpt as a Module passSummary:This patch registers OpenMPOpt as a Module pass in addition to a CGSCCpass. This is so certain optimzations that are sensitive to intactcall-sites can happen before inlining. The old `openmpopt` pass name ischanged to `openmp-opt-cgscc` and `openmp-opt` calls the Module pass.The current module pass only runs a single check but will be expanded inthe future.Reviewed By: jdoerfertDifferential Revision: https://reviews.llvm.org/D99202

            List of files:
            /llvm-project-15.0.7/llvm/test/Transforms/PhaseOrdering/openmp-opt-module.ll</description>
        <pubDate>Wed, 24 Mar 2021 14:11:32 +0000</pubDate>
        <dc:creator>Joseph Huber &lt;jhuber6@vols.utk.edu&gt;</dc:creator>
    </item>
</channel>
</rss>
