am 38f4a139: am 532e6cde: Merge "libcutils: cleanups for -fsanitize=integer"
* commit '38f4a1391e499c2392cd8136061153cc35438eb3': libcutils: cleanups for -fsanitize=integer
This commit is contained in:
commit
78d632a01d
|
@ -71,7 +71,7 @@ __BEGIN_DECLS
|
|||
#define ATRACE_TAG_LAST ATRACE_TAG_PACKAGE_MANAGER
|
||||
|
||||
// Reserved for initialization.
|
||||
#define ATRACE_TAG_NOT_READY (1LL<<63)
|
||||
#define ATRACE_TAG_NOT_READY (1ULL<<63)
|
||||
|
||||
#define ATRACE_TAG_VALID_MASK ((ATRACE_TAG_LAST - 1) | ATRACE_TAG_LAST)
|
||||
|
||||
|
|
|
@ -77,6 +77,9 @@ Hashmap* hashmapCreate(size_t initialCapacity,
|
|||
/**
|
||||
* Hashes the given key.
|
||||
*/
|
||||
#ifdef __clang__
|
||||
__attribute__((no_sanitize("integer")))
|
||||
#endif
|
||||
static inline int hashKey(Hashmap* map, void* key) {
|
||||
int h = map->hash(key);
|
||||
|
||||
|
@ -152,6 +155,10 @@ void hashmapFree(Hashmap* map) {
|
|||
free(map);
|
||||
}
|
||||
|
||||
#ifdef __clang__
|
||||
__attribute__((no_sanitize("integer")))
|
||||
#endif
|
||||
/* FIXME: relies on signed integer overflow, which is undefined behavior */
|
||||
int hashmapHash(void* key, size_t keySize) {
|
||||
int h = keySize;
|
||||
char* data = (char*) key;
|
||||
|
|
|
@ -42,6 +42,9 @@ static bool str_eq(void *key_a, void *key_b)
|
|||
}
|
||||
|
||||
/* use djb hash unless we find it inadequate */
|
||||
#ifdef __clang__
|
||||
__attribute__((no_sanitize("integer")))
|
||||
#endif
|
||||
static int str_hash_fn(void *str)
|
||||
{
|
||||
uint32_t hash = 5381;
|
||||
|
|
Loading…
Reference in New Issue