Lines Matching refs:OperandSide
34 enum class OperandSide { Left, Right }; enum
73 const Expr *operandExpr(OperandSide Side) const { in operandExpr()
74 return Side == OperandSide::Left ? Op->getLHS() : Op->getRHS(); in operandExpr()
83 bool assumeRequirement(OperandSide Side, BinaryOperator::Opcode Cmp, unsigned Limit);
85 void recordAssumption(OperandSide Side, BinaryOperator::Opcode Cmp, unsigned Limit);
91 BugReportPtr checkOperandNegative(OperandSide Side);
109 if (BugReportPtr BR = checkOperandNegative(OperandSide::Right)) { in run()
116 if (BugReportPtr BR = checkOperandNegative(OperandSide::Left)) { in run()
137 bool BitwiseShiftValidator::assumeRequirement(OperandSide Side, in assumeRequirement()
170 if (assumeRequirement(OperandSide::Right, BO_LT, LHSBitWidth)) in checkOvershift()
173 const SVal Right = Ctx.getSVal(operandExpr(OperandSide::Right)); in checkOvershift()
206 BugReportPtr BitwiseShiftValidator::checkOperandNegative(OperandSide Side) { in checkOperandNegative()
216 Side == OperandSide::Left ? "Left" : "Right", in checkOperandNegative()
222 Side == OperandSide::Left ? "left" : "right") in checkOperandNegative()
237 const Expr *LHS = operandExpr(OperandSide::Left); in checkLeftShiftOverflow()
263 if (assumeRequirement(OperandSide::Right, BO_LT, MaximalAllowedShift + 1)) in checkLeftShiftOverflow()
298 void BitwiseShiftValidator::recordAssumption(OperandSide Side, in recordAssumption()
304 NonNegOperands |= (Side == OperandSide::Left ? NonNegLeft : NonNegRight); in recordAssumption()
307 assert(Side == OperandSide::Right); in recordAssumption()