aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Basic/SourceManager.cpp
diff options
context:
space:
mode:
authorNoah Goldstein <goldstein.w.n@gmail.com>2023-01-27 17:26:19 -0600
committerNoah Goldstein <goldstein.w.n@gmail.com>2023-01-27 17:45:35 -0600
commitaa250ceb3ff15d55bb506b4bc8196f143133d8b5 (patch)
treee4f35aadbd0f107ecbc30b72b014c4b383a74258 /clang/lib/Basic/SourceManager.cpp
parent44977a155f24be3cdbcd2a57acbfd6da2529abde (diff)
downloadllvm-aa250ceb3ff15d55bb506b4bc8196f143133d8b5.zip
llvm-aa250ceb3ff15d55bb506b4bc8196f143133d8b5.tar.gz
llvm-aa250ceb3ff15d55bb506b4bc8196f143133d8b5.tar.bz2
Add optimizations for icmp eq/ne (mul(X, Y), 0)
1. Add checks if X and/or Y are odd. The Odd values are unnecessary to the icmp: isZero(Odd * N) == isZero(N) 2. If neither X nor Y is known odd, then if X * Y cannot overflow AND if X and/or Y is non-zero, the non-zero values are unnecessary to the icmp. Reviewed By: nikic Differential Revision: https://reviews.llvm.org/D140850
Diffstat (limited to 'clang/lib/Basic/SourceManager.cpp')
0 files changed, 0 insertions, 0 deletions