Commit 97648992 authored by Rusty Russell's avatar Rusty Russell

hash: use config.h settings for endian.

Leave old hacky #ifdef tests there for reference.
parent 0a36c401
...@@ -40,9 +40,7 @@ on 1 byte), but shoehorning those bytes into integers efficiently is messy. ...@@ -40,9 +40,7 @@ on 1 byte), but shoehorning those bytes into integers efficiently is messy.
#include <time.h> /* defines time_t for timings in the test */ #include <time.h> /* defines time_t for timings in the test */
#include <stdint.h> /* defines uint32_t etc */ #include <stdint.h> /* defines uint32_t etc */
#include <sys/param.h> /* attempt to define endianness */ #include <sys/param.h> /* attempt to define endianness */
#endif
#include "hash.h"
#ifdef linux #ifdef linux
# include <endian.h> /* attempt to define endianness */ # include <endian.h> /* attempt to define endianness */
#endif #endif
...@@ -66,6 +64,19 @@ on 1 byte), but shoehorning those bytes into integers efficiently is messy. ...@@ -66,6 +64,19 @@ on 1 byte), but shoehorning those bytes into integers efficiently is messy.
#else #else
# error Unknown endian # error Unknown endian
#endif #endif
#endif /* old hash.c headers. */
#include "hash.h"
#if HAVE_LITTLE_ENDIAN
#define HASH_LITTLE_ENDIAN 1
#define HASH_BIG_ENDIAN 0
#elif HAVE_BIG_ENDIAN
#define HASH_LITTLE_ENDIAN 0
#define HASH_BIG_ENDIAN 1
#else
#error Unknown endian
#endif
#define hashsize(n) ((uint32_t)1<<(n)) #define hashsize(n) ((uint32_t)1<<(n))
#define hashmask(n) (hashsize(n)-1) #define hashmask(n) (hashsize(n)-1)
......
#ifndef CCAN_HASH_H #ifndef CCAN_HASH_H
#define CCAN_HASH_H #define CCAN_HASH_H
#include "config.h"
#include <stdint.h> #include <stdint.h>
#include <stdlib.h> #include <stdlib.h>
#include "config.h"
#include <ccan/build_assert/build_assert.h> #include <ccan/build_assert/build_assert.h>
/* Stolen mostly from: lookup3.c, by Bob Jenkins, May 2006, Public Domain. /* Stolen mostly from: lookup3.c, by Bob Jenkins, May 2006, Public Domain.
......
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