[NDS32] Define CLZ_DEFINED_VALUE_AT_ZERO.
authorChung-Ju Wu <jasonwucj@gmail.com>
Sun, 18 Mar 2018 04:47:10 +0000 (04:47 +0000)
committerChung-Ju Wu <jasonwucj@gcc.gnu.org>
Sun, 18 Mar 2018 04:47:10 +0000 (04:47 +0000)
gcc/
* config/nds32/nds32.h (CLZ_DEFINED_VALUE_AT_ZERO): Define.

From-SVN: r258627

gcc/ChangeLog
gcc/config/nds32/nds32.h

index a1186fc2dfb5e13e9f03d214ca4e1ae44f15d652..224e8cac9ad6e7fbfc57d1b392fdc5fe3192b90e 100644 (file)
@@ -1,3 +1,7 @@
+2018-03-18  Chung-Ju Wu  <jasonwucj@gmail.com>
+
+       * config/nds32/nds32.h (CLZ_DEFINED_VALUE_AT_ZERO): Define.
+
 2018-03-17  Chung-Ju Wu  <jasonwucj@gmail.com>
            Kito Cheng  <kito.cheng@gmail.com>
 
index 749a55208d40c55dcb1268a8744d71afa428ee5f..b350a0cd047faf43640966e861778344f30d9c85 100644 (file)
@@ -1066,6 +1066,11 @@ enum reg_class
    when the condition is true.  */
 #define STORE_FLAG_VALUE 1
 
+/* A C expression that indicates whether the architecture defines a value for
+   clz or ctz with a zero operand.  In nds32 clz for 0 result 32 is defined
+   in ISA spec */
+#define CLZ_DEFINED_VALUE_AT_ZERO(MODE, VALUE)  ((VALUE) = 32, 1)
+
 /* An alias for the machine mode for pointers.  */
 #define Pmode SImode