summaryrefslogtreecommitdiffstats
path: root/gcc/longlong.h
diff options
context:
space:
mode:
authorrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2007-01-19 13:34:59 +0000
committerrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2007-01-19 13:34:59 +0000
commitafc78fc626220619b70051030a1096945ad93e73 (patch)
tree2d282a29fb31bb7a9465bb7f14d848ea31f9af9c /gcc/longlong.h
parent9b84b1a02fcbc02d79ae96d975f49e0a47f62ff7 (diff)
downloadppe42-gcc-afc78fc626220619b70051030a1096945ad93e73.tar.gz
ppe42-gcc-afc78fc626220619b70051030a1096945ad93e73.zip
gcc/
200x-xx-xx Sandra Loosemore <sandra@codesourcery.com> * longlong.h (count_leading_zeros, COUNT_LEADING_ZEROS_0): Add ColdFire alternatives. * config/m68k/m68k.h (CLZ_DEFINED_VALUE_AT_ZERO): New macro. * config/m68k/m68k.md (clzsi2): Define for ColdFire architectures that support ff1 instruction. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@120959 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/longlong.h')
-rw-r--r--gcc/longlong.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/longlong.h b/gcc/longlong.h
index 1325b31f0c9..8b512d2f284 100644
--- a/gcc/longlong.h
+++ b/gcc/longlong.h
@@ -521,6 +521,11 @@ UDItype __umulsidi3 (USItype, USItype);
__asm__ ("bfffo %1{%b2:%b2},%0" \
: "=d" ((USItype) (count)) \
: "od" ((USItype) (x)), "n" (0))
+/* Some ColdFire architectures have a ff1 instruction supported via
+ __builtin_clz. */
+#elif defined (__mcfisaaplus__) || defined (__mcfisac__)
+#define count_leading_zeros(count,x) ((count) = __builtin_clz (x))
+#define COUNT_LEADING_ZEROS_0 32
#endif
#endif /* mc68000 */
OpenPOWER on IntegriCloud