Tcl Source Code

All files named "generic/tclPreserve.c"
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

History for generic/tclPreserve.c

2024-08-28
16:33
Merge [3a60363aa10ef993]: Clean up a lot of whitespace issues. file: [6723dd9370] check-in: [627781a6db] user: pooryorick branch: unchained, size: 13493
2024-08-22
19:14
Merge [7c849f60c765dd4b]: Fix [52dbc4b3f8]: tclInterp.c: Tcl_Free() called through pointer of incorrect type. file: [5b9c63fb9f] check-in: [9c96277010] user: pooryorick branch: unchained, size: 13486
2024-07-20
15:59
Merge trunk [91c2f411e7e71552], TIP #636 (tip-636-tcl9-644), resolve all conflicts including those resulting from conflicting Tcl_Obj interface implementations, and relicense under GNU Affero General Public License. All tests pass. file: [504d2ec303] check-in: [d8a3450f12] user: pooryorick branch: unchained, size: 13494
2024-04-23
16:06
Hmm, something is broken. Leaving this here but this commit is definitely wrong somehow file: [5dbd23c751] check-in: [b356268e32] user: dkf branch: tidy-indentation, size: 13123
2024-01-30
17:07
Tweaking indentation of code; really unimportant... file: [a18cf56239] check-in: [bb72806960] user: dkf branch: dkf-indent-tweak, size: 13119
2023-11-03
19:56
merge trunk file: [9f0133ecb7] check-in: [4627159c40] user: dgp branch: dgp-refactor, size: 12759
2023-10-13
16:00
Merge 8.7 file: [b8b7f9e160] check-in: [7c849f60c7] user: jan.nijtmans branch: main, size: 13116
2023-04-03
16:15
merge trunk file: [99db4a6808] check-in: [9b9daa251b] user: dgp branch: dgp-refactor, size: 12767
2023-03-05
20:46
Merge 9.0 file: [1bf98b332b] check-in: [fef53bf657] user: jan.nijtmans branch: tip-626, size: 13124
2020-12-10
19:35
Merge trunk; silence shadow warning file: [63af8eea70] check-in: [fd76c5f3fc] user: dgp branch: dgp-refactor, size: 12787
2020-12-08
15:42
Merge 8.7 file: [2dadcef7eb] check-in: [71493b571b] user: jan.nijtmans branch: main, size: 13144
15:31
Add -finput-charset=UTF-8 and -fextended-identifiers to gcc (and clang). All C sources can now use UTF-8, as far as gcc/clang/msvc support it. Not used yet file: [96048b7708] check-in: [4254aa305b] user: jan.nijtmans branch: core-8-branch, size: 13128
2020-03-18
19:10
merge trunk file: [1ecb4e597d] check-in: [d9065bd3aa] user: dgp branch: dgp-refactor, size: 12789
2020-03-17
01:20
merge 8.7 file: [66a5bc267f] check-in: [4d9717c8ef] user: dgp branch: trunk, size: 13146
01:01
TIP 569 - remove lint comments file: [e56e64de52] check-in: [658a498ae4] user: dgp branch: core-8-branch, size: 13130
2020-02-28
19:45
Merge trunk, and resolve conflicts. file: [b0d2307b64] check-in: [40258de7ff] user: dgp branch: dgp-refactor, size: 12805
12:46
Merge 8.7 file: [07409cdcdb] check-in: [b7af922d61] user: jan.nijtmans branch: trunk, size: 13162
2019-09-08
14:02
Fix travis build for --enable-symbols=all file: [06f3cce9e7] check-in: [e9d72aef77] user: jan.nijtmans branch: dgp-refactor, size: 12773
2019-07-10
05:51
Merge 8.7, and continue implementation. Almost done file: [5633d77b32] check-in: [237cdadf3f] user: jan.nijtmans branch: cplusplus, size: 13146
2018-11-15
03:16
Merge TIP 494 and remove conflicts. Result doesn't work. file: [d1118b2479] check-in: [37c7a89a0b] user: dgp branch: dgp-refactor, size: 12619
2018-09-28
18:19
code/doc cleanup file: [d7d143140a] check-in: [84a5f246b7] user: jan.nijtmans branch: memory-API, size: 13117
2018-09-01
22:01
Change ckalloc and friends to Tcl_Alloc and friends. Add two defines, TCL_IO_FAILURE and TCL_NO_LENGTH (experimental, still open to be renamed following discussion) file: [60ae1981d4] check-in: [f13660b5a5] user: jan.nijtmans branch: memory-API, size: 13102
2017-11-09
15:47
Rebase branch to trunk. file: [14931b439f] check-in: [f714eca8f2] user: dgp branch: dgp-refactor, size: 12626
2017-03-20
10:31
Merge trunk file: [3663d32abc] check-in: [8accd6cd45] user: jan.nijtmans branch: novem, size: 13088
10:24
If compiled with TCL_NO_DEPRECATED, remove some more stub entries which are not used any more. file: [8af3090e91] check-in: [3651512988] user: jan.nijtmans branch: trunk, size: 13101
2016-11-28
16:24
merge novem file: [472c32e17d] check-in: [676824c7c1] user: dgp branch: dgp-refactor, size: 12613
2016-11-21
10:40
Merge trunk. More internal use of size_t in stead of int (or long) file: [8f09b6a9e8] check-in: [b68c708bd6] user: jan.nijtmans branch: novem, size: 13097
10:15
More internal use of size_t in stead of int. file: [9fad4a0524] check-in: [ef4da65408] user: jan.nijtmans branch: trunk, size: 13110
2015-07-05
17:58
merge novem file: [90affb2a10] check-in: [a006f10aa9] user: dgp branch: dgp-refactor, size: 12608
2015-07-02
13:17
merge trunk file: [5c876d0f79] check-in: [cfb40a9761] user: jan.nijtmans branch: novem, size: 13092
12:54
Revert refcount changes that were not cosmetic. Changing equality testing to inequality testing does more than make code prettier or clearer. It makes it less strict, and thus more tolerant of other bugs elsewhere. Such changes deserve separate consideration at least, not breezy entry in an otherwise "code cleanup" commit. file: [adc96b6a24] check-in: [33e894a6ee] user: dgp branch: trunk, size: 13105
08:42
merge trunk file: [5f6a00dd50] check-in: [4c0b0070c3] user: jan.nijtmans branch: novem, size: 13091
08:17
Another round of refCount consistancy improvements. file: [28339308ad] check-in: [ec91b85b61] user: jan.nijtmans branch: trunk, size: 13104
2014-09-29
13:37
Rebase the refactoring branch to novem. file: [8053a73762] check-in: [663194637e] user: dgp branch: dgp-refactor, size: 12633
2013-09-12
23:34
Revise _Append and _Detach to return element pointers. file: [93534edae4] check-in: [e16c235651] user: dgp branch: dgp-refactor, size: 12646
2013-09-10
14:27
Convert more simple loops to iterate with pointers. file: [b870cf3764] check-in: [5d6eec4b72] user: dgp branch: dgp-refactor, size: 12646
14:04
Convert first loop to iterate with a pointer. file: [51d33d6fbc] check-in: [ad4af823bf] user: dgp branch: dgp-refactor, size: 12538
2013-09-09
18:46
Now that BA's retain an identity, stop returning them from routines. file: [9c2539cbb3] check-in: [a298d81f98] user: dgp branch: dgp-refactor, size: 12480
2013-02-19
15:47
Revise Append and Detach ops on BrodnikArray to work with pointers. This makes more data copying optional at the caller's discretion. file: [e3bb01bccc] check-in: [9215a31935] user: dgp branch: dgp-refactor, size: 12502
2013-02-08
15:14
merge trunk. Simplify Reference struct of tclPreserve.c. file: [497f2db4b3] check-in: [115adf7562] user: dgp branch: dgp-refactor, size: 12508
2013-02-07
21:27
Convert tclPreserve.c to use a BrodnikArray of Reference, primarily as a means to test the BrodnikArray implementation. Fix the avail housekeeping bug in Shrink exposed by this testing. file: [0d44d81bdf] check-in: [fb7f9690ef] user: dgp branch: dgp-refactor, size: 12962
2013-01-02
14:49
remove the refcounts and NEW_PRESERVE from zippy: it only works for Tcl_Alloc'ed blocks, and is incompatible with the specs of Tcl_Preserve that allow preserving anything file: [462e0c64b2] check-in: [1cb98eb1b9] user: mig branch: mig-alloc-reform, size: 13210
2012-12-03
20:47
This branch explores the performance implications of relacing the dynamic array data structure underlying Tcl_Preserve/Release with a Tcl_HashTable, i.e a change from nominally O(n) to nominally O(1). In this initial work the Reference data structures are individually allocated and freed. A continuation may add a free-list of structures for quicker re-use without going through the memory manager.

