diff options
author | Jay Foad <jay.foad@amd.com> | 2023-06-15 17:45:17 +0100 |
---|---|---|
committer | Jay Foad <jay.foad@amd.com> | 2023-06-16 17:15:52 +0100 |
commit | 84313162bf79a4c16ad3edd2a2e6accad569a907 (patch) | |
tree | 9630b29b648715ee68be46ad4c15891008ec4a41 /llvm/lib/Transforms/Utils/CloneModule.cpp | |
parent | 82d330e0e04a55ee95dc93980761545a01543fde (diff) | |
download | llvm-84313162bf79a4c16ad3edd2a2e6accad569a907.zip llvm-84313162bf79a4c16ad3edd2a2e6accad569a907.tar.gz llvm-84313162bf79a4c16ad3edd2a2e6accad569a907.tar.bz2 |
[AMDGPU] Stop replacing amdgcn.ballot(1) with amdgcn.s.getreg(exec)
Rationale:
- It does not enable any further IR simplifications.
- It does not improve the generated code since the isel lowering of
ballot also has special cases for 0 and 1.
- getreg is "too powerful" since it can read from many different
registers, so its intrinsic properties have to be set very
conservatively.
There is also a correctness problem that getreg can read from exec but
it is currently not marked as convergent.
Differential Revision: https://reviews.llvm.org/D153047
Diffstat (limited to 'llvm/lib/Transforms/Utils/CloneModule.cpp')
0 files changed, 0 insertions, 0 deletions