summaryrefslogtreecommitdiffstats
path: root/mdk-stage1/dietlibc/libdl/elf_hash.h
diff options
context:
space:
mode:
Diffstat (limited to 'mdk-stage1/dietlibc/libdl/elf_hash.h')
-rw-r--r--mdk-stage1/dietlibc/libdl/elf_hash.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/mdk-stage1/dietlibc/libdl/elf_hash.h b/mdk-stage1/dietlibc/libdl/elf_hash.h
new file mode 100644
index 000000000..be55982ea
--- /dev/null
+++ b/mdk-stage1/dietlibc/libdl/elf_hash.h
@@ -0,0 +1,10 @@
+static unsigned long elf_hash(const unsigned char *name) {
+ unsigned long h=0, g;
+
+ while (*name) {
+ h = (h<<4) + *(name++);
+ if ((g = h&0xf0000000)) h ^= g>>24;
+ h &= ~g;
+ }
+ return h;
+}