Other things we can explore here: Does it make sense to use TSD (i.e. Thread-Specific Data), to get rid of the mutex currently used in this subsystem ? Or even better, can we assume that preserved data is always tied to some interpreter, allowing us to tie the data structures here in the same manner ?

Passes testsuite.

Note: I have no specific benchmark here, only tclbench. Which makes it difficult to discern how much loss or gain we have. Looking over the table it seems to be roughly +/-0. Tools making the comparison of two tclbench results easier would be appreciated. file: [942b7cad45] check-in: [22f8fd36d9] user: andreask branch: novem-ak-preserve-experiments, size: 13600

2012-08-20
06:49
remove unnecessary struct names, which only pollute the "struct" namespace for te compiler. file: [c507590974] check-in: [db442914c7] user: jan.nijtmans branch: jn-no-struct-names, size: 13117
2011-08-02
11:18
merge trunk; FIXME: symbols=mem build broken file: [56c0704313] check-in: [384901c292] user: mig branch: mig-alloc-reform, size: 13263
2011-07-12
16:05
platform portable type matching in debug prints file: [1fbda13a8d] check-in: [83d26b2944] user: dgp branch: trunk, size: 13130
2011-03-23
23:42
completely new Tcl_Preserve implementation under Zippy, should be *much* faster. Cost is loss of some mem usage stats for zippy. file: [0a1439b309] check-in: [a39cc6c970] user: mig branch: mig-alloc-reform, size: 13263
2011-03-12
15:06
Adjust ckalloc/ckfree macros to greatly reduce number of explicit casts in rest of Tcl source code. No ABI change. API change *should* be harmless. file: [4e573246dd] check-in: [5574bdd262] user: dkf branch: trunk, size: 13130
2011-03-02
20:27
Now that we're no longer using SCM based on RCS, the RCS Keyword lines cause more harm than good. Purged them (except in zlib files). file: [6b17746d4b] check-in: [c64f310d38] user: dgp branch: trunk, size: 13249
16:06
Now that we're no longer using SCM based on RCS, the RCS Keyword lines cause more harm than good. Purged them. file: [69f99bd3b4] check-in: [79367df0f0] user: dgp branch: core-8-5-branch, size: 13334
2011-03-01
15:38
Now that we're no longer using SCM based on RCS, the RCS Keyword lines cause more harm than good. Purged them. file: [a501d5f8c1] check-in: [90b4acd7bd] user: dgp branch: core-8-4-branch, size: 13333
2011-01-25
19:23
merge file: [bf3103b26f] check-in: [fae129cbce] user: dgp branch: dgp-refactor, size: 13326
07:17
Don't miss 64-bit address bits in panic message. file: [5b649e1a00] check-in: [8f2403f53e] user: nijtmans branch: trunk, size: 13326
2011-01-18
19:26
Brought no-nre v2 up-to-date with 8.6 head as of Jan 18 11:30 PST. file: [0136ea6eef] check-in: [5b2d91d5e3] user: andreask branch: activestate-nre-excised-variant-2-subtracted, size: 13345
16:34
merge file: [ff1c54b803] check-in: [a4ca4d6d4c] user: dgp branch: dgp-refactor, size: 13350
10:02
Various mismatches between Tcl_Panic format string and its arguments, discovered thanks to [Bug 3159920] file: [ab43268e9b] check-in: [6dd03122dc] user: nijtmans branch: core-8-5-branch, size: 13415
08:43
Various mismatches between Tcl_Panic format string and its arguments, discovered thanks to [Bug 3159920] file: [7565be37e6] check-in: [964a1a5a57] user: nijtmans branch: trunk, size: 13350
2010-11-18
10:11
Next slice. file: [0dc78d61c6] check-in: [16246c5c13] user: andreask branch: activestate-nre-excised-variant-1-roll-forward, size: 13325
2009-01-09
14:17
merge updates from HEAD file: [32cff4c2a2] check-in: [02f7c5c705] user: dgp branch: dgp-refactor, size: 13329
11:21
Style fixes (unfouling whitespace, sorting comments, removing useless casts, etc.) file: [2799b08ed5] check-in: [cd3c38f00a] user: dkf branch: trunk, size: 13325
2008-11-10
02:18
merge updates from HEAD file: [8938734955] check-in: [4a9c1325dc] user: dgp branch: dgp-refactor, size: 13384
2008-10-26
18:34
Style improvements - invoking callbacks without visual junk. file: [d3a60395fc] check-in: [a1a8afc25d] user: dkf branch: trunk, size: 13380
2007-04-08
14:58
Merge updates from HEAD; may not build file: [819699e641] check-in: [8dc7079178] user: dgp branch: dgp-refactor, size: 13390
2007-03-21
18:02
* generic/tclExecute.c: More ckalloc -> ckrealloc conversions. * generic/tclLiteral.c: * generic/tclNamesp.c: * generic/tclParse.c: * generic/tclPreserve.c: * generic/tclStringObj.c: * generic/tclUtil.c:
file: [822c16bd2a] check-in: [aa6b9bf6a4] user: dgp branch: trunk, size: 13386
2006-08-29
16:19
merge updates from HEAD file: [2eb2eedc2b] check-in: [e1feeec3e7] user: dgp branch: dgp-refactor, size: 13672
2006-08-10
12:15
Various minor object file size efficiency fixes. [Bug 1530474] file: [0641347f12] check-in: [a09967381c] user: dkf branch: trunk, size: 13667
2005-12-02
18:42
merge updates from HEAD file: [1d93b21bee] check-in: [1059d34b2b] user: dgp branch: dgp-refactor, size: 13674
2005-11-07
15:12
ANSIfy file: [1837e41709] check-in: [611d25e47c] user: dkf branch: trunk, size: 13669
2005-08-02
18:14
merge updates from HEAD file: [8b9894a022] check-in: [10feab7c07] user: dgp branch: kennykb-numerics-branch, size: 13751
2005-07-26
04:11
Merge updates from HEAD file: [cfe3642560] check-in: [8351a734a6] user: dgp branch: dgp-refactor, size: 13752
2005-07-24
22:56
Getting more systematic about style file: [65d79cc358] check-in: [83d72c558c] user: dkf branch: trunk, size: 13747
2005-07-12
20:35
merged changes from HEAD file: [bafa0ad32e] check-in: [5316ea45e0] user: kennykb branch: kennykb-numerics-branch, size: 13444
2005-07-05
15:09
Merge updates from HEAD file: [79e5ee3d8e] check-in: [78384c0116] user: dgp branch: dgp-refactor, size: 13441
2005-06-24
20:07
cleanup Tcl_Preserve after exit handlers file: [d43aade52e] check-in: [3519b5327d] user: kennykb branch: trunk, size: 13440
18:21
finalize Tcl_Preserve after exit handlers file: [7feb047932] check-in: [7dafabb1d2] user: kennykb branch: core-8-4-branch, size: 13413
2004-02-07
05:47
Merge updates from HEAD

