Commit Graph

  • 29d4c85ca0 version 1.999.123rc6 ambrop7 2012-08-04 12:50:01 +00:00
  • 967510d152 ncd: NCDInterpBlock: Use a trie instead of hash table to lookup statements by name. It is much faster, and makes programs run around 10% faster. ambrop7 2012-08-04 12:12:08 +00:00
  • a8bcd4c0b2 structure: add BStringTrie ambrop7 2012-08-04 12:05:37 +00:00
  • 2a2e79dcae misc: add array_length.h ambrop7 2012-08-04 12:04:18 +00:00
  • fcf1046513 cosmetic changes ambrop7 2012-08-04 10:00:31 +00:00
  • bad183475e ncd: NCDInterpBlock: speed up statement lookups by using precomputed hashes ambrop7 2012-08-04 09:55:24 +00:00
  • d18f1246ea structure: CHash: add option to indicate entry hashes can be obtained efficiently, and use this to speed up lookups. ambrop7 2012-08-04 09:53:13 +00:00
  • ba74a496c1 version 1.999.123rc5 ambrop7 2012-08-03 19:29:31 +00:00
  • a4e6b1deff ncd: NCDObject: NCDObject_ResolveVarExprCompact(): allow names to be NULL if num_names is 0 ambrop7 2012-08-03 18:35:03 +00:00
  • ff16a3b8f3 ncd: store objecte names as strings one after another, instead of with arrays of pointers ambrop7 2012-08-03 18:28:57 +00:00
  • 3d71336ec3 ncd: store variable names as strings one after another, instead of with arrays of pointers. Also make NCDObject_ResolveObjExprCompact() take size_t not int, to be consistent with the newly added NCDObject_ResolveVarExprCompact(). ambrop7 2012-08-03 17:48:45 +00:00
  • 7e22cd7a6b ncd: small optimization ambrop7 2012-08-03 15:32:58 +00:00
  • d25c2e8746 ncd: optimize replacing placeholders in statement arguments by preparing replacement instructions in advance ambrop7 2012-08-03 15:11:13 +00:00
  • 79f824fb65 structure: CHash: rework, remove unused features ambrop7 2012-08-03 12:01:54 +00:00
  • 92f30f6bae version 1.999.123rc4 ambrop7 2012-08-03 00:20:56 +00:00
  • 60249f255b ncd: improve how arguments are instantiated. Keep the incomplete arguments in NCDValMem's, but containing placholder values in place of variables. When the arguments need to be instantiated, the entire NCDValMem is byte-copied, and the placeholders are replaced in-place with real values. This removes the NCDInterpValue stuff, and is slightly faster. ambrop7 2012-08-03 00:19:59 +00:00
  • 984025f84d ncd: cosmetic changes ambrop7 2012-08-02 13:03:53 +00:00
  • 9923141a74 structure: CHash: small optimization in Lookup() ambrop7 2012-08-02 11:40:18 +00:00
  • b58e03f725 cosmetic changes ambrop7 2012-08-02 10:34:53 +00:00
  • c238b14987 ncd: Use strlen+memcpy to build type names for method calls instead of snprintf(). This makes the turing machine example run ~10% faster. ambrop7 2012-08-02 10:30:59 +00:00
  • d3bd13f229 ncd: remove process_rap() and instead add process_have_child() ambrop7 2012-08-02 09:34:31 +00:00
  • c59047d273 ncd: small memory optimization ambrop7 2012-08-02 00:04:01 +00:00
  • 687ec94f2b cosmetic changes ambrop7 2012-08-01 23:52:05 +00:00
  • a27159ec27 base: BPending: small optimization by removing the "pending" flag ambrop7 2012-08-01 23:39:53 +00:00
  • 65f199e4a4 base: BPending: use SLinkedList instead of LinkedList1 ambrop7 2012-08-01 23:20:21 +00:00
  • 9323a5e812 structure: add SLinkedList ambrop7 2012-08-01 23:16:12 +00:00
  • 224a3a4da6 ncd: cosmetic changes ambrop7 2012-08-01 22:08:37 +00:00
  • 08845d48a9 cosmetic changes ambrop7 2012-08-01 20:43:34 +00:00
  • 550b936ff9 compile with PathScale compiler ambrop7 2012-08-01 20:38:27 +00:00
  • 60c16ced9b version 1.999.123rc3 ambrop7 2012-07-29 12:08:10 +00:00
  • 8f808a6624 ncd: use BAllocThreeArrays() to allocate all process memory in a single allocation. Gives a small performance improvement. ambrop7 2012-07-29 12:05:21 +00:00
  • 4425f4a58c misc: balloc.h: add BAllocTwoArrays() and BAllocThreeArrays() ambrop7 2012-07-29 12:03:42 +00:00
  • 98d0d04263 add missing include ambrop7 2012-07-29 11:24:31 +00:00
  • 047f36ad43 ncd: fix integer overflow for impossibly long processes ambrop7 2012-07-29 11:23:26 +00:00
  • 4fe920c6fb cosmetic changes ambrop7 2012-07-29 11:19:50 +00:00
  • 0e2f69fcf0 ncd: modules: value: add value::replace_this() and value::replace_this_undo() ambrop7 2012-07-29 10:40:35 +00:00
  • 5a411164dd ncd: modules: value: rename value::set() to value::reset() ambrop7 2012-07-29 08:45:20 +00:00
  • 05eecc0a5c ncd: modules: value: add value::set() and test code ambrop7 2012-07-25 00:28:29 +00:00
  • 310cb2aea7 ncd: modules: value: add value::replace() and value::replace_undo(). Also add test code. ambrop7 2012-07-24 23:33:31 +00:00
  • 80f640ee0d version 1.999.123rc2 ambrop7 2012-07-24 13:43:30 +00:00
  • 2c66094f18 system: BConnection: fix typo which broke pipe BConnection's ambrop7 2012-07-24 13:42:56 +00:00
  • c4017da109 INSTALL-WINDOWS: openssl compiles fine without "no-asm". Add note that prebuilt versions of libraries are available. ambrop7 2012-07-24 11:41:02 +00:00
  • 406695215a version 1.999.123rc1 ambrop7 2012-07-24 11:05:25 +00:00
  • 29952b1c68 INSTALL-WINDOWS: add MSVC build instructions, remove everything else ambrop7 2012-07-24 11:04:24 +00:00
  • 3f49f1bf40 server: fix cosmetic typo ambrop7 2012-07-24 10:29:24 +00:00
  • a21e23fe8a port to compile with MSVC ambrop7 2012-07-24 10:26:30 +00:00
  • adec9ece4e version 1.999.122rc5 ambrop7 2012-07-22 16:22:57 +00:00
  • 68fcc72651 structure: SAvl: add count overflow assertion in Insert() ambrop7 2012-07-22 16:20:45 +00:00
  • efc9caf88e examples: savl_test: turn on count keeping and test it ambrop7 2012-07-22 16:17:53 +00:00
  • 0b2cddc069 client: FrameDecider: port multicast tree to SAvl ambrop7 2012-07-22 16:11:03 +00:00
  • fec901e526 client: FrameDecider: port groups tree to SAvl ambrop7 2012-07-22 15:59:23 +00:00
  • 41bc997a15 client: FrameDecider: port macs tree to SAvl ambrop7 2012-07-22 15:50:46 +00:00
  • 97fb01b514 client: FragmentProtoAssembler: port to SAvl ambrop7 2012-07-22 15:26:03 +00:00
  • cf40e1671e ncd: NCDValue: port to SAvl ambrop7 2012-07-22 15:17:06 +00:00
  • 0e12627361 ncd: modules: value: port to SAvl ambrop7 2012-07-22 15:13:14 +00:00
  • b2ed2bb8d2 structure: SAvl: fix typo ambrop7 2012-07-22 14:53:18 +00:00
  • 2a6d9a9c25 system: system/BReactor_badvpn: port to SAvl ambrop7 2012-07-22 14:44:59 +00:00
  • 34317a2a39 structure: BAVL: rename BAVL_DEBUG to BAVL_AUTO_VERIFY ambrop7 2012-07-22 14:43:40 +00:00
  • ea9256c004 cosmetic changes ambrop7 2012-07-22 14:37:35 +00:00
  • 3aefca3015 examples: bavl_test, savl_test: remove remaining entries after random removal ambrop7 2012-07-22 14:36:31 +00:00
  • 48ce9a8148 structure: CAvl: rename CAVL_PARAM_VERIFY to CAVL_AUTO_VERIFY, because it's meant to be used globally rather than as a parameter ambrop7 2012-07-22 14:18:35 +00:00
  • 21342ed122 examples: bavl_test: synchronize with cavl_test (remove dead code and add explicit verification) ambrop7 2012-07-22 14:10:13 +00:00
  • 0fc0ea39d8 examples: add savl_test ambrop7 2012-07-22 14:09:02 +00:00
  • 3cacf187d3 structure: BAVL: add BAVL_Verify(), and make verification asssertion forced so it can be used when assertions are disabled ambrop7 2012-07-22 14:08:20 +00:00
  • b4a52f1a7a structure: add SAvl, a wrapper around CAvl assuming links are pointers ambrop7 2012-07-22 14:06:53 +00:00
  • 04abca3f8b structure: BCountAVL: remove ambrop7 2012-07-22 13:55:59 +00:00
  • 2d34d4cec2 simplify comparators using B_COMPARE ambrop7 2012-07-20 22:40:32 +00:00
  • 0804cb91b4 version 1.999.122rc4 ambrop7 2012-07-20 15:57:33 +00:00
  • 8802e52497 client: FrameDecider: port multicast tree to CAvl ambrop7 2012-07-20 15:56:04 +00:00
  • cff5caf333 client: FrameDecider: port groups tree to CAvl ambrop7 2012-07-20 15:41:23 +00:00
  • ed91d985b2 client: FrameDecider: port macs tree to CAvl ambrop7 2012-07-20 15:18:30 +00:00
  • 289298e0ae client: FragmentProtoAssembler: port to CAvl ambrop7 2012-07-20 14:39:33 +00:00
  • ecb72b1aac ncd: modules: value: port to CAvl ambrop7 2012-07-20 13:42:59 +00:00
  • 8c1df4f007 structure: CAvl: add assertion against count overflow ambrop7 2012-07-20 13:26:48 +00:00
  • 93bf3dd634 version 1.999.122rc3 ambrop7 2012-07-19 22:50:25 +00:00
  • 32e27e2091 system: BReactor_badvpn: use CAvl for timers instead of BHeap ambrop7 2012-07-19 22:48:36 +00:00
  • 85dab50d99 misc: add compare.h ambrop7 2012-07-19 22:30:16 +00:00
  • c14d248662 structure: CAvl: add option to not have lookup operations ambrop7 2012-07-19 22:28:07 +00:00
  • e9e0285a80 structure: CAvl: cosmetic changes ambrop7 2012-07-19 21:29:57 +00:00
  • 7e5044f090 fix some malloc(0) ambrop7 2012-07-19 15:19:05 +00:00
  • 7e02176853 misc: concat_strings.h: add missing va_end ambrop7 2012-07-19 15:16:58 +00:00
  • d7c427733b fix cosmetic problems find by clang analyzer ambrop7 2012-07-19 14:55:18 +00:00
  • 42979029f6 ncd: tests: add explode.ncd ambrop7 2012-07-19 14:53:46 +00:00
  • ad80c756ff ncd: modules: explode: fix a malloc(0) ambrop7 2012-07-19 14:47:26 +00:00
  • 3f217dcf13 tun2socks: fix typo which might cause a crash if tcp_close() failed due to out of memory (theoretical bug only). Found with the help of clang static analyzer. ambrop7 2012-07-19 14:33:42 +00:00
  • 24cfb65686 cosmetic changes ambrop7 2012-07-14 00:52:22 +00:00
  • d95c751389 ncd: NCDModule: make interpreter-side process functions call the process creator callbacks directly, and remove a bunch ofstates made redundant ambrop7 2012-07-14 00:50:31 +00:00
  • e80d8295a3 ncd: modules: foreach: use int's instead of size_t's for statement indices ambrop7 2012-07-11 11:59:03 +00:00
  • 5f55691f04 version 1.999.122rc2 ambrop7 2012-07-06 01:09:35 +00:00
  • aa143b7c02 ncd: tests: add foreach.ncd ambrop7 2012-07-06 01:05:23 +00:00
  • 43110fd7db cosmetic changes ambrop7 2012-07-06 00:56:27 +00:00
  • 78aaf44824 cosmetic changes ambrop7 2012-07-06 00:51:35 +00:00
  • 0d6cfe6e27 BPredicate: regenerate parser with new Bison verison ambrop7 2012-07-06 00:49:06 +00:00
  • eb8e79cc13 ncd: implement Foreach clause ambrop7 2012-07-06 00:42:26 +00:00
  • 1637bd7583 ncd: NCDAst: add Foreach syntax ambrop7 2012-07-06 00:15:39 +00:00
  • 698c757010 ncd: NCDConfigTokenizer: recognize Foreach and As tokens ambrop7 2012-07-05 23:58:52 +00:00
  • 26f540c955 ncd: modules: foreach: implement iteration over maps, add foreach_emb() to be used in the Foreach clause impementation ambrop7 2012-07-05 23:54:48 +00:00
  • 0e337dfb8a ncd: modules: spawn: implement _caller in called process, implement spawn::join(), port to new instance allocation method ambrop7 2012-07-05 23:53:11 +00:00
  • 7442f5c481 ncd: modules: add explode ambrop7 2012-07-05 23:51:03 +00:00
  • 3c08174cbc ncd: modules: add reboot ambrop7 2012-07-05 23:48:27 +00:00