search for: d85603

Displaying 5 results from an estimated 5 matches for "d85603".

2020 Aug 09
2
_mm_lfence in both pathes of an if/else are hoisted by SimplfyCFG potentially breaking use as a speculation barrier
Hi Craig, The review for the similar GPU problem is now up here: https://reviews.llvm.org/D85603 (+ some other patches on the Phabricator stack). >From a pragmatic perspective, the constraints added to program transforms there are sufficient for what you need. You'd produce IR such as: %token = call token @llvm.experimental.convergence.anchor() br i1 %c, label %then, label %el...
2020 Aug 09
2
[RFC] Introducing convergence control bundles and intrinsics
Hi all, please see https://reviews.llvm.org/D85603 and its related changes for our most recent and hopefully final attempt at putting the `convergent` attribute on a solid theoretical foundation in a way that is useful for modern GPU compiler use cases. We have clear line of sight to enabling a new control flow implementation in the AMDGPU back...
2020 Aug 17
2
[RFC] Introducing convergence control bundles and intrinsics
...ergent` on most things, but that effort got stuck. In the meantime, let's avoid adding yet another odd duck like this :) Cheers, Nicolai > > -Hal > > On 8/9/20 10:03 AM, Nicolai Hähnle via llvm-dev wrote: > > Hi all, > > > > please see https://reviews.llvm.org/D85603 and its related changes for > > our most recent and hopefully final attempt at putting the > > `convergent` attribute on a solid theoretical foundation in a way that > > is useful for modern GPU compiler use cases. We have clear line of > > sight to enabling a new control fl...
2020 Aug 17
2
[RFC] Introducing convergence control bundles and intrinsics
...s others are affected as well. Cheers, Nicolai > > -Hal > > > > > > > >> -Hal > >> > >> On 8/9/20 10:03 AM, Nicolai Hähnle via llvm-dev wrote: > >>> Hi all, > >>> > >>> please see https://reviews.llvm.org/D85603 and its related changes for > >>> our most recent and hopefully final attempt at putting the > >>> `convergent` attribute on a solid theoretical foundation in a way that > >>> is useful for modern GPU compiler use cases. We have clear line of > >>> si...
2020 Jul 28
2
_mm_lfence in both pathes of an if/else are hoisted by SimplfyCFG potentially breaking use as a speculation barrier
_mm_lfence was originally documented as a load fence. But in light of speculative execution vulnerabilities it has started being advertised as a way to prevent speculative execution. Current Intel Software Development Manual documents it as "Specifically, LFENCE does not execute until all prior instructions have completed locally, and no later instruction begins execution until LFENCE