r339289 - Revert r339287 "[Builtins] Add __builtin_clrsb support to IntExprEvaluator::VisitBuiltinCallExpr"

Craig Topper via cfe-commits cfe-commits at lists.llvm.org
Wed Aug 8 14:21:21 PDT 2018


Author: ctopper
Date: Wed Aug  8 14:21:21 2018
New Revision: 339289

URL: http://llvm.org/viewvc/llvm-project?rev=339289&view=rev
Log:
Revert r339287 "[Builtins] Add __builtin_clrsb support to IntExprEvaluator::VisitBuiltinCallExpr"

This add an additional unintended change in it.

Modified:
    cfe/trunk/lib/AST/ExprConstant.cpp
    cfe/trunk/test/Sema/constant-builtins-2.c

Modified: cfe/trunk/lib/AST/ExprConstant.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/AST/ExprConstant.cpp?rev=339289&r1=339288&r2=339289&view=diff
==============================================================================
--- cfe/trunk/lib/AST/ExprConstant.cpp (original)
+++ cfe/trunk/lib/AST/ExprConstant.cpp Wed Aug  8 14:21:21 2018
@@ -8117,15 +8117,9 @@ bool IntExprEvaluator::VisitBuiltinCallE
   case Builtin::BI__builtin_classify_type:
     return Success((int)EvaluateBuiltinClassifyType(E, Info.getLangOpts()), E);
 
-  case Builtin::BI__builtin_clrsb:
-  case Builtin::BI__builtin_clrsbl:
-  case Builtin::BI__builtin_clrsbll: {
-    APSInt Val;
-    if (!EvaluateInteger(E->getArg(0), Val, Info))
-      return false;
-
-    return Success(Val.getBitWidth() - Val.getMinSignedBits(), E);
-  }
+  // FIXME: BI__builtin_clrsb
+  // FIXME: BI__builtin_clrsbl
+  // FIXME: BI__builtin_clrsbll
 
   case Builtin::BI__builtin_clz:
   case Builtin::BI__builtin_clzl:

Modified: cfe/trunk/test/Sema/constant-builtins-2.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Sema/constant-builtins-2.c?rev=339289&r1=339288&r2=339289&view=diff
==============================================================================
--- cfe/trunk/test/Sema/constant-builtins-2.c (original)
+++ cfe/trunk/test/Sema/constant-builtins-2.c Wed Aug  8 14:21:21 2018
@@ -132,7 +132,7 @@ char isnormal_snan   [!__builtin_isnorma
 char clz1[__builtin_clz(1) == BITSIZE(int) - 1 ? 1 : -1];
 char clz2[__builtin_clz(7) == BITSIZE(int) - 3 ? 1 : -1];
 char clz3[__builtin_clz(1 << (BITSIZE(int) - 1)) == 0 ? 1 : -1];
-//int clz4 = __builtin_clz(0); // expected-error {{not a compile-time constant}}
+int clz4 = __builtin_clz(0); // expected-error {{not a compile-time constant}}
 char clz5[__builtin_clzl(0xFL) == BITSIZE(long) - 4 ? 1 : -1];
 char clz6[__builtin_clzll(0xFFLL) == BITSIZE(long long) - 8 ? 1 : -1];
 char clz7[__builtin_clzs(0x1) == BITSIZE(short) - 1 ? 1 : -1];
@@ -142,7 +142,7 @@ char clz9[__builtin_clzs(0xfff) == BITSI
 char ctz1[__builtin_ctz(1) == 0 ? 1 : -1];
 char ctz2[__builtin_ctz(8) == 3 ? 1 : -1];
 char ctz3[__builtin_ctz(1 << (BITSIZE(int) - 1)) == BITSIZE(int) - 1 ? 1 : -1];
-//int ctz4 = __builtin_ctz(0); // expected-error {{not a compile-time constant}}
+int ctz4 = __builtin_ctz(0); // expected-error {{not a compile-time constant}}
 char ctz5[__builtin_ctzl(0x10L) == 4 ? 1 : -1];
 char ctz6[__builtin_ctzll(0x100LL) == 8 ? 1 : -1];
 char ctz7[__builtin_ctzs(1 << (BITSIZE(short) - 1)) == BITSIZE(short) - 1 ? 1 : -1];
@@ -176,19 +176,6 @@ char ffs4[__builtin_ffs(0xfbe70) == 5 ?
 char ffs5[__builtin_ffs(1U << (BITSIZE(int) - 1)) == BITSIZE(int) ? 1 : -1];
 char ffs6[__builtin_ffsl(0x10L) == 5 ? 1 : -1];
 char ffs7[__builtin_ffsll(0x100LL) == 9 ? 1 : -1];
-
-char clrsb1[__builtin_clrsb(0) == BITSIZE(int) - 1 ? 1 : -1];
-char clrsb2[__builtin_clrsbl(0L) == BITSIZE(long) - 1 ? 1 : -1];
-char clrsb3[__builtin_clrsbll(0LL) == BITSIZE(long long) - 1 ? 1 : -1];
-char clrsb4[__builtin_clrsb(~0) == BITSIZE(int) - 1 ? 1 : -1];
-char clrsb5[__builtin_clrsbl(~0L) == BITSIZE(long) - 1 ? 1 : -1];
-char clrsb6[__builtin_clrsbll(~0LL) == BITSIZE(long long) - 1 ? 1 : -1];
-char clrsb7[__builtin_clrsb(1) == BITSIZE(int) - 2 ? 1 : -1];
-char clrsb8[__builtin_clrsb(~1) == BITSIZE(int) - 2 ? 1 : -1];
-char clrsb9[__builtin_clrsb(1 << (BITSIZE(int) - 1)) == 0 ? 1 : -1];
-char clrsb10[__builtin_clrsb(~(1 << (BITSIZE(int) - 1))) == 0 ? 1 : -1];
-char clrsb11[__builtin_clrsb(0xf) == BITSIZE(int) - 5 ? 1 : -1];
-char clrsb11[__builtin_clrsb(~0x1f) == BITSIZE(int) - 6 ? 1 : -1];
 #undef BITSIZE
 
 // GCC misc stuff




More information about the cfe-commits mailing list