Commit 0d13c974 by Nick Clifton Committed by Nick Clifton

lib2funcs.c (__clrsbhi2): New function.

	* config/stormy16/lib2funcs.c (__clrsbhi2): New function.
	Implements __clrsb for an HImode argument.
	* config/stormy16/clrsbhi2.c: New file:
	* config/stormy16/t-stormy16 (LIB2ADD): Add clrsbhi2.c.

From-SVN: r189997
parent d555a90e
2012-07-31 Nick Clifton <nickc@redhat.com>
* config/stormy16/lib2funcs.c (__clrsbhi2): New function.
Implements __clrsb for an HImode argument.
* config/stormy16/clrsbhi2.c: New file:
* config/stormy16/t-stormy16 (LIB2ADD): Add clrsbhi2.c.
2012-07-22 Steven Bosscher <steven@gcc.gnu.org>
* libgcov.c (__gcov_ior_profiler): Benign comment fix.
......
#define XSTORMY16_CLRSBHI2
#include "lib2funcs.c"
......@@ -311,6 +311,22 @@ __ffshi2 (UHWtype u)
}
#endif
#ifdef XSTORMY16_CLRSBHI2
/* Returns the number of leading redundant sign bits in X.
I.e. the number of bits following the most significant bit which are
identical to it. There are no special cases for 0 or other values. */
int
__clrsbhi2 (HWtype x)
{
if (x < 0)
x = ~x;
if (x == 0)
return 15;
return __builtin_clz (x) - 1;
}
#endif
#ifdef XSTORMY16_UCMPSI2
/* Performs an unsigned comparison of two 32-bit values: A and B.
If A is less than B, then 0 is returned. If A is greater than B,
......
......@@ -33,6 +33,7 @@ LIB2ADD = \
$(srcdir)/config/stormy16/clzhi2.c \
$(srcdir)/config/stormy16/ctzhi2.c \
$(srcdir)/config/stormy16/ffshi2.c \
$(srcdir)/config/stormy16/clrsbhi2.c \
$(srcdir)/config/stormy16/cmpsi2.c \
$(srcdir)/config/stormy16/ucmpsi2.c
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment