summaryrefslogtreecommitdiffstats
path: root/clang/lib/AST
diff options
context:
space:
mode:
authorAnders Carlsson <andersca@mac.com>2014-07-07 15:53:44 +0000
committerAnders Carlsson <andersca@mac.com>2014-07-07 15:53:44 +0000
commit1a9fe3d4db40b1ab33cfd6b2a95a6c71048c63f8 (patch)
tree354af01e053f6cf4d52fc39b5664510118c6dd23 /clang/lib/AST
parentccef89db6550532d903ecd18b429be02ea6857ec (diff)
downloadbcm5719-llvm-1a9fe3d4db40b1ab33cfd6b2a95a6c71048c63f8.tar.gz
bcm5719-llvm-1a9fe3d4db40b1ab33cfd6b2a95a6c71048c63f8.zip
Handle __builtin_clzs and __builtin_ctzs in the constant expression evaluator.
llvm-svn: 212464
Diffstat (limited to 'clang/lib/AST')
-rw-r--r--clang/lib/AST/ExprConstant.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/clang/lib/AST/ExprConstant.cpp b/clang/lib/AST/ExprConstant.cpp
index 3e8a0d0dc14..3552d659303 100644
--- a/clang/lib/AST/ExprConstant.cpp
+++ b/clang/lib/AST/ExprConstant.cpp
@@ -6053,7 +6053,8 @@ bool IntExprEvaluator::VisitCallExpr(const CallExpr *E) {
case Builtin::BI__builtin_clz:
case Builtin::BI__builtin_clzl:
- case Builtin::BI__builtin_clzll: {
+ case Builtin::BI__builtin_clzll:
+ case Builtin::BI__builtin_clzs: {
APSInt Val;
if (!EvaluateInteger(E->getArg(0), Val, Info))
return false;
@@ -6068,7 +6069,8 @@ bool IntExprEvaluator::VisitCallExpr(const CallExpr *E) {
case Builtin::BI__builtin_ctz:
case Builtin::BI__builtin_ctzl:
- case Builtin::BI__builtin_ctzll: {
+ case Builtin::BI__builtin_ctzll:
+ case Builtin::BI__builtin_ctzs: {
APSInt Val;
if (!EvaluateInteger(E->getArg(0), Val, Info))
return false;
OpenPOWER on IntegriCloud