Commit 3f1b2733 authored by Philip Carns's avatar Philip Carns
Browse files

prevent asan from complaining about jenkins hash

parent d27bfda1
...@@ -7,6 +7,15 @@ ...@@ -7,6 +7,15 @@
#include "codes_base_config.h" #include "codes_base_config.h"
#include "codes/jenkins-hash.h" #include "codes/jenkins-hash.h"
/* used to prevent address sanitizer from complaining about jenkins hash
* algorithm
*/
#if defined(__clang__) || defined (__GNUC__)
# define ATTRIBUTE_NO_SANITIZE_ADDRESS __attribute__((no_sanitize_address))
#else
# define ATTRIBUTE_NO_SANITIZE_ADDRESS
#endif
/* /*
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
lookup3.c, by Bob Jenkins, May 2006, Public Domain. lookup3.c, by Bob Jenkins, May 2006, Public Domain.
...@@ -176,6 +185,7 @@ and these came close: ...@@ -176,6 +185,7 @@ and these came close:
* the key. *pc is better mixed than *pb, so use *pc first. If you want * the key. *pc is better mixed than *pb, so use *pc first. If you want
* a 64-bit value do something like "*pc + (((uint64_t)*pb)<<32)". * a 64-bit value do something like "*pc + (((uint64_t)*pb)<<32)".
*/ */
ATTRIBUTE_NO_SANITIZE_ADDRESS
void bj_hashlittle2( void bj_hashlittle2(
const void *key, /* the key to hash */ const void *key, /* the key to hash */
size_t length, /* length of the key */ size_t length, /* length of the key */
......
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