re PR target/53877 (__lzcnt_u16/__lzcnt_u32/__lzcnt_u64 aren't implemented)
2012-07-20 Kirill Yukhin <kirill.yukhin@intel.com> PR target/53877 * config/i386/lzcntintrin.h (_lzcnt_u32): New. (_lzcnt_u64): Ditto. From-SVN: r189706
This commit is contained in:
parent
c9a658c43d
commit
6ff07822f1
|
@ -1,3 +1,9 @@
|
|||
2012-07-20 Kirill Yukhin <kirill.yukhin@intel.com>
|
||||
|
||||
PR target/53877
|
||||
* config/i386/lzcntintrin.h (_lzcnt_u32): New.
|
||||
(_lzcnt_u64): Ditto.
|
||||
|
||||
2012-07-20 Andrey Belevantsev <abel@ispras.ru>
|
||||
|
||||
Backport from mainline
|
||||
|
|
|
@ -44,12 +44,24 @@ __lzcnt32 (unsigned int __X)
|
|||
return __builtin_clz (__X);
|
||||
}
|
||||
|
||||
extern __inline unsigned int __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
||||
_lzcnt_u32 (unsigned int __X)
|
||||
{
|
||||
return __builtin_clz (__X);
|
||||
}
|
||||
|
||||
#ifdef __x86_64__
|
||||
extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
||||
__lzcnt64 (unsigned long long __X)
|
||||
{
|
||||
return __builtin_clzll (__X);
|
||||
}
|
||||
|
||||
extern __inline unsigned long long __attribute__((__gnu_inline__, __always_inline__, __artificial__))
|
||||
_lzcnt_u64 (unsigned long long __X)
|
||||
{
|
||||
return __builtin_clzll (__X);
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* _LZCNTINTRIN_H_INCLUDED */
|
||||
|
|
Loading…
Reference in New Issue