diff options
author | Paul Brook <paul@codesourcery.com> | 2008-06-12 17:29:47 +0000 |
---|---|---|
committer | Paul Brook <pbrook@gcc.gnu.org> | 2008-06-12 17:29:47 +0000 |
commit | ef0a4b673817ad7e866e00a5078b9410411e1c49 (patch) | |
tree | c52d53e9558cca6d8b8c3880662f0c8b089d6883 /gcc/longlong.h | |
parent | 01b79d1165836671e8d2688f32b6f9eb568f80c3 (diff) | |
download | gcc-ef0a4b673817ad7e866e00a5078b9410411e1c49.zip gcc-ef0a4b673817ad7e866e00a5078b9410411e1c49.tar.gz gcc-ef0a4b673817ad7e866e00a5078b9410411e1c49.tar.bz2 |
longlong.h (__arm__): Define count_leading_zeros.
2008-06-12 Paul Brook <paul@codesourcery.com>
gcc/
* longlong.h (__arm__): Define count_leading_zeros.
* config/arm/lib1funcs.asm (xxh, xxl, yyh, yyl): Define.
(clzsi2, clzdi2): New functions.
* config/arm/bpabi-v6m.S (xxh, xxl, yyh, yyl): Remove.
* config/arm/bpabi.S (xxh, xxl, yyh, yyl): Remove.
* config/arm/t-strongarm-elf (LIB1ASMFUNCS): Ditto.
* config/arm/t-vxworks (LIB1ASMFUNCS): Ditto.
* config/arm/t-pe (LIB1ASMFUNCS): Ditto.
* config/arm/t-arm-elf (LIB1ASMFUNCS): Ditto.
* config/arm/t-arm-coff (LIB1ASMFUNCS): Ditto.
* config/arm/t-linux (LIB1ASMFUNCS): Ditto.
* config/arm/t-symbian (LIB1ASMFUNCS): Ditto.
* config/arm/t-wince-pe (LIB1ASMFUNCS): Ditto.
From-SVN: r136718
Diffstat (limited to 'gcc/longlong.h')
-rw-r--r-- | gcc/longlong.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/longlong.h b/gcc/longlong.h index 38b4c6f..45a95c4 100644 --- a/gcc/longlong.h +++ b/gcc/longlong.h @@ -226,6 +226,12 @@ UDItype __umulsidi3 (USItype, USItype); #define UDIV_TIME 100 #endif /* __arm__ */ +#if defined(__arm__) +/* Let gcc decide how best to implement count_leading_zeros. */ +#define count_leading_zeros(COUNT,X) ((COUNT) = __builtin_clz (X)) +#define COUNT_LEADING_ZEROS_0 32 +#endif + #if defined (__CRIS__) && __CRIS_arch_version >= 3 #define count_leading_zeros(COUNT, X) ((COUNT) = __builtin_clz (X)) #if __CRIS_arch_version >= 8 |