[clang] llvm#162046 removed urem() call in rotate builtins, called rotl/rotr directly (PR #162113)

via cfe-commits cfe-commits at lists.llvm.org
Mon Oct 6 09:32:12 PDT 2025


llvmbot wrote:


<!--LLVM PR SUMMARY COMMENT-->

@llvm/pr-subscribers-clang

Author: None (rdez13)

<details>
<summary>Changes</summary>

Fixes #<!-- -->162046 

---
Full diff: https://github.com/llvm/llvm-project/pull/162113.diff


1 Files Affected:

- (modified) clang/lib/AST/ExprConstant.cpp (+2-2) 


``````````diff
diff --git a/clang/lib/AST/ExprConstant.cpp b/clang/lib/AST/ExprConstant.cpp
index 7bf28d988f405..a9fedc1df56ce 100644
--- a/clang/lib/AST/ExprConstant.cpp
+++ b/clang/lib/AST/ExprConstant.cpp
@@ -14265,7 +14265,7 @@ bool IntExprEvaluator::VisitBuiltinCallExpr(const CallExpr *E,
         !EvaluateInteger(E->getArg(1), Amt, Info))
       return false;
 
-    return Success(Val.rotl(Amt.urem(Val.getBitWidth())), E);
+    return Success(Val.rotl(Amt), E);
   }
 
   case Builtin::BI__builtin_rotateright8:
@@ -14282,7 +14282,7 @@ bool IntExprEvaluator::VisitBuiltinCallExpr(const CallExpr *E,
         !EvaluateInteger(E->getArg(1), Amt, Info))
       return false;
 
-    return Success(Val.rotr(Amt.urem(Val.getBitWidth())), E);
+    return Success(Val.rotr(Amt), E);
   }
 
   case Builtin::BI__builtin_elementwise_add_sat: {

``````````

</details>


https://github.com/llvm/llvm-project/pull/162113


More information about the cfe-commits mailing list