Note that this branch currently does not fully support the new {expand} syntax. Updates to TclEvalScriptTokens and TclCompileScriptTokens are still to come. file: [13d9ec25f3] check-in: [beeeb45bbf] user: dgp branch: dgp-refactor, size: 13718

2003-12-24
04:18
All uses of 'panic' (the macro) changed to 'Tcl_Panic' (the function). The #define of panic in tcl.h clearly states it is deprecated in the comments. [Patch 865264] file: [98963e4361] check-in: [524a53e3b3] user: davygrvy branch: trunk, size: 13718
2003-08-07
21:35
Merged changes from HEAD file: [a308c545f5] check-in: [9658ec795f] user: dgp branch: dgp-refactor, size: 13686
2003-07-16
21:25
* generic/tclPreserve.c: In Result and Preserve'd routines, do not * generic/tclUtil.c: assume that ckfree == free, as that is not * generic/tclResult.c: always true. [Bug 756791] (fuller)
file: [a56fb2dc2e] check-in: [bb94a3e510] user: hobbs branch: core-8-4-branch, size: 13688
21:24
* generic/tclPreserve.c: In Result and Preserve'd routines, do not * generic/tclUtil.c: assume that ckfree == free, as that is not * generic/tclResult.c: always true. [Bug 756791] (fuller)
file: [6b51bc1d4a] check-in: [059ed80454] user: hobbs branch: trunk, size: 13683
1999-04-21
00:42
Deleted: Added comments for 4/19 and 4/20 check-in: [6c6fc5d7b2] user: redman branch: scriptics-tclpro-1-2-old, size: 0
1999-04-16
00:46
merged tcl 8.1 branch back into the main trunk file: [4f49edd09a] check-in: [f3b32fb71c] user: stanton branch: trunk, size: 13796
1999-03-11
19:28
Deleted: Add documentation for Tcl_GetVersion() check-in: [940e47cf48] user: redman branch: scriptics-tclpro-1-2, size: 0
1998-12-12
01:36
Minor change to Lock Declarations to use TCL_DECLARE_MUTEX macro, published in tcl.h. file: [16a2f02ca5] check-in: [c778c9ef5e] user: lfb branch: core-8-1-branch-old, size: 13796
1998-12-10
21:21
* Fixed lots of files that used TCL_THREAD instead of TCL_THREADS.

