aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@gmail.com>2020-02-07 21:33:39 -0800
committerCraig Topper <craig.topper@gmail.com>2020-02-07 22:25:56 -0800
commit2af1640f9aa4ebe5d447586bbdad6514312bb814 (patch)
tree550fff7e17fb66304209ca8c7977c2db3a66767b /clang/lib/Frontend/CompilerInvocation.cpp
parent4dcc029edbe4bd5e30d4f0cdcf123ea4ed2b6418 (diff)
downloadllvm-2af1640f9aa4ebe5d447586bbdad6514312bb814.zip
llvm-2af1640f9aa4ebe5d447586bbdad6514312bb814.tar.gz
llvm-2af1640f9aa4ebe5d447586bbdad6514312bb814.tar.bz2
[LegalizeDAG][X86][AMDGPU] Use ANY_EXTEND instead of ZERO_EXTEND when promoting ISD::CTTZ/CTTZ_ZERO_UNDEF.
Summary: For CTTZ we place a set bit just past where the non-promoted type stopped so the extended bits won't be used for the count. For CTTZ_ZERO_UNDEF we don't care what happens if no bits are set in the original type and we end up counting into the extended bits. So we can just use ANY_EXTEND for both cases. This matches what is done in type legalization for these operations. We make no effort to force the upper bits to zero. Differential Revision: https://reviews.llvm.org/D74111
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions