summaryrefslogtreecommitdiff
path: root/libhurd-ihash
AgeCommit message (Collapse)Author
2009-01-09Build kernel specific versions of utility libs.Tom Bachmann
2008-11-03Remove .cvsignore files. Add a .gitignore file.Neal H. Walfield
2008-11-03Update to binutils 2.19.Neal H. Walfield
/ 2008-11-03 Neal H. Walfield <neal@gnu.org> * Makefile.am (libc-stmp): Don't create an empty sysroot/lib/libc.a. binutils/ 2008-11-03 Neal H. Walfield <neal@gnu.org> * Makefrag.am (binutils_version): Bump to 2.19. libc-parts/ 2008-11-03 Neal H. Walfield <neal@gnu.org> * headers.m4: Don't create an empty libc-parts/libc-parts.a. libhurd-btree/ 2008-11-03 Neal H. Walfield <neal@gnu.org> * headers.m4: Don't create an empty libhurd-btree/libhurd-btree.alibhurd-btree/libhurd-btree.a. libhurd-ihash/ 2008-11-03 Neal H. Walfield <neal@gnu.org> * headers.m4: Don't create an empty libhurd-ihash/libhurd-ihash.a. libhurd-mm 2008-11-03 Neal H. Walfield <neal@gnu.org> * headers.m4: Don't create an empty libhurd-mm/libhurd-mm.a. libhurd-slab/ 2008-11-03 Neal H. Walfield <neal@gnu.org> * headers.m4: Don't create an empty libhurd-slab/libhurd-slab.a. libpthread/ 2008-11-03 Neal H. Walfield <neal@gnu.org> * headers.m4: Don't create an empty libpthread/libpthread.a. newlib/ 2008-11-03 Neal H. Walfield <neal@gnu.org> * headers.m4: Don't create an empty newlib/libc.a or an empty newlib/libm.a. viengoos/ 2008-11-03 Neal H. Walfield <neal@gnu.org> * headers.m4: Don't create an empty viengoos/libhurd-cap.a.
2008-06-27Add .cvsignore files.neal
2008-05-302008-05-29 Thomas Schwinge <tschwinge@gnu.org>tschwinge
* headers.m4: Link files into `sysroot/include/' instead of `include/'. Create symbolic link to package's library in `sysroot/lib/'. * Makefile.am: When building package's libraries, differentiate between [ENABLE_TESTS] with respect to build flags.
2008-05-29hurd/tschwinge
2008-05-29 Thomas Schwinge <tschwinge@gnu.org> * Makefile.am (t_addr_CPPFLAGS, t_addr_trans_CPPFLAGS, t_rpc_CPPFLAGS): Remove special `printf' handling. * stddef.h (S_PUTCHAR): Define analogously to `S_PRINTF'. libc-parts/ 2008-05-29 Thomas Schwinge <tschwinge@gnu.org> * Makefile.am (t_setjmp_CPPFLAGS): Remove special `printf' handling. libhurd-btree/ 2008-05-29 Thomas Schwinge <tschwinge@gnu.org> * Makefile.am (btree_test_CPPFLAGS): Remove special `printf' handling. libhurd-ihash/ 2008-05-29 Thomas Schwinge <tschwinge@gnu.org> * Makefile.am (t_ihash_CPPFLAGS, t_ihash64_CPPFLAGS): Remove special `printf' handling. viengoos/ 2008-05-29 Thomas Schwinge <tschwinge@gnu.org> * cap-lookup.c: Unconditionally use `S_PUTCHAR' and `S_PRINTF' instead of `s_putchar' and `s_printf' and remove the latters' prototypes.
2008-02-21/neal
2008-02-21 Neal H. Walfield <neal@gnu.org> * configure.ac (CFLAGS): Remove variable. (USER_CFLAGS): New variable. (USER_CPPFLAGS): Likewise. (USER_LDFLAGS): Likewise. (USER_LDADD): Likewise. (KERNEL_CFLAGS): Likewise. (KERNEL_CPPFLAGS): Likewise. * Makefile.am (SUBDIRS): Build . after building laden and viengoos. hieronymus/ 2008-02-21 Neal H. Walfield <neal@gnu.org> * Makefile.am (AM_CPPFLAGS): Remove variable. (AM_LDFLAGS): Likewise. (hieronymus_CPPFLAGS): New variable. (hieronymus_CFLAGS): Likewise. (hieronymus_LDFLAGS): Likewise. (hieronymus_LDADD): Don't include libc.a directly, use the value of $(USER_LDADD) instead. hurd/ 2008-02-21 Neal H. Walfield <neal@gnu.org> * Makefile.am (COMMON_CPPFLAGS): Remove variable. (t_addr_CPPFLAGS): Replace use of $(COMMON_CPPFLAGS) with use of $(CHECK_CPPFLAGS). (t_addr_trans_CPPFLAGS): Likewise. (t_rpc_CPPFLAGS): Likewise. libc-parts/ 2008-02-21 Neal H. Walfield <neal@gnu.org> * Makefile.am (COMMON_CPPFLAGS): Remove variable. (libc_parts_a_CPPFLAGS): Set to $(USER_CPPFLAGS). (libc_parts_a_CFLAGS): New variable. (libc_kernel_a_CPPFLAGS): Set to $(KERNEL_CPPFLAGS). (libc_kernel_a_CFLAGS): New variable. (t_setjmp_CPPFLAGS): Remove use of $(COMMON_CPPFLAGS) with $(CHECK_CPPFLAGS). libhurd-btree/ 2008-02-21 Neal H. Walfield <neal@gnu.org> * Makefile.am (COMMON_CPPFLAGS): Remove variable. (libhurd_btree_a_CPPFLAGS): Replace use of above with $(USER_CPPFLAGS). (libhurd_btree_a_CFLAGS): New variable. (btree_test_CPPFLAGS): Replace use $(COMMON_CPPFLAGS) with $(CHECK_CPPFLAGS). libhurd-ihash/ 2008-02-21 Neal H. Walfield <neal@gnu.org> * Makefile.am (AM_CPPFLAGS): Remove variable. (AM_CFLAGS): Likewise. (libhurd_ihash_a_CPPFLAGS): New variable. (libhurd_ihash_a_CFLAGS): Likewise. (libhurd_ihash_nomalloc_a_CPPFLAGS): Replace use of $(AM_CPPFLAGS) with $(USER_CPPFLAGS). (libhurd_ihash_nomalloc_a_CFLAGS): New variable. (t_ihash_CPPFLAGS): Remove use of $(AM_CPPFLAGS). (t_ihash64_CPPFLAGS): Likewise. (t_ihash_CFLAGS): New variable. (t_ihash64_CFLAGS): Likewise. * ihash.c: Don't include <hurd/ihash.h> but "ihash.h". libhurd-mm/ 2008-02-21 Neal H. Walfield <neal@gnu.org> * Makefile.am (COMMON_CPPFLAGS): Remove variable. (libhurd_mm_a_CPPFLAGS): Replace use of above with $(USER_CPPFLAGS). (libhurd_mm_a_CFLAGS): New variable. libpthread/ 2008-02-21 Neal H. Walfield <neal@gnu.org> * Makefile.am (AM_CPPFLAGS): Replace use of includes with $(USER_CPPFLAGS). (AM_CFLAGS): New variable. newlib/ 2008-02-21 Neal H. Walfield <neal@gnu.org> * Makefile.am (patch_files): Add 05-newlib-newlib-libc-include-machine-setjmp-h.patch, 06-newlib-newlib-libc-machine-i386-i386mach-h.patch, and 07-newlib-newlib-libm-machine-i386-i386mach-h.patch. (ccheaders): Remove variable. (SYSINCLUDES): Likewise. (newlib-build/libc.a newlib-build/libm.a): Set TARGET_CFLAGS to "$(USER_CPPFLAGS) $(USER_CFLAGS) $(USER_LDFLAGS)". * newlib/patches/05-newlib-newlib-libc-include-machine-setjmp-h.patch: New file. * newlib/patches/06-newlib-newlib-libc-machine-i386-i386mach-h.patch: New file. * newlib/patches/07-newlib-newlib-libm-machine-i386-i386mach-h.patch: New file. ruth/ 2008-02-21 Neal H. Walfield <neal@gnu.org> * Makefile.am (COMMON_CPPFLAGS): Remove variable. (ruth_CPPFLAGS): Set to $(USER_CPPFLAGS). (ruth_CFLAGS): New variable. (ruth_LDFLAGS): Set to $(USER_LDFLAGS). (ruth_LDADD): Set to $(USER_LDADD). viengoos/ 2008-02-21 Neal H. Walfield <neal@gnu.org> * Makefile.am (COMMON_CPPFLAGS): Remove variable. (viengoos_CPPFLAGS): Set to $(KERNEL_CPPFLAGS). (viengoos_CFLAGS): New variable. (libhurd_cap_a_CPPFLAGS): Set to $(USER_CPPFLAGS). (libhurd_cap_a_CFLAGS): New variable. (t_as_CFLAGS): New variable. (t_activity_CFLAGS): Likewise. (t_link_CFLAGS): Likewise.
2008-02-202008-02-20 Neal H. Walfield <neal@gnu.org>neal
* ihash.c (hurd_ihash_init_with_buffer): Set size to the largest size in IHASH_SIZES that is less than or equal to the maximum size that the provided buffer can handle.
2008-02-11hurd/neal
2008-02-11 Neal H. Walfield <neal@gnu.org> * stddef.h (debug): Change program_name's type to char *. * t-addr-trans.c (program_name): Change type to char *. * t-addr.c (program_name): Likewise. * t-rpc.c (program_name): Likewise. laden/ 2008-02-11 Neal H. Walfield <neal@gnu.org> * laden.h (program_name): Change type to char *. * laden.c (program_name): Likewise. * shutdown.h (program_name): Likewise. * output.h (debug): Change program_name's type to char *. libc-parts/ 2008-02-11 Neal H. Walfield <neal@gnu.org> * ia32-cmain.c (program_name): Change type to char *. * t-setjmp.c (program_name): Likewise. * assert.h (assertx): Change program_name's type to char *. libhurd-btree/ 2008-02-11 Neal H. Walfield <neal@gnu.org> * btree-test.c (program_name): Change type to char *. libhurd-ihash/ 2008-02-11 Neal H. Walfield <neal@gnu.org> * t-ihash.c (program_name): Change type to char *. ruth/ 2008-02-11 Neal H. Walfield <neal@gnu.org> * ruth.c (program_name): Change type to char *. viengoos/ 2008-02-11 Neal H. Walfield <neal@gnu.org> * viengoos.c (program_name): Change type to char *. * viengoos.h (program_name): Likewise. * panic.c (program_name): Likewise. * t-environment.h (program_name): Likewise. (environment_init): Just set program_name to argv[0].
2008-02-08libhurd-ihash/neal
2008-02-08 Neal H. Walfield <neal@gnu.org> * ihash.h: Include <bits/wordsize.h>. (hurd_ihash_key64_t): New definition. (struct _hurd_ihash_item64): New structure. (struct hurd_ihash): Change items's type void *. [__WORDSIZE == 32]: Add field large. (_HURD_IHASH_LARGE): New macro. (HURD_IHASH_INITIALIZER): Take additional argument large. Use it. (hurd_ihash_init): Take additional argument large. (hurd_ihash_buffer_size): Likewise. (hurd_ihash_init_with_buffer): Likewise. (hurd_ihash_create): Likewise. (hurd_ihash_replace): Change key's type to hurd_ihash_key64_t. (hurd_ihash_add): Likewise. (hurd_ihash_find): Likewise. (hurd_ihash_remove): Likewise. (HURD_IHASH_ITERATE): Rewrite to properly handle both 32- and 64-bit keys. * ihash.c (ITEM): New macro. (VALUE): Likewise. (KEY): Likewise. (ITEM_SIZE): Likewise. (index_empty): Use the above macros rather than accessing HT->ITEMS directly. (index_valid): Likewise and change key's type to a hurd_ihash_key64_t. (find_index): Likewise. (replace_one): Likewise. (hurd_ihash_replace): Likewise. (hurd_ihash_find): Likewise. (hurd_ihash_remove): Likewise. (hurd_ihash_init_internal): Take additional argument large. Use it. (hurd_ihash_init): Likewise. (hurd_ihash_init_with_buffer): Likewise. (hurd_ihash_create): Likewise. (hurd_ihash_buffer_size): Likewise. * t-ihash.c: Include <assert.h>. (main): Expect that TEST_LARGE is defined. Use it when calling hurd_ihash_init. If true, add some tests with 64-bit keys. * Makefile.am (TESTS): Add t-ihash64. (check_PROGRAMS): Likewise. (t_ihash_CPPFLAGS): Add -DTEST_LARGE=false. (t_ihash64_SOURCES): New variable. (t_ihash64_CPPFLAGS): Likewise. viengoos/ 2008-02-08 Neal H. Walfield <neal@gnu.org> * thread.c (thread_init): Update use of hurd_ihash_init_with_buffer to be consistent with new API. * object.c (object_init): Likewise. libpthread/ 2008-02-08 Neal H. Walfield <neal@gnu.org> * sysdeps/hurd/pt-setspecific.c (pthread_setspecific): Update use of hurd_ihash_create to be consistent with API changes.
2008-01-23hurd/neal
2008-01-23 Neal H. Walfield <neal@gnu.org> * stddef.h (S_PRINTF): New macro. (debug): Use S_PRINTF rather than printf. * Makefile.am (t_addr_CPPFLAGS): Add -DS_PRINTF=printf. (t_addr_trans_CPPFLAGS): Likewise. (t_rpc_CPPFLAGS): Likewise. libc-parts/ 2008-01-24 Neal H. Walfield <neal@gnu.org> * assert.h: Include <hurd/stddef.h>. (assertx): Use S_PRINTF rather than printf. libhurd-btree/ 2008-01-24 Neal H. Walfield <neal@gnu.org> * Makefile.am (btree_test_CPPFLAGS): New variable. (btree_test_LDADD): Remove. (btree_test_SOURCES): Add btree.c. * btree.c (node_t): Include <stdio.h>. libhurd-ihash/ 2008-01-24 Neal H. Walfield <neal@gnu.org> * Makefile.am (t_ihash_SOURCES): Add ihash.c. (t_ihash_CPPFLAGS): New variable. * t-ihash.c: Include <stdio.h>. libhurd-mm/ 2008-01-24 Neal H. Walfield <neal@gnu.org> * as.c (as_alloced_dump): Use s_printf rather than printf. (as_walk): Likewise. laden/ 2008-01-23 Neal H. Walfield <neal@gnu.org> * Makefile.am (laden_CPPFLAGS): Add -DS_PRINTF=printf. ruth/ 2008-01-24 Neal H. Walfield <neal@gnu.org> * output.h (putchar): Rename from this... (s_putchar): ... to this. (puts): Rename from this... (s_puts): ... to this. (vprintf): Rename from this... (s_vprintf): ... to this. (printf): Rename from this... (s_printf): ... to this. * output.c (putchar): Rename from this... (s_putchar): ... to this. Update users. (puts): Rename from this... (s_puts): ... to this. Update users. (vprintf): Rename from this... (s_vprintf): ... to this. Update users. (printf): Rename from this... (s_printf): ... to this. * Makefile.am (ruth_SOURCES): Add object.h and object.c. * ia32-cmain.c: Include <stddef.h>. (cmain): Use s_printf rather than printf. * panic.c (panic_): Use s_printf and s_vprintf rather than printf and vprintf.
2008-01-23libhurd-ihash/neal
2008-01-23 Neal H. Walfield <neal@gnu.org> * ihash.h (hurd_ihash_buffer_size): New declaration. (hurd_ihash_init_with_buffer): Likewise. (hurd_ihash_init): Add comment that this function is not provided if the library is compiled with NO_MALLOC. (hurd_ihash_create): Likewise. (hurd_ihash_free): Likewise. (hurd_ihash_destroy): Update comment. * ihash.c (hurd_ihash_init_with_buffer): New function. (hurd_ihash_destroy) [NO_MALLOC]: Don't free HT->ITEMS. (hurd_ihash_create) [NO_MALLOC]: Just return ENOMEM; (hurd_ihash_free) [NO_MALLOC]: Remove function. (hurd_ihash_buffer_size): New function. (hurd_ihash_replace) [NO_MALLOC]: Don't attempt to expand the hash table. [! NO_MALLOC]: Use hurd_ihash_buffer_size to calculate an appropriate buffer size. * Makefile.am (lib_LIBRARIES): Add libhurd-ihash-nomalloc.a. (libhurd_ihash_nomalloc_a_CPPFLAGS): New variable. (libhurd_ihash_nomalloc_a_SOURCES): Likewise. * t-ihash.c (main): Cast locp offset calculation to elide warning. viengoos/ 2008-01-23 Neal H. Walfield <neal@gnu.org> * thread.c: Include "zalloc.h". (thread_init): Initialize TID_TO_THREAD hash here. Allocate using zalloc. * object.c: Include "zalloc.h". (object_init): Allocate hash table and object_descs using zalloc. * Makefile.am (viengoos_SOURCES): Remove malloc.h and malloc-wrap.c. (viengoos_LDADD): Use ../libhurd-ihash/libhurd-ihash-nomalloc.a rather than ../libhurd-ihash/libhurd-ihash.a. (EXTRA_viengoos_SOURCES): Remove variable. * memory.c (memory_grab) [_L4_TEST_ENVIRONMENT]: Don't include binary when calculating available memory.
2008-01-23libpthread/neal
2008-01-23 Neal H. Walfield <neal@gnu.org> * Makefile.am (AM_CPPFLAGS): Add -I$(LIBC)/include. libhurd-slab/ 2008-01-23 Neal H. Walfield <neal@gnu.org> * Makefile.am (AM_CPPFLAGS): Add -I$(LIBC)/include. libhurd-mm/ 2008-01-23 Neal H. Walfield <neal@gnu.org> * Makefile.am (COMMON_CPPFLAGS): Add -I$(LIBC)/include. libhurd-ihash/ 2008-01-23 Neal H. Walfield <neal@gnu.org> * Makefile.am (AM_CPPFLAGS): Add -I$(LIBC)/include. ruth/ 2008-01-23 Neal H. Walfield <neal@gnu.org> * Makefile.am (COMMON_CPPFLAGS): Add -I$(LIBC)/include. (ruth_SOURCES): Remove malloc-wrap.c, output.h and output.c. (ruth_LDADD): Set to $(top_builddir)/libc.a. * panic.c: Don't include "output.h". Include <stdio.h>. * ruth.h: Likewise. * ruth.c (getpagesize): Return a size_t, not an int.
2008-01-232008-01-23 Neal H. Walfield <neal@gnu.org>neal
* ihash.h (HURD_IHASH_NO_LOCP): Define to PTRDIFF_MIN rather than INTPTR_MIN.
2007-11-132007-11-13 Neal H. Walfield <neal@gnu.org>neal
* ihash.h (hurd_ihash_locp_remove): Fix comment. * t-ihash.c (program_name): Add variable. (main): Add a test case for hurd_ihash_locp_remove.
2007-10-162007-10-16 Neal H. Walfield <neal@gnu.org>neal
* ihash.h: Don't include <sys/types.h>. Include <stddef.h> and <stdbool.h>.
2007-10-092007-10-09 Neal H. Walfield <neal@gnu.org>neal
* ihash.h (hurd_ihash_locp_remove): Update comment.
2007-10-062007-10-06 Neal H. Walfield <neal@gnu.org>neal
* ihash.h (hurd_ihash_replace): New prototype. (hurd_ihash_add): Replace prototype with a static inline implementation that calls hurd_ihash_replace with the right parameters. * ihash.c (locp_remove): Take additional argument, cleanup. Only call the cleanup function if CLEANUP is true. Update callers. (add_one): Rename from this... (replace_one): ... to this. Add two parameters, had_value and old_value. If the key has a value and OLD_VALUE is not NULL, then do not call the cleanup function but save the old value in *OLD_VALUE. If the key had a value and HAD_VALUE is not NULL, then store true in *HAD_VALUE, otherwise, false. Update callers. * Makefile.am (TESTS): Set to t-ihash. (check_PROGRAMS): Set to t-ihash. (t_ihash_SOURCES): Set to t-ihash.c and ihash.h. (t_ihash_LDADD): Set to libhurd-ihash.a. * t-ihash.c: New file.
2004-04-212004-04-21 Marcus Brinkmann <marcus@gnu.org>marcus
* ihash.h (HURD_IHASH_ITERATE): Don't use increment operator in assignment, but just add one. Reported by Ognyan Kulev.
2004-04-092004-04-03 Marco Gerards <metgerards@student.han.nl>marcus
Bringing ihash into sync with the version in the Hurd: * ihash.h: Include <stdint.h>. (HURD_IHASH_NO_LOCP): Change to INTPTR_MIN. (struct hurd_ihash): Change type of locp_offset from off_t to intptr_t. (hurd_ihash_init): Likewise in prototype. (hurd_ihash_create): Likewise in prototype. (hurd_ihash_key_t): Likewise in typedef. * ihash.c (hurd_ihash_init): Likewise in definition. (hurd_ihash_create): Likewise in definition. (hurd_ihash_remove): Don't look for the index when the hashtable is empty.
2004-03-192004-03-19 Marcus Brinkmann <marcus@gnu.org>marcus
* Makefile.am (AM_CPPFLAGS): Add -I$(top_srcdir)/libc-parts for now.
2003-10-10Uppercase macro name in comment.marcus
2003-09-22Fix copyright year.marcus
2003-09-21laden/marcus
physmem/ 2003-09-21 Marco Gerards <metgerards@student.han.nl> * Makefile.am (AM_CPPFLAGS): New variable. libhurd-ihash/ wortel/ 2003-09-21 Marco Gerards <metgerards@student.han.nl> * Makefile.am (AM_CPPFLAGS): Use top_builddir instead of
2003-09-08Include config.h.marcus
2003-09-08Set -std=gnu99 compiler flag.marcus
2003-09-07Fix macro.marcus
2003-08-262003-08-26 Marcus Brinkmann <marcus@g10code.de>marcus
* ihash.h: Include <limits.h>. (HURD_IHASH_NO_LOCP): New macro. (HURD_IHASH_INITIALIZER): Take locp offset as argument. Initialize HT->nr_items, HT->max_load and HT->locp_offset. (HURD_IHASH_MAX_LOAD_DEFAULT): New macro. (struct _hurd_ihash_item): New structure. (_hurd_ihash_item_t): New type. (struct hurd_ihash): New fields NR_ITEMS, ITEMS, LOCP_OFFSET and MAX_LOAD. Remove KEYS, TABLE and LOCPS. (hurd_ihash_set_max_load): New function. (HURD_IHASH_ITERATE): Rewrite to use ITEMS instead TABLE and KEYS. (hurd_ihash_init): Take locp_offs argument in prototype. (hurd_ihash_create): Likewise. (hurd_ihash_add): Don't take locp argument in prototype. (hurd_ihash_set_max_load): New prototype. * ihash.c (HASH, REHASH): Macros removed. (ihash_sizes): Change table to list prime numbers that are 3 modulo 4. (index_empty): Use HT->items instead HT->table. (index_valid): Likewise. (find_index): Use quadratic probing. (locp_remove): New helper function. (hurd_ihash_init): Take locp_offs as argument. Initialize HT->locp_offset, HT->nr_items and HT->max_load. (hurd_ihash_destroy): Free HT->items, but not anything else. (hurd_ihash_create): Take locp_offs as argument and pass it to hurd_ihash_init. (hurd_ihash_set_max_load): New function. (add_one): Don't take a locp argument anymore. Use quadratic probing. Call locp_remove instead duplicating the code. Increment HT->nr_items. (hurd_ihash_add): Don't take a locp argument anymore. Check maximum load factor before adding element. Use ITEMS and not KEYS and TABLE. Don't allocate memory for locp. Use calloc instead of malloc and initialization. (hurd_ihash_remove): Call locp_remove instead hurd_ihash_locp_remove. (hurd_ihash_locp_remove): Call locp_remove.
2003-08-172003-08-17 Marcus Brinkmann <marcus@gnu.org>marcus
* ihash.h (HURD_IHASH_INITIALIZER): New macro.
2003-08-17Add missing copyright notices.marcus
2003-08-17*** empty log message ***marcus
2003-08-17Fix a couple of bugs.marcus
2003-08-17Beuatify.marcus
2003-08-17Remove cruft.marcus
2003-08-17Fix prime table types. Improve overflow check when finding the next primemarcus
number.
2003-08-17Fix prime table. Should only include odd numbers. Starting from 3 meansmarcus
new primes had to be generated.
2003-08-17Add libhurd-ihash. Neals autoconf macro doesn't work, so usemarcus
AC_CONFIG_LINKS directly.