On Sat, Sep 17, 2011 at 3:10 AM, Andreas Schwab <sch...@linux-m68k.org> wrote:
> Uros Bizjak <ubiz...@gmail.com> writes:
>
>> Agreed. Some parets are missing, though:
>>
>> -  unsigned long long tmp = (__X) ^ (__X - 1);
>> -  return tmp;
>> +  unsigned long long __tmp = (__X) ^ (__X - 1);
>> +  return __tmp;
>
> There is none missing.  This is not a macro.
>

Here is the updated patch.  Tested on Linux/x86-64.  OK
for trunk?


-- 
H.J.
---
2011-09-17  H.J. Lu  <hongjiu...@intel.com>

        * config/i386/bmiintrin.h: Remove tmp.
        * config/i386/tbmintrin.h: Likewise.
2011-09-17  H.J. Lu  <hongjiu...@intel.com>

        * config/i386/bmiintrin.h: Remove tmp.
        * config/i386/tbmintrin.h: Likewise.

diff --git a/gcc/config/i386/bmiintrin.h b/gcc/config/i386/bmiintrin.h
index af5d9dc..ad17433 100644
--- a/gcc/config/i386/bmiintrin.h
+++ b/gcc/config/i386/bmiintrin.h
@@ -42,8 +42,7 @@ __tzcnt_u16 (unsigned short __X)
 extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, 
__artificial__))
 __andn_u32 (unsigned int __X, unsigned int __Y)
 {
-  unsigned int tmp = ~(__X) & (__Y);
-  return tmp;
+  return ~__X & __Y;
 }
 
 extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, 
__artificial__))
@@ -55,22 +54,19 @@ __bextr_u32 (unsigned int __X, unsigned int __Y)
 extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, 
__artificial__))
 __blsi_u32 (unsigned int __X)
 {
-  unsigned int tmp = (__X) & (-(__X));
-  return tmp;
+  return __X & -__X;
 }
 
 extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, 
__artificial__))
 __blsmsk_u32 (unsigned int __X)
 {
-  unsigned int tmp = (__X) ^ (__X - 1);
-  return tmp;
+  return __X ^ (__X - 1);
 }
 
 extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, 
__artificial__))
 __blsr_u32 (unsigned int __X)
 {
-  unsigned int tmp = (__X) & (__X - 1);
-  return tmp;
+  return __X & (__X - 1);
 }
 
 
@@ -85,8 +81,7 @@ __tzcnt_u32 (unsigned int __X)
 extern __inline unsigned long long __attribute__((__gnu_inline__, 
__always_inline__, __artificial__))
 __andn_u64 (unsigned long long __X, unsigned long long __Y)
 {
-  unsigned long long tmp = ~(__X) & (__Y);
-  return tmp;
+  return ~__X & __Y;
 }
 
 extern __inline unsigned long long __attribute__((__gnu_inline__, 
__always_inline__, __artificial__))
@@ -98,22 +93,19 @@ __bextr_u64 (unsigned long long __X, unsigned long long __Y)
 extern __inline unsigned long long __attribute__((__gnu_inline__, 
__always_inline__, __artificial__))
 __blsi_u64 (unsigned long long __X)
 {
-  unsigned long long tmp = (__X) & (-(__X));
-  return tmp;
+  return __X & -__X;
 }
 
 extern __inline unsigned long long __attribute__((__gnu_inline__, 
__always_inline__, __artificial__))
 __blsmsk_u64 (unsigned long long __X)
 {
-  unsigned long long tmp = (__X) ^ (__X - 1);
-  return tmp;
+  return __X ^ (__X - 1);
 }
 
 extern __inline unsigned long long __attribute__((__gnu_inline__, 
__always_inline__, __artificial__))
 __blsr_u64 (unsigned long long __X)
 {
-  unsigned long long tmp = (__X) & (__X - 1);
-  return tmp;
+  return __X & (__X - 1);
 }
 
 extern __inline unsigned long long __attribute__((__gnu_inline__, 
__always_inline__, __artificial__))
diff --git a/gcc/config/i386/tbmintrin.h b/gcc/config/i386/tbmintrin.h
index 8d2431d..2f87a64 100644
--- a/gcc/config/i386/tbmintrin.h
+++ b/gcc/config/i386/tbmintrin.h
@@ -47,64 +47,55 @@ __bextri_u32 (unsigned int __X, const unsigned int __I)
 extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, 
__artificial__))
 __blcfill_u32 (unsigned int __X)
 {
-       unsigned int tmp = (__X) & ((__X) + 1);
-       return tmp;
+  return __X & (__X + 1);
 }
 
 extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, 
__artificial__))
 __blci_u32 (unsigned int __X)
 {
-       unsigned int tmp = (__X) | (~((__X) + 1));
-       return tmp;
+  return __X | ~(__X + 1);
 }
 
 extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, 
__artificial__))
 __blcic_u32 (unsigned int __X)
 {
-       unsigned int tmp = (~(__X)) & ((__X) + 1);
-       return tmp;
+  return ~__X & (__X + 1);
 }
 
 extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, 
