# # ChangeLog for trunk/src/kmk in kBuild # # Generated by Trac 1.4.3.2 # Feb 3, 2025 3:25:17 PM Sat, 25 Oct 2008 15:04:06 GMT bird [1935] * trunk/src/kmk/function.c (modified) * trunk/src/kmk/misc.c (modified) * trunk/src/kmk/variable.c (modified) kmk: new function - eval-opt-var Fri, 24 Oct 2008 22:24:02 GMT bird [1934] * trunk/src/kmk/Makefile.am (modified) * trunk/src/kmk/Makefile.kmk (modified) * trunk/src/kmk/commands.c (modified) * trunk/src/kmk/filedef.h (modified) * trunk/src/kmk/function.c (modified) * trunk/src/kmk/testcase-lazy-deps-vars.kmk (added) * trunk/src/kmk/variable.c (modified) kmk: Implemented lazy resolving of $+, $^, $? and $|. This saves > ... Fri, 24 Oct 2008 20:40:32 GMT bird [1933] * trunk/src/kmk/commands.c (modified) * trunk/src/kmk/file.c (modified) * trunk/src/kmk/make.h (modified) * trunk/src/kmk/strcache.c (modified) kmk: moved suffixes_strcached to strcache.c and global scope. Fri, 24 Oct 2008 20:22:22 GMT bird [1932] * trunk/src/kmk/Makefile.am (modified) * trunk/src/kmk/Makefile.kmk (modified) * trunk/src/kmk/commands.c (modified) * trunk/src/kmk/expand.c (modified) * trunk/src/kmk/function.c (modified) * trunk/src/kmk/kbuild.c (modified) * trunk/src/kmk/variable.c (modified) * trunk/src/kmk/variable.h (modified) kmk: Made struct variable capable of holding read only variables to ... Fri, 24 Oct 2008 19:02:48 GMT bird [1931] * trunk/src/kmk/expand.c (modified) * trunk/src/kmk/read.c (modified) * trunk/src/kmk/variable.h (modified) kmk: recycle more allocate_variable_expand_* results. Fri, 24 Oct 2008 06:20:23 GMT bird [1930] * trunk/src/kmk/read.c (modified) kmk/read.c: more free() avoidance, this time some very small buffers ... Fri, 24 Oct 2008 06:17:28 GMT bird [1929] * trunk/src/kmk/expand.c (modified) * trunk/src/kmk/read.c (modified) kmk/read.c: more free() avoidance, this time some very small buffers ... Fri, 24 Oct 2008 05:19:23 GMT bird [1928] * trunk/src/kmk/expand.c (modified) expand.c: added allocated_variable_expand_3 and ... Fri, 24 Oct 2008 04:50:10 GMT bird [1927] * trunk/src/kmk/expand.c (modified) * trunk/src/kmk/variable.h (modified) kmk: Inlined much of handle_function/lookup_function so ... Fri, 24 Oct 2008 04:49:58 GMT bird [1926] * trunk/src/kmk/function.c (modified) kmk: Inlined much of handle_function/lookup_function so ... Fri, 24 Oct 2008 03:32:21 GMT bird [1925] * trunk/src/kmk/Makefile.kmk (modified) * trunk/src/kmk/hash.c (modified) * trunk/src/kmk/make.h (modified) * trunk/src/kmk/misc.c (modified) * trunk/src/kmk/strcache2.c (modified) kmk: some stats adjustments. Fri, 24 Oct 2008 02:41:34 GMT bird [1924] * trunk/src/kmk/kbuild.c (modified) kbuild.c: some more cleanup. Fri, 24 Oct 2008 02:11:32 GMT bird [1923] * trunk/src/kmk/kbuild.c (modified) kbuild.c: got rid of the va_list fun. Fri, 24 Oct 2008 02:10:58 GMT bird [1922] * trunk/src/kmk/kbuild.c (modified) kbuild.c: got rid of the va_list fun. Fri, 24 Oct 2008 00:30:58 GMT bird [1921] * trunk/src/kmk/strcache2.c (modified) strcache2: disabled the experimental stuff because I'm unsure about ... Fri, 24 Oct 2008 00:00:27 GMT bird [1920] * trunk/src/kmk/strcache2.c (modified) strcache2: don't hash strings that aren't small (experimental). Thu, 23 Oct 2008 21:27:11 GMT bird [1918] * trunk/src/kmk/Makefile.am (modified) * trunk/src/kmk/Makefile.kmk (modified) * trunk/src/kmk/file.c (modified) * trunk/src/kmk/main.c (modified) * trunk/src/kmk/make.h (modified) * trunk/src/kmk/misc.c (modified) * trunk/src/kmk/variable.c (modified) kmk: New switch --print-stats which will print variable, file, ... Thu, 23 Oct 2008 21:26:42 GMT bird [1917] * trunk/src/kmk/strcache2.c (modified) strcache2: don't div/0 in stats. Thu, 23 Oct 2008 13:34:40 GMT bird [1916] * trunk/src/kmk/strcache2.c (modified) build fix. Wed, 22 Oct 2008 21:59:51 GMT bird [1915] * trunk/src/kmk/Makefile.am (modified) * trunk/src/kmk/Makefile.kmk (modified) * trunk/src/kmk/dir.c (modified) * trunk/src/kmk/file.c (modified) * trunk/src/kmk/function.c (modified) * trunk/src/kmk/hash.c (modified) * trunk/src/kmk/main.c (modified) * trunk/src/kmk/make.h (modified) * trunk/src/kmk/strcache2.c (modified) * trunk/src/kmk/variable.c (modified) kmk: CONFIG_WITH_MINIMAL_STATS vs. CONFIG_WITH_MAKE_STATS - require ... Wed, 22 Oct 2008 21:25:49 GMT bird [1914] * trunk/src/kmk/dir.c (modified) * trunk/src/kmk/hash.c (modified) * trunk/src/kmk/strcache2.h (modified) * trunk/src/kmk/variable.c (modified) strcache2: strcache2_get_ptr_hash -> strcache2_calc_ptr_hash. Wed, 22 Oct 2008 21:24:04 GMT bird [1913] * trunk/src/kmk/dir.c (modified) * trunk/src/kmk/hash.c (modified) * trunk/src/kmk/incdep.c (modified) * trunk/src/kmk/strcache2.c (modified) * trunk/src/kmk/strcache2.h (modified) * trunk/src/kmk/variable.c (modified) strcache2: hash1 -> hash; -hash2. Wed, 22 Oct 2008 21:17:27 GMT bird [1912] * trunk/src/kmk/incdep.c (modified) * trunk/src/kmk/strcache2.c (modified) * trunk/src/kmk/strcache2.h (modified) strcache2: collapsed the STRCACHE2_USE_CHAINING checks. Wed, 22 Oct 2008 20:54:02 GMT bird [1911] * trunk/src/kmk/read.c (modified) read.c: don't allocate the ifdef/ifndef variable, just use the ... Wed, 22 Oct 2008 19:50:39 GMT bird [1910] * trunk/src/kmk/strcache2.c (modified) strcache2: switch to Paul Hsieh's superfash hash function (finally ... Wed, 22 Oct 2008 18:49:48 GMT bird [1909] * trunk/src/kmk/incdep.c (modified) * trunk/src/kmk/strcache2.c (modified) * trunk/src/kmk/strcache2.h (modified) strcache2: Implemented collision resolution by chaining instead of ... Tue, 21 Oct 2008 21:35:29 GMT bird [1908] * trunk/src/kmk/strcache2.c (modified) * trunk/src/kmk/strcache2.h (modified) strchache2: hash hacking (no results or changes yet). Tue, 21 Oct 2008 21:29:00 GMT bird [1907] * trunk/src/kmk/variable.c (modified) variable.c: redid the need-for-speed stuff in lookup_variable. Tue, 21 Oct 2008 05:38:50 GMT bird [1906] * trunk/src/kmk/strcache2.c (modified) strcache2: oops, mixed arguments to inlined functions screwing up ... Tue, 21 Oct 2008 05:13:12 GMT bird [1905] * trunk/src/kmk/strcache2.c (modified) strcache2: benchmarked strcache2_case_sensitive_hash_1 against ... Tue, 21 Oct 2008 04:46:23 GMT bird [1904] * trunk/src/kmk/strcache2.c (modified) strcache2: inline memcmp seems faster (weird). Tue, 21 Oct 2008 04:25:19 GMT bird [1903] * trunk/src/kmk/file.c (modified) * trunk/src/kmk/incdep.c (modified) * trunk/src/kmk/strcache2.c (modified) * trunk/src/kmk/strcache2.h (modified) strcache2: some cleanup. Tue, 21 Oct 2008 03:57:00 GMT bird [1902] * trunk/src/kmk/dir.c (modified) * trunk/src/kmk/file.c (modified) * trunk/src/kmk/hash.c (modified) * trunk/src/kmk/hash.h (modified) * trunk/src/kmk/variable.c (modified) kmk: Moved the strcache hash optimizations into the hash code. Tue, 21 Oct 2008 03:12:16 GMT bird [1901] * trunk/src/kmk/dir.c (modified) * trunk/src/kmk/file.c (modified) kmk: fix for file_cache <-> file_strcache confusion bug introduced ... Tue, 21 Oct 2008 02:03:55 GMT bird [1900] * trunk/src/kmk/strcache2.h (modified) strcache2: cacheline alignment. Tue, 21 Oct 2008 01:51:48 GMT bird [1899] * trunk/src/kmk/strcache2.c (modified) kmk: strcache2 - some alignment fixes. Tue, 21 Oct 2008 01:39:22 GMT bird [1898] * trunk/src/kmk/commands.c (modified) * trunk/src/kmk/file.c (modified) * trunk/src/kmk/read.c (modified) kmk: strcache_get_len -> strcache2_get_len Tue, 21 Oct 2008 01:21:39 GMT bird [1897] * trunk/src/kmk/dir.c (modified) * trunk/src/kmk/file.c (modified) * trunk/src/kmk/make.h (modified) * trunk/src/kmk/strcache2.c (modified) * trunk/src/kmk/strcache2.h (modified) * trunk/src/kmk/variable.c (modified) kmk: added strcache2_get_ptr_hash for more efficent hashing by string ... Tue, 21 Oct 2008 00:52:16 GMT bird [1896] * trunk/src/kmk/make.h (modified) moved stuff. Tue, 21 Oct 2008 00:48:25 GMT bird [1895] * trunk/src/kmk/incdep.c (modified) * trunk/src/kmk/make.h (modified) * trunk/src/kmk/strcache.c (modified) kmk: strcache cleanup. Mon, 20 Oct 2008 02:13:33 GMT bird [1893] * trunk/src/kmk/make.h (modified) added a todo. Mon, 20 Oct 2008 02:00:45 GMT bird [1892] * trunk/src/kmk/file.c (modified) kmk: file.c - use strcache2_lookup when an uncached string is handed ... Mon, 20 Oct 2008 01:46:19 GMT bird [1891] * trunk/src/kmk/dir.c (modified) kmk: dir.c - get hash values from the strcache and exploit it for ... Sun, 19 Oct 2008 23:50:58 GMT bird [1890] * trunk/src/kmk/variable.c (modified) kmk: Save pointers to global variables together with the string in ... Sun, 19 Oct 2008 23:31:38 GMT bird [1889] * trunk/src/kmk/Makefile.am (modified) * trunk/src/kmk/make.h (modified) * trunk/src/kmk/variable.c (modified) * trunk/src/kmk/variable.h (modified) kmk: cleaned out the VARIABLE_HASH code (was removed in favor of the ... Sun, 19 Oct 2008 23:20:26 GMT bird [1888] * trunk/src/kmk/strcache2.c (modified) * trunk/src/kmk/variable.c (modified) fixed bug in previous revision. Sun, 19 Oct 2008 23:08:10 GMT bird [1887] * trunk/src/kmk/Makefile.kmk (modified) * trunk/src/kmk/strcache2.c (modified) * trunk/src/kmk/strcache2.h (modified) * trunk/src/kmk/variable.c (modified) kmk: delegating variable string hashing to the strcache, dropping the ... Sun, 19 Oct 2008 22:27:49 GMT bird [1886] * trunk/src/kmk/variable.c (modified) kmk: variable+strcache2 hacking. Sun, 19 Oct 2008 21:30:02 GMT bird [1885] * trunk/src/kmk/make.h (modified) * trunk/src/kmk/strcache2.c (modified) * trunk/src/kmk/strcache2.h (modified) kmk: strcache2_add_file macro for wrapping case sensitive/insenstive ... Fri, 17 Oct 2008 02:06:50 GMT bird [1882] * trunk/src/kmk/implicit.c (modified) * trunk/src/kmk/main.c (modified) two strcache_add optimizations. Fri, 17 Oct 2008 02:06:26 GMT bird [1881] * trunk/src/kmk/file.c (modified) Made do_2nd_target_expansion skip a strlen. Fri, 17 Oct 2008 02:06:03 GMT bird [1880] * trunk/src/kmk/expand.c (modified) kmk: cleanup expand_argument hacks. Fri, 17 Oct 2008 01:53:05 GMT bird [1879] * trunk/src/kmk/main.c (modified) * trunk/src/kmk/strcache2.c (modified) do strcache2_print_stats_all. Fri, 17 Oct 2008 01:46:59 GMT bird [1878] * trunk/src/kmk/dir.c (modified) kmk: Use allocation caches for the tiny structs in dir.c (three ... Fri, 17 Oct 2008 01:29:35 GMT bird [1877] * trunk/src/kmk/variable.c (modified) * trunk/src/kmk/variable.h (modified) kmk: cache variable name strings. Fri, 17 Oct 2008 01:02:35 GMT bird [1876] * trunk/src/kmk/misc.c (modified) kmk/alloccache: item size alignment. Fri, 17 Oct 2008 01:02:16 GMT bird [1875] * trunk/src/kmk/incdep.c (modified) incdep: whitespace Fri, 17 Oct 2008 00:41:33 GMT bird [1874] * trunk/src/kmk/incdep.c (modified) incdep: The variable names should live in a different string cache. Fri, 17 Oct 2008 00:10:24 GMT bird [1873] * trunk/src/kmk/incdep.c (modified) incdep: free records during flushing. Fri, 17 Oct 2008 00:05:27 GMT bird [1872] * trunk/src/kmk/incdep.c (modified) * trunk/src/kmk/make.h (modified) * trunk/src/kmk/misc.c (modified) incdep: use an allocation cache for the records to reduce xmalloc and ... Thu, 16 Oct 2008 23:38:45 GMT bird [1871] * trunk/src/kmk/incdep.c (modified) incdep: Use strcache2 for the dep and file names. Thu, 16 Oct 2008 23:15:30 GMT bird [1870] * trunk/src/kmk/Makefile.am (modified) * trunk/src/kmk/Makefile.kmk (modified) * trunk/src/kmk/expand.c (modified) * trunk/src/kmk/incdep.c (modified) * trunk/src/kmk/make.h (modified) * trunk/src/kmk/strcache.c (modified) * trunk/src/kmk/strcache2.c (modified) * trunk/src/kmk/strcache2.h (modified) kmk: replaced strcache with strcacahe2. Thu, 16 Oct 2008 05:05:04 GMT bird [1869] * trunk/src/kmk/Makefile.am (modified) * trunk/src/kmk/Makefile.kmk (modified) * trunk/src/kmk/strcache2.c (added) * trunk/src/kmk/strcache2.h (added) kmk: untested version of strcache2, lacking rehash. This is a string ... Wed, 15 Oct 2008 23:10:08 GMT bird [1868] * trunk/src/kmk/incdep.c (modified) kmk/incdep: getting acceptable parse-in-worker performance on linux now. Wed, 15 Oct 2008 01:28:32 GMT bird [1867] * trunk/src/kmk/file.c (modified) * trunk/src/kmk/main.c (modified) * trunk/src/kmk/make.h (modified) * trunk/src/kmk/read.c (modified) * trunk/src/kmk/rule.c (modified) kmk: commands and file allocation caches. Wed, 15 Oct 2008 01:11:41 GMT bird [1866] * trunk/src/kmk/incdep.c (modified) kmk/incdep: don't allocate nameseq records, there will be a whole lot ... Wed, 15 Oct 2008 01:08:24 GMT bird [1865] * trunk/src/kmk/incdep.c (modified) kmk/incdep: don't allocate nameseq records, there will be a whole lot ... Wed, 15 Oct 2008 01:00:57 GMT bird [1864] * trunk/src/kmk/hash.c (modified) * trunk/src/kmk/hash.h (modified) * trunk/src/kmk/implicit.c (modified) * trunk/src/kmk/main.c (modified) * trunk/src/kmk/make.h (modified) * trunk/src/kmk/misc.c (modified) * trunk/src/kmk/variable.c (modified) kmk: use alloc caches for variables, variable sets and varaible set ... Tue, 14 Oct 2008 09:46:23 GMT bird [1863] * trunk/src/kmk/Makefile.am (modified) * trunk/src/kmk/Makefile.kmk (modified) * trunk/src/kmk/default.c (modified) * trunk/src/kmk/dep.h (modified) * trunk/src/kmk/file.c (modified) * trunk/src/kmk/function.c (modified) * trunk/src/kmk/implicit.c (modified) * trunk/src/kmk/incdep.c (modified) * trunk/src/kmk/main.c (modified) * trunk/src/kmk/make.h (modified) * trunk/src/kmk/misc.c (modified) * trunk/src/kmk/read.c (modified) * trunk/src/kmk/rule.c (modified) * trunk/src/kmk/variable.c (modified) kmk: Allocation caches for nameseq, dep and idep. next: variable. Tue, 14 Oct 2008 01:04:03 GMT bird [1862] * trunk/src/kmk/incdep.c (modified) * trunk/src/kmk/misc.c (modified) * trunk/src/kmk/read.c (modified) * trunk/src/kmk/remake.c (modified) kmk: some preliminary allocation caching. seems dep, variables, ... Mon, 13 Oct 2008 05:08:05 GMT bird [1861] * trunk/src/kmk/read.c (modified) kmk: and another strcache_get_len. Mon, 13 Oct 2008 05:01:17 GMT bird [1860] * trunk/src/kmk/commands.c (modified) kmk: replaced strlen with strcache_get_len in a number of place in ... Mon, 13 Oct 2008 04:52:13 GMT bird [1859] * trunk/src/kmk/misc.c (modified) kmk: cache 'struct dep' memory to safe time in free() and xmalloc() ... Mon, 13 Oct 2008 04:35:21 GMT bird [1858] * trunk/src/kmk/hash.c (modified) * trunk/src/kmk/hash.h (modified) * trunk/src/kmk/strcache.c (modified) kmk: Added hash_find_slot_prehashed for the benefit of the strcache ... Mon, 13 Oct 2008 03:58:07 GMT bird [1857] * trunk/src/kmk/file.c (modified) * trunk/src/kmk/filedef.h (modified) * trunk/src/kmk/make.h (modified) * trunk/src/kmk/read.c (modified) * trunk/src/kmk/remake.c (modified) * trunk/src/kmk/strcache.c (modified) kmk: improved the hashing of file table entries by making the ... Mon, 13 Oct 2008 02:53:25 GMT bird [1856] * trunk/src/kmk/main.c (modified) inverted check. Mon, 13 Oct 2008 02:09:55 GMT bird [1855] * trunk/src/kmk/main.c (modified) kmk: Don't call verify_file_data_base, which only performs assert- ... Mon, 13 Oct 2008 01:50:33 GMT bird [1854] * trunk/src/kmk/incdep.c (modified) * trunk/src/kmk/make.h (modified) * trunk/src/kmk/strcache.c (modified) kmk: offload hashing of strcache entries to the includedep thread(s). Mon, 13 Oct 2008 01:46:35 GMT bird [1853] * trunk/src/kmk/read.c (modified) kmk: Optimized the dependency hashing done by uniquize_deps() by ... Mon, 13 Oct 2008 00:16:34 GMT bird [1852] * trunk/src/kmk/incdep.c (modified) kmk/incdep: fixed the multithreaded heap issue on darwin. Only one ... Sun, 12 Oct 2008 17:37:39 GMT bird [1851] * trunk/src/kmk/file.c (modified) fixed bug introduced earlier today. Sun, 12 Oct 2008 16:55:33 GMT bird [1850] * trunk/src/kmk/file.c (modified) kmk: save some file::deps list waking. Sun, 12 Oct 2008 16:48:09 GMT bird [1849] * trunk/src/kmk/file.c (modified) kmk: a little adjustment to save 10 clock ticks or something. Sun, 12 Oct 2008 16:41:07 GMT bird [1848] * trunk/src/kmk/dep.h (modified) * trunk/src/kmk/file.c (modified) * trunk/src/kmk/incdep.c (modified) kmk: includedep dependencies does not require unescaping or any other ... Sun, 12 Oct 2008 16:25:03 GMT bird [1847] * trunk/src/kmk/expand.c (modified) * trunk/src/kmk/file.c (modified) * trunk/src/kmk/function.c (modified) * trunk/src/kmk/variable.h (modified) kmk: Some optimizations for expand_deps. Sun, 12 Oct 2008 16:24:04 GMT bird [1846] * trunk/src/kmk/read.c (modified) spaces (read.c) Sun, 12 Oct 2008 16:23:10 GMT bird [1845] * trunk/src/kmk/strcache.c (modified) kmk/strcache: Make use of the string length to avoid expensive ... Sun, 12 Oct 2008 15:43:24 GMT bird [1844] * trunk/src/kmk/strcache.c (modified) one terminator is sufficient. Sun, 12 Oct 2008 15:40:32 GMT bird [1843] * trunk/src/kmk/make.h (modified) * trunk/src/kmk/strcache.c (modified) kmk/strcache: align the strings on a (somewhat) natural boundrary and ... Sat, 11 Oct 2008 20:53:51 GMT bird [1842] * trunk/src/kmk/make.h (modified) * trunk/src/kmk/misc.c (modified) kmk: more hacking, makde isblank work skip ctype everywhere instead ... Sat, 11 Oct 2008 20:04:46 GMT bird [1841] * trunk/src/kmk/misc.c (modified) misc: some more unroll attemtps. Sat, 11 Oct 2008 19:59:17 GMT bird [1840] * trunk/src/kmk/make.h (modified) * trunk/src/kmk/misc.c (modified) * trunk/src/kmk/variable.c (modified) better? predictions can do bad stuff... Sat, 11 Oct 2008 19:36:50 GMT bird [1839] * trunk/src/kmk/misc.c (modified) Did a couple of loop unrolls in find_next_token. Sat, 11 Oct 2008 19:34:24 GMT bird [1838] * trunk/src/kmk/function.c (modified) * trunk/src/kmk/read.c (modified) kmk: fixed string termination for three strcache_add_len calls. (it ... Sat, 11 Oct 2008 19:24:07 GMT bird [1837] * trunk/src/kmk/expand.c (modified) kmk: no need for the '\0' hack in expand_argument when using ... Sat, 11 Oct 2008 19:22:26 GMT bird [1836] * trunk/src/kmk/function.c (modified) kmk: don't return '\0'. Sat, 11 Oct 2008 19:18:45 GMT bird [1835] * trunk/src/kmk/expand.c (modified) * trunk/src/kmk/make.h (modified) kmk: fixed assertion + made them useful. Sat, 11 Oct 2008 19:07:29 GMT bird [1834] * trunk/src/kmk/expand.c (modified) * trunk/src/kmk/kbuild.c (modified) * trunk/src/kmk/make.h (modified) kmk: assertions. Sat, 11 Oct 2008 17:14:02 GMT bird [1833] * trunk/src/kmk/file.c (modified) kmk: Obvious optimization in file_hash_cmp. Sat, 11 Oct 2008 15:10:54 GMT bird [1832] * trunk/src/kmk/kbuild.c (modified) kmk: starting to eliminate kbuild_get_variable_fmt*. Use sizeof() on ...