[PATCH] D69498: IR: Invert convergent attribute handling

John McCall via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Mon Oct 28 14:30:24 PDT 2019


rjmccall added a comment.

The kind of tracking that you're doing of convergent operations is one example of a basically limitless set of "taint" analyses, of which half a dozen already exist in LLVM.  I object to the idea that an arbitrary number of unrelated tests need to be changed every time somebody invents a new taint analysis.  I also object to the idea that frontends have a responsibility to proactively compensate for every new weird target-specific representation change just to get the optimizer to perform standard transformations that fully respect the documented semantics of LLVM IR.  The basic problem at the root of convergence analysis — that code layout is essentially part of GPU program semantics because of its impact on GPU thread groups — is in fact a very special property of GPU targets that is not in any way unreasonable to ask those targets to be explicit about.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D69498/new/

https://reviews.llvm.org/D69498





More information about the cfe-commits mailing list