svn commit: r223262 - in head:
cddl/contrib/opensolaris/lib/libdtrace/common contrib/binutils/bfd
contrib/binutils/gas contrib/binutils/gas/config contrib/binutils/ld
contrib/binutils/opcodes contr...
Jilles Tjoelker
jilles at stack.nl
Sat Jun 18 20:48:38 UTC 2011
On Sat, Jun 18, 2011 at 01:56:33PM +0000, Ben Laurie wrote:
> Modified: head/cddl/contrib/opensolaris/lib/libdtrace/common/dt_subr.c
> ==============================================================================
> --- head/cddl/contrib/opensolaris/lib/libdtrace/common/dt_subr.c Sat Jun 18 13:54:36 2011 (r223261)
> +++ head/cddl/contrib/opensolaris/lib/libdtrace/common/dt_subr.c Sat Jun 18 13:56:33 2011 (r223262)
> @@ -45,6 +45,7 @@
> #include <assert.h>
> #include <libgen.h>
> #include <limits.h>
> +#include <stdint.h>
>
> #include <dt_impl.h>
>
> @@ -811,15 +812,14 @@ dt_basename(char *str)
> ulong_t
> dt_popc(ulong_t x)
> {
> -#ifdef _ILP32
> +#if defined(_ILP32)
> x = x - ((x >> 1) & 0x55555555UL);
> x = (x & 0x33333333UL) + ((x >> 2) & 0x33333333UL);
> x = (x + (x >> 4)) & 0x0F0F0F0FUL;
> x = x + (x >> 8);
> x = x + (x >> 16);
> return (x & 0x3F);
> -#endif
> -#ifdef _LP64
> +#elif defined(_LP64)
> x = x - ((x >> 1) & 0x5555555555555555ULL);
> x = (x & 0x3333333333333333ULL) + ((x >> 2) & 0x3333333333333333ULL);
> x = (x + (x >> 4)) & 0x0F0F0F0F0F0F0F0FULL;
> @@ -827,6 +827,8 @@ dt_popc(ulong_t x)
> x = x + (x >> 16);
> x = x + (x >> 32);
> return (x & 0x7F);
> +#else
> +# warning need td_popc() implementation
> #endif
> }
This commit uncovers breakage that had been present for a while. If I
compile this on stable/8 i386 for head i386, _ILP32 is not defined and
the warning is hit, breaking the build. Apparently, the code had been
broken for a while but I do not use dtrace so I would not have noticed.
The tinderboxes have now also noticed the problem so it is not something
weird about my system.
--
Jilles Tjoelker
More information about the svn-src-all
mailing list