Commit 1efa38d1 by Ian Lance Taylor

libgo: Solaris and Irix compatibility patches.

From Rainer Orth.

From-SVN: r183246
parent eec3e72c
...@@ -13467,6 +13467,7 @@ is_darwin=no ...@@ -13467,6 +13467,7 @@ is_darwin=no
is_freebsd=no is_freebsd=no
is_irix=no is_irix=no
is_linux=no is_linux=no
is_netbsd=no
is_rtems=no is_rtems=no
is_solaris=no is_solaris=no
GOOS=unknown GOOS=unknown
......
...@@ -126,6 +126,7 @@ is_darwin=no ...@@ -126,6 +126,7 @@ is_darwin=no
is_freebsd=no is_freebsd=no
is_irix=no is_irix=no
is_linux=no is_linux=no
is_netbsd=no
is_rtems=no is_rtems=no
is_solaris=no is_solaris=no
GOOS=unknown GOOS=unknown
......
...@@ -20,7 +20,7 @@ __go_map_delete (struct __go_map *map, const void *key) ...@@ -20,7 +20,7 @@ __go_map_delete (struct __go_map *map, const void *key)
const struct __go_map_descriptor *descriptor; const struct __go_map_descriptor *descriptor;
const struct __go_type_descriptor *key_descriptor; const struct __go_type_descriptor *key_descriptor;
uintptr_t key_offset; uintptr_t key_offset;
_Bool (*equalfn) (const void*, const void*, size_t); _Bool (*equalfn) (const void*, const void*, uintptr_t);
size_t key_hash; size_t key_hash;
size_t key_size; size_t key_size;
size_t bucket_index; size_t bucket_index;
......
...@@ -21,7 +21,7 @@ __go_map_rehash (struct __go_map *map) ...@@ -21,7 +21,7 @@ __go_map_rehash (struct __go_map *map)
const struct __go_type_descriptor *key_descriptor; const struct __go_type_descriptor *key_descriptor;
uintptr_t key_offset; uintptr_t key_offset;
size_t key_size; size_t key_size;
size_t (*hashfn) (const void *, size_t); uintptr_t (*hashfn) (const void *, uintptr_t);
uintptr_t old_bucket_count; uintptr_t old_bucket_count;
void **old_buckets; void **old_buckets;
uintptr_t new_bucket_count; uintptr_t new_bucket_count;
...@@ -80,7 +80,7 @@ __go_map_index (struct __go_map *map, const void *key, _Bool insert) ...@@ -80,7 +80,7 @@ __go_map_index (struct __go_map *map, const void *key, _Bool insert)
const struct __go_map_descriptor *descriptor; const struct __go_map_descriptor *descriptor;
const struct __go_type_descriptor *key_descriptor; const struct __go_type_descriptor *key_descriptor;
uintptr_t key_offset; uintptr_t key_offset;
_Bool (*equalfn) (const void*, const void*, size_t); _Bool (*equalfn) (const void*, const void*, uintptr_t);
size_t key_hash; size_t key_hash;
size_t key_size; size_t key_size;
size_t bucket_index; size_t bucket_index;
......
/* Defining _XOPEN_SOURCE hides the declaration of madvise() on Solaris <
11 and the MADV_DONTNEED definition on IRIX 6.5. */
#undef _XOPEN_SOURCE
#include <errno.h> #include <errno.h>
#include <unistd.h> #include <unistd.h>
...@@ -67,7 +71,7 @@ runtime_SysAlloc(uintptr n) ...@@ -67,7 +71,7 @@ runtime_SysAlloc(uintptr n)
} }
void void
runtime_SysUnused(void *v, uintptr n) runtime_SysUnused(void *v __attribute__ ((unused)), uintptr n __attribute__ ((unused)))
{ {
#ifdef MADV_DONTNEED #ifdef MADV_DONTNEED
runtime_madvise(v, n, MADV_DONTNEED); runtime_madvise(v, n, MADV_DONTNEED);
......
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