__artificial__))
 __blcmsk_u32 (unsigned int __X)
 {
-       unsigned int tmp = (__X) ^ ((__X) + 1);
-       return tmp;
+  return __X ^ (__X + 1);
 }
 
 extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, 
__artificial__))
 __blcs_u32 (unsigned int __X)
 {
-       unsigned int tmp = (__X) | ((__X) + 1);
-       return tmp;
+  return __X | (__X + 1);
 }
 
 extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, 
__artificial__))
 __blsfill_u32 (unsigned int __X)
 {
-       unsigned int tmp = (__X) | ((__X) - 1);
-       return tmp;
+  return __X | (__X - 1);
 }
 
 extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, 
__artificial__))
 __blsic_u32 (unsigned int __X)
 {
-       unsigned int tmp = (~(__X)) | ((__X) - 1);
-       return tmp;
+  return ~__X | (__X - 1);
 }
 
 extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, 
__artificial__))
 __t1mskc_u32 (unsigned int __X)
 {
-       unsigned int tmp = (~(__X)) | ((__X) + 1);
-       return tmp;
+  return ~__X | (__X + 1);
 }
 
 extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, 
__artificial__))
 __tzmsk_u32 (unsigned int __X)
 {
-       unsigned int tmp = (~(__X)) & ((__X) - 1);
-       return tmp;
+  return ~__X & (__X - 1);
 }
 
 
@@ -114,78 +105,68 @@ __tzmsk_u32 (unsigned int __X)
 extern __inline unsigned long long __attribute__((__gnu_inline__, 
__always_inline__, __artificial__))
 __bextri_u64 (unsigned long long __X, const unsigned int __I)
 {
-       return __builtin_ia32_bextri_u64 (__X, __I);
+  return __builtin_ia32_bextri_u64 (__X, __I);
 }
 #else
-#define __bextri_u64(X, I)                                                     
  \
-        ((unsigned long long)__builtin_ia32_bextri_u64 ((unsigned long 
long)(X), \
-                                                       (unsigned long 
long)(I)))
+#define __bextri_u64(X, I)                                                \
+  ((unsigned long long)__builtin_ia32_bextri_u64 ((unsigned long long)(X), \
+                                                 (unsigned long long)(I)))
 #endif /*__OPTIMIZE__ */
 
 extern __inline unsigned long long __attribute__((__gnu_inline__, 
__always_inline__, __artificial__))
 __blcfill_u64 (unsigned long long __X)
 {
-       unsigned long long tmp = (__X) & ((__X) + 1);
-       return tmp;
+  return __X & (__X + 1);
 }
 
 extern __inline unsigned long long __attribute__((__gnu_inline__, 
__always_inline__, __artificial__))
 __blci_u64 (unsigned long long __X)
 {
-       unsigned long long tmp = (__X) | (~((__X) + 1));
-       return tmp;
+  return __X | ~(__X + 1);
 }
 
 extern __inline unsigned long long __attribute__((__gnu_inline__, 
__always_inline__, __artificial__))
 __blcic_u64 (unsigned long long __X)
 {
-       unsigned long long tmp = (~(__X)) & ((__X) + 1);
-       return tmp;
+  return ~__X & (__X + 1);
 }
 
 extern __inline unsigned long long __attribute__((__gnu_inline__, 
__always_inline__, __artificial__))
 __blcmsk_u64 (unsigned long long __X)
 {
-       unsigned long long tmp = (__X) ^ ((__X) + 1);
-       return tmp;
+  return __X ^ (__X + 1);
 }
 
 extern __inline unsigned long long __attribute__((__gnu_inline__, 
__always_inline__, __artificial__))
 __blcs_u64 (unsigned long long __X)
 {
-       unsigned long long tmp = (__X) | ((__X) + 1);
-       return tmp;
+  return __X | (__X + 1);
 }
 
 extern __inline unsigned long long __attribute__((__gnu_inline__, 
__always_inline__, __artificial__))
 __blsfill_u64 (unsigned long long __X)
 {
-       unsigned long long tmp = (__X) | ((__X) - 1);
-       return tmp;
+  return __X | (__X - 1);
 }
 
 extern __inline unsigned long long __attribute__((__gnu_inline__, 
__always_inline__, __artificial__))
 __blsic_u64 (unsigned long long __X)
 {
-       unsigned long long tmp = (~(__X)) | ((__X) - 1);
-       return tmp;
+  return ~__X | (__X - 1);
 }
 
 extern __inline unsigned long long __attribute__((__gnu_inline__, 
__always_inline__, __artificial__))
 __t1mskc_u64 (unsigned long long __X)
 {
-       unsigned long long tmp = (~(__X)) | ((__X) + 1);
-       return tmp;
+  return ~__X | (__X + 1);
 }
 
 extern __inline unsigned long long __attribute__((__gnu_inline__, 
__always_inline__, __artificial__))
 __tzmsk_u64 (unsigned long long __X)
 {
-       unsigned long long tmp = (~(__X)) & ((__X) - 1);
-       return tmp;
+  return ~__X & (__X - 1);
 }
 
 
 #endif /* __x86_64__  */
 #endif /* _TBMINTRIN_H_INCLUDED */
-

Reply via email to