* generic/tclEncoding.c (Tcl_FreeEncoding): Moved most of the code into a static FreeEncoding routine that does not grab the encodingMutex to avoid deadlocks/races when called from other routines that already have the mutex. file: [59e1221a48] check-in: [09f356baa2] user: stanton branch: core-8-1-branch-old, size: 13826

1998-11-11
04:54
lots of lint wrapped mutex declarations in ifdefs to avoid compiler warnings file: [bfa0ae59ad] check-in: [9535a849c1] user: stanton branch: core-8-1-branch-old, size: 13825
1998-09-24
23:58
merging changes from 8.0.3 into 8.1a2 file: [7bc2159eb7] check-in: [1c3c1ab19f] user: stanton branch: core-8-1-branch-old, size: 13800
1998-09-21
23:39
Added contents of Tcl 8.1a2 file: [3fe738e6d6] check-in: [8c56dc8868] user: stanton branch: core-8-1-branch-old, size: 13775
1998-09-14
18:39
Replaced SCCS strings, fixed binary files file: [bc127ce9d7] check-in: [196f92fd17] user: stanton branch: trunk, size: 7230
1998-03-26
14:45
Added: Initial revision file: [8e4549c6a3] check-in: [cacdd0f329] user: rjohnson branch: trunk, size: 7209