[clang] 7ebf3e0 - [StaticAnalyzer] Remove isShiftOverflow and isLeftShiftResultUnrepresentable
Kazu Hirata via cfe-commits
cfe-commits at lists.llvm.org
Fri Sep 29 12:47:44 PDT 2023
Author: Kazu Hirata
Date: 2023-09-29T12:47:31-07:00
New Revision: 7ebf3e019488bcc6209df757e823b08f631aa897
URL: https://github.com/llvm/llvm-project/commit/7ebf3e019488bcc6209df757e823b08f631aa897
DIFF: https://github.com/llvm/llvm-project/commit/7ebf3e019488bcc6209df757e823b08f631aa897.diff
LOG: [StaticAnalyzer] Remove isShiftOverflow and isLeftShiftResultUnrepresentable
This patch fixes:
clang/lib/StaticAnalyzer/Checkers/UndefResultChecker.cpp:61:13:
error: unused function 'isShiftOverflow' [-Werror,-Wunused-function]
clang/lib/StaticAnalyzer/Checkers/UndefResultChecker.cpp:66:13:
error: unused function 'isLeftShiftResultUnrepresentable'
[-Werror,-Wunused-function]
Added:
Modified:
clang/lib/StaticAnalyzer/Checkers/UndefResultChecker.cpp
Removed:
################################################################################
diff --git a/clang/lib/StaticAnalyzer/Checkers/UndefResultChecker.cpp b/clang/lib/StaticAnalyzer/Checkers/UndefResultChecker.cpp
index 5f37b915deb8a02..d593a6bd74cfea3 100644
--- a/clang/lib/StaticAnalyzer/Checkers/UndefResultChecker.cpp
+++ b/clang/lib/StaticAnalyzer/Checkers/UndefResultChecker.cpp
@@ -58,21 +58,6 @@ static bool isArrayIndexOutOfBounds(CheckerContext &C, const Expr *Ex) {
return StOutBound && !StInBound;
}
-static bool isShiftOverflow(const BinaryOperator *B, CheckerContext &C) {
- return C.isGreaterOrEqual(
- B->getRHS(), C.getASTContext().getIntWidth(B->getLHS()->getType()));
-}
-
-static bool isLeftShiftResultUnrepresentable(const BinaryOperator *B,
- CheckerContext &C) {
- SValBuilder &SB = C.getSValBuilder();
- ProgramStateRef State = C.getState();
- const llvm::APSInt *LHS = SB.getKnownValue(State, C.getSVal(B->getLHS()));
- const llvm::APSInt *RHS = SB.getKnownValue(State, C.getSVal(B->getRHS()));
- assert(LHS && RHS && "Values unknown, inconsistent state");
- return (unsigned)RHS->getZExtValue() > LHS->countl_zero();
-}
-
void UndefResultChecker::checkPostStmt(const BinaryOperator *B,
CheckerContext &C) const {
if (C.getSVal(B).isUndef()) {
More information about the cfe-commits
mailing list