Fix icp build on FreeBSD

- ROTATE_LEFT is not used by amd64, move it down within
  the scope it's used to silence a clang warning.

- __unused is an alias for the compiler annotation
  __attribute__((__unused__)) on FreeBSD.  Rename the
  field to ____unused.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Matt Macy <mmacy@FreeBSD.org>
Closes #9538
This commit is contained in:
Matthew Macy 2019-11-01 10:27:53 -07:00 committed by Brian Behlendorf
parent 156f74fc03
commit 32682b0c03
2 changed files with 22 additions and 23 deletions

View File

@ -80,28 +80,6 @@ static uint8_t PADDING[64] = { 0x80, /* all zeros */ };
#define G(b, c, d) ((b) ^ (c) ^ (d)) #define G(b, c, d) ((b) ^ (c) ^ (d))
#define H(b, c, d) (((b) & (c)) | (((b)|(c)) & (d))) #define H(b, c, d) (((b) & (c)) | (((b)|(c)) & (d)))
/*
* ROTATE_LEFT rotates x left n bits.
*/
#if defined(__GNUC__) && defined(_LP64)
static __inline__ uint64_t
ROTATE_LEFT(uint64_t value, uint32_t n)
{
uint32_t t32;
t32 = (uint32_t)value;
return ((t32 << n) | (t32 >> (32 - n)));
}
#else
#define ROTATE_LEFT(x, n) \
(((x) << (n)) | ((x) >> ((sizeof (x) * NBBY)-(n))))
#endif
/* /*
* SHA1Init() * SHA1Init()
* *
@ -269,6 +247,27 @@ typedef uint32_t sha1word;
#define W(n) w_ ## n #define W(n) w_ ## n
#endif /* !defined(W_ARRAY) */ #endif /* !defined(W_ARRAY) */
/*
* ROTATE_LEFT rotates x left n bits.
*/
#if defined(__GNUC__) && defined(_LP64)
static __inline__ uint64_t
ROTATE_LEFT(uint64_t value, uint32_t n)
{
uint32_t t32;
t32 = (uint32_t)value;
return ((t32 << n) | (t32 >> (32 - n)));
}
#else
#define ROTATE_LEFT(x, n) \
(((x) << (n)) | ((x) >> ((sizeof (x) * NBBY)-(n))))
#endif
#if defined(__sparc) #if defined(__sparc)

View File

@ -398,7 +398,7 @@ typedef struct modctl {
char mod_delay_unload; /* deferred unload */ char mod_delay_unload; /* deferred unload */
struct modctl_list *mod_requisites; /* mods this one depends on. */ struct modctl_list *mod_requisites; /* mods this one depends on. */
void *__unused; /* NOTE: reuse (same size) is OK, */ void *____unused; /* NOTE: reuse (same size) is OK, */
/* deletion causes mdb.vs.core issues */ /* deletion causes mdb.vs.core issues */
int mod_loadcnt; /* number of times mod was loaded */ int mod_loadcnt; /* number of times mod was loaded */
int mod_nenabled; /* # of enabled DTrace probes in mod */ int mod_nenabled; /* # of enabled DTrace probes in mod */