967510d152ncd: 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
bad183475encd: NCDInterpBlock: speed up statement lookups by using precomputed hashes
ambrop7
2012-08-04 09:55:24 +00:00
d18f1246eastructure: 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
a4e6b1deffncd: NCDObject: NCDObject_ResolveVarExprCompact(): allow names to be NULL if num_names is 0
ambrop7
2012-08-03 18:35:03 +00:00
ff16a3b8f3ncd: store objecte names as strings one after another, instead of with arrays of pointers
ambrop7
2012-08-03 18:28:57 +00:00
3d71336ec3ncd: 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
7e22cd7a6bncd: small optimization
ambrop7
2012-08-03 15:32:58 +00:00
d25c2e8746ncd: optimize replacing placeholders in statement arguments by preparing replacement instructions in advance
ambrop7
2012-08-03 15:11:13 +00:00
79f824fb65structure: CHash: rework, remove unused features
ambrop7
2012-08-03 12:01:54 +00:00
60249f255bncd: 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
c238b14987ncd: 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
8f808a6624ncd: 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
4425f4a58cmisc: balloc.h: add BAllocTwoArrays() and BAllocThreeArrays()
ambrop7
2012-07-29 12:03:42 +00:00
98d0d04263add missing include
ambrop7
2012-07-29 11:24:31 +00:00
047f36ad43ncd: fix integer overflow for impossibly long processes
ambrop7
2012-07-29 11:23:26 +00:00
c4017da109INSTALL-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
3aefca3015examples: bavl_test, savl_test: remove remaining entries after random removal
ambrop7
2012-07-22 14:36:31 +00:00
48ce9a8148structure: 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
21342ed122examples: bavl_test: synchronize with cavl_test (remove dead code and add explicit verification)
ambrop7
2012-07-22 14:10:13 +00:00
3cacf187d3structure: 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
b4a52f1a7astructure: add SAvl, a wrapper around CAvl assuming links are pointers
ambrop7
2012-07-22 14:06:53 +00:00
ad80c756ffncd: modules: explode: fix a malloc(0)
ambrop7
2012-07-19 14:47:26 +00:00
3f217dcf13tun2socks: 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
d95c751389ncd: 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
e80d8295a3ncd: modules: foreach: use int's instead of size_t's for statement indices
ambrop7
2012-07-11 11:59:03 +00:00
698c757010ncd: NCDConfigTokenizer: recognize Foreach and As tokens
ambrop7
2012-07-05 23:58:52 +00:00
26f540c955ncd: 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
0e337dfb8ancd: 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