Invariant loads can always be sunk.
Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Paths
| Differential D135133
[Sink] Allow sinking of invariant loads across critical edges ClosedPublic Authored by critson on Oct 4 2022, 1:02 AM.
Details Summary Invariant loads can always be sunk.
Diff Detail
Event TimelineThis revision is now accepted and ready to land.Oct 4 2022, 3:16 AM
Closed by commit rGc316332e1789: [Sink] Allow sinking of invariant loads across critical edges (authored by critson). · Explain WhyOct 5 2022, 5:21 PM This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 465613 llvm/lib/Transforms/Scalar/Sink.cpp
llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.div.fmas.ll
llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.end.cf.i32.ll
llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.end.cf.i64.ll
llvm/test/CodeGen/AMDGPU/GlobalISel/non-entry-alloca.ll
llvm/test/CodeGen/AMDGPU/atomic_optimizations_buffer.ll
llvm/test/CodeGen/AMDGPU/atomic_optimizations_local_pointer.ll
llvm/test/CodeGen/AMDGPU/atomic_optimizations_raw_buffer.ll
llvm/test/CodeGen/AMDGPU/atomic_optimizations_struct_buffer.ll
llvm/test/CodeGen/AMDGPU/branch-relaxation-inst-size-gfx10.ll
llvm/test/CodeGen/AMDGPU/madak.ll
llvm/test/CodeGen/AMDGPU/non-entry-alloca.ll
llvm/test/CodeGen/AMDGPU/sdiv64.ll
llvm/test/CodeGen/AMDGPU/sgpr-control-flow.ll
llvm/test/CodeGen/AMDGPU/si-unify-exit-multiple-unreachables.ll
llvm/test/CodeGen/AMDGPU/srem64.ll
llvm/test/CodeGen/AMDGPU/subreg-coalescer-undef-use.ll
llvm/test/CodeGen/AMDGPU/udiv64.ll
llvm/test/Transforms/Sink/invariant-load.ll
|
Probably should go through the AA query for pointsToConstantMemory instead of directly checking the metadata