[all-commits] [llvm/llvm-project] 2a971a: MachineUniformityAnalysis: Improve isConstantOrUnd...
Petar Avramovic via All-commits
all-commits at lists.llvm.org
Fri Oct 18 02:25:56 PDT 2024
Branch: refs/heads/users/petar-avramovic/new-rbs-phis-with-undef
Home: https://github.com/llvm/llvm-project
Commit: 2a971ab65fceaddd47a0bd8f3f961001527a2fa7
https://github.com/llvm/llvm-project/commit/2a971ab65fceaddd47a0bd8f3f961001527a2fa7
Author: Petar Avramovic <Petar.Avramovic at amd.com>
Date: 2024-10-18 (Fri, 18 Oct 2024)
Changed paths:
M llvm/lib/CodeGen/MachineSSAContext.cpp
M llvm/test/Analysis/UniformityAnalysis/AMDGPU/MIR/hidden-diverge-gmir.mir
M llvm/test/Analysis/UniformityAnalysis/AMDGPU/MIR/hidden-loop-diverge.mir
M llvm/test/Analysis/UniformityAnalysis/AMDGPU/MIR/uses-value-from-cycle.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-structurizer.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-mui-rb-legalize.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-mui-rb-select.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-mui.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-mui.mir
Log Message:
-----------
MachineUniformityAnalysis: Improve isConstantOrUndefValuePhi
Change existing code to match what LLVM-IR version is doing via
PHINode::hasConstantOrUndefValue.
Most notably this improves number of values that can be allocated
to sgpr in AMDGPU's RBSelect.
Common case here are phis that appear in structurize-cfg lowering
for cycles with multiple exits:
Undef incoming value is coming from block that reached cycle exit
condition, if other incoming is uniform keep the phi uniform despite
the fact it is joining values from pair of blocks that are entered
via divergent condition branch.
Change-Id: Icebace107d5669f3306feb66e6fef8bf5d389774
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list