aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Object/ModuleSymbolTable.cpp
diff options
context:
space:
mode:
authorGeorgi Mirazchiyski <georgi.mirazchiyski@codeplay.com>2024-09-24 11:47:57 +0100
committerGitHub <noreply@github.com>2024-09-24 14:47:57 +0400
commit6cfe6a6b3e9578be80120add7fbe19506f747196 (patch)
tree0cd5695eb0a602b9bfac2868781478d8b43280db /llvm/lib/Object/ModuleSymbolTable.cpp
parent3d34053af61ff45e05d230d2678eb8e95322eb14 (diff)
downloadllvm-6cfe6a6b3e9578be80120add7fbe19506f747196.zip
llvm-6cfe6a6b3e9578be80120add7fbe19506f747196.tar.gz
llvm-6cfe6a6b3e9578be80120add7fbe19506f747196.tar.bz2
[NFC][AMDGPU] Assert no bad shift operations will happen (#108416)
The assumption in the asserts is based on the fact that no SGPR/VGPR register Arg mask in the ISelLowering and Legalizer can equal zero. They are implicitly set to ~0 by default (meaning non-masked) or explicitly to a non-zero value. The `optimizeCompareInstr` case is different from the above described. It requires the mask to be a power-of-two because it's a special-case optimization, hence in this case we still cannot have an invalid shift. This commit also silences static analysis tools wrt potential bad shifts that could result from the output of `countr_zero(Mask)`.
Diffstat (limited to 'llvm/lib/Object/ModuleSymbolTable.cpp')
0 files changed, 0 insertions, 0 deletions