Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
122 check-ins using file demosupport.tcl version 1708ef3d2e
|
2017-10-16
| ||
| 23:00 | Tidy slides for conference check-in: e4e63af603 user: kennykb tags: trunk | |
| 22:15 | Add Tcl2017 conference materials check-in: 974ec096f4 user: kbk tags: trunk | |
|
2017-10-10
| ||
| 12:02 | Mark more parameters in the Tcl API as OUT. check-in: a84ef0b8e1 user: dkf tags: trunk | |
|
2017-10-09
| ||
| 10:40 | Allow the empty string to be used for NULL in more function calls. check-in: 273c85cd9c user: dkf tags: trunk | |
|
2017-09-24
| ||
| 06:59 | Fast-path code can share some bits. check-in: 98fffb2a69 user: dkf tags: trunk | |
|
2017-09-23
| ||
| 11:33 | A more efficient way to store numeric values in a Tcl_Var. check-in: e550f13c8c user: dkf tags: trunk | |
|
2017-09-22
| ||
| 07:18 | Ensure that all discovered local variables get an LVT entry. check-in: c85b37c213 user: dkf tags: trunk | |
|
2017-09-19
| ||
| 02:12 | Correct oversight: direct variable access must adjust 'readsGlobal', 'writesGlobal' and the 'pure' and 'killable' flags. check-in: 114a1a01b4 user: kbk tags: trunk | |
|
2017-09-17
| ||
| 23:10 | Initial implementation: direct variable access check-in: 53eb49f304 user: kbk tags: trunk | |
| 23:08 | Initial implementation of direct variable access. Closed-Leaf check-in: 3ade2b58f3 user: kbk tags: namespace-variables | |
| 22:14 | Direct variable access: merge in dkf-direct-variables, make varframe.tcl not crash. Need code and test cases for spoliation of local may-alias vars when direct vars are updated. check-in: 1b5ad48130 user: kbk tags: namespace-variables | |
|
2017-09-16
| ||
| 14:03 | merge trunk Leaf check-in: 63c5af8e72 user: dkf tags: errorline-fixing | |
|
2017-09-15
| ||
| 04:19 | merge namespace-variables: fix bug that prevented optimization of 'moveToCallFrame' check-in: e1519285ca user: kbk tags: trunk | |
| 04:15 | Fix bug that prevented optimization of 'moveToCallFrame' check-in: f019722399 user: kbk tags: namespace-variables | |
| 03:38 | Merge namespace-variables: make sure that variables created with pass-by-name are listed in the initial callframe check-in: 2570e4a684 user: kbk tags: trunk | |
| 03:36 | Make sure that variables that are created in pass-by-name have callframe slots in advance check-in: 46dd653d5e user: kbk tags: namespace-variables | |
| 03:12 | Merge namespace-variables: more aggressive detection that a proc doesn't touch the callframe at all. check-in: 7a6695ff7e user: kbk tags: trunk | |
| 03:10 | Add cleanup optimization, the lack of which was causing 'eliminateCallFrame' not to find a fair number of opportunities. check-in: caf952b7b6 user: kbk tags: namespace-variables | |
| 02:18 | Make sure that 'errorCode' and 'errorInfo' are available when errors are caught. check-in: fbb0672c61 user: kbk tags: trunk | |
| 01:59 | merge trunk check-in: edbdde5e70 user: kbk tags: namespace-variables | |
| 01:56 | Make sure that errorCode and errorInfo are available after a caught errror check-in: edd073a183 user: kbk tags: namespace-variables | |
|
2017-09-14
| ||
| 12:33 | merge trunk check-in: 6d79c2c2f1 user: dkf tags: errorline-fixing | |
| 12:33 | Generate correct errorinfo traces on error. Has a negative performance impact. check-in: e03627d13b user: dkf tags: trunk | |
| 12:27 | Added some information about the support pseudo-instructions that I use. check-in: cd53fc1345 user: dkf tags: errorline-fixing | |
| 10:48 | Update documentation comments. check-in: 9902f56df4 user: dkf tags: errorline-fixing | |
| 01:47 | Merge in a rudimentary implementation of [upvar], [namespace upvar], global check-in: 9bb4742561 user: kbk tags: trunk | |
| 01:44 | Conservatively model frame effects of calling a proc that uses namespace variables. check-in: 3b6c5ae00b user: kbk tags: namespace-variables | |
|
2017-09-13
| ||
| 21:13 | Fix the error line generation. Makes error handling quite a bit slower, but that's inevitable for perfection right now. check-in: 4d2c3566df user: dkf tags: errorline-fixing | |
| 02:46 | Refactor the methods 'variablesUsedBy', 'variablesProducedBy', 'canEliminateCallFrame' into quadcode::transformer out of quadcode::specializer. check-in: e950773b33 user: kbk tags: namespace-variables | |
| 02:31 | Remove code that was obviated by the last few refactorings check-in: 96e9b9f12f user: kbk tags: namespace-variables | |
| 02:25 | Calculate frame effects of the three builtins that have to be parsed to determine them check-in: 0756376dee user: kbk tags: namespace-variables | |
| 01:57 | Refactor varsUsedBy and varsProducedBy to use the frameEffect method rather than reaching into the data structures directly. check-in: c142f038a8 user: kbk tags: namespace-variables | |
| 01:44 | Refactor the 'frameEffect' method to take the quadcode instruction that invokes the command check-in: 1756e035ff user: kbk tags: namespace-variables | |
| 01:39 | Return to building builtins.tcl from builtins.{txt,tcl.in} check-in: 97987fdae2 user: kbk tags: namespace-variables | |
|
2017-09-12
| ||
| 02:07 | Remove redundant tests of upvar; start adding tracking of whether procs manipulate globals; correct 'varsReadBy and 'varsWrittenBy' to return variable lists as documented. check-in: 4e884fd992 user: kbk tags: namespace-variables | |
|
2017-09-10
| ||
| 02:16 | More debugging of support for procedure side effects. Performance now equals trunk, and upvattest::test2 and test4 now pass. check-in: 1e812f9282 user: kbk tags: namespace-variables | |
|
2017-09-09
| ||
| 20:29 | Make demos work again:: (1) Fix typos in 'frame.release'. (2) Add missing 'addReference(FAIL DICTITER)'. (3) Don't analyze or generate code for procs with NOTHING args - they're always in unreachable code, or code that will be re-analyzed. (4) Remove console dribble. (5) Make sure that procs that use caller variables force the caller to have a callframe, and ones that write variables are not killable. check-in: ed5d20535c user: kbk tags: namespace-variables | |
| 14:52 | Change specializer API to pass param types along with procedures when inquiring about callframe effects check-in: 8df6d12af0 user: kbk tags: namespace-variables | |
| 14:46 | Fix bugs in upvar tests so that demos don't crash. check-in: f310c12a4b user: kbk tags: trunk | |
| 14:15 | Development checkpoint - beginnings of code needed to calculate frame effects of procs on their callers. check-in: e01460f477 user: kbk tags: namespace-variables | |
|
2017-09-08
| ||
| 14:41 | Getting better; now generate correct trace except for an error line number. check-in: f17a341138 user: dkf tags: errorline-fixing | |
|
2017-09-07
| ||
| 10:18 | Getting better. Still not getting traces really right. check-in: ee3e63a7b1 user: dkf tags: errorline-fixing | |
|
2017-09-04
| ||
| 21:18 | Improving the testing. Fix a crash case. check-in: 06912b9738 user: dkf tags: errorline-fixing | |
| 18:49 | Development checkpoint - partial implementation of a better analysis of [upvar]. check-in: 35305bdca1 user: kbk tags: namespace-variables | |
|
2017-09-03
| ||
| 12:27 | Seems to be generating the right error lines now. Looks like there's a bug in Tcl in this area too. check-in: 764f4d2608 user: dkf tags: errorline-fixing | |
| 11:26 | merge trunk check-in: 8e8b56738a user: dkf tags: errorline-fixing | |
|
2017-08-29
| ||
| 00:18 | Oops: remove console dribble. check-in: 8775c6ae91 user: kbk tags: namespace-variables | |
|
2017-08-27
| ||
| 20:51 | Add quick-and-dirty approximation to [upvar]'s callframe effect, enough to get something working, but known to be incorrect in significant corner cases. check-in: 0e3ab8a2bd user: kbk tags: namespace-variables | |
| 18:51 | Merge trunk: return to autogenerating builtins.tcl check-in: e797987631 user: kbk tags: namespace-variables | |
| 18:50 | Return to auto-generating builtins.txt, to allow for evolution of the builtin dictionary check-in: f98b1a6985 user: kbk tags: trunk | |
|
2017-08-26
| ||
| 20:13 | Merge trunk: do not emit spurious labels in tcl.*.var.ptr check-in: 241fb9fa72 user: kbk tags: namespace-variables | |
| 20:11 | [dabd7e27c7]: Do not emit extraneous labels in tcl.{read,write,unset}.var.ptr. Also, correct type signature of Tcl_ObjectContextObject. check-in: 73ed5e7b93 user: kbk tags: trunk | |
|
2017-08-21
| ||
| 23:56 | Working towards fixing the errorline info. check-in: 10a6ce570f user: dkf tags: errorline-fixing | |
| 00:14 | Better result dictionary comparisons; exclude more irrelevant bits. check-in: ffaba6143f user: dkf tags: trunk | |
|
2017-08-17
| ||
| 23:05 | Fix problems with incorrect return codes greater than 1. check-in: d0352a75a3 user: dkf tags: trunk | |
| 23:02 | Fix memory corruption issue Closed-Leaf check-in: fb58adf162 user: dkf tags: minor change, returncode-bug | |
| 22:36 | Made the handling of return codes follow standard rules for procedures much more correctly. check-in: 3f15f0ff00 user: dkf tags: returncode-bug | |
|
2017-08-06
| ||
| 10:32 | Start of branch hunting problems with non-error [return] calls. check-in: 4401285e32 user: dkf tags: returncode-bug, broken | |
|
2017-07-29
| ||
| 15:20 | Add documentation comments. Closed-Leaf check-in: 775cd5d9f1 user: dkf tags: minor change, dkf-direct-variables | |
| 14:46 | Provide direct access to fully-qualified variables. Needs work to be safe for other types of qualification or unqualified. Also, Tcl's hiding away of [incr] guts is highly annoying. check-in: d294b80062 user: dkf tags: dkf-direct-variables | |
| 11:27 | merge trunk check-in: 683bc2014e user: dkf tags: namespace-variables | |
| 11:27 | Better use of API. Extend to support changes in int-api. check-in: 3c5bafd097 user: dkf tags: trunk | |
|
2017-07-23
| ||
| 21:17 | Split things up a bit more internally to keep method size down. check-in: 76da08214e user: dkf tags: trunk, minor change | |
| 12:14 | Move the variable and callframe implementations out to their own file. check-in: b2242736f9 user: dkf tags: trunk | |
| 11:55 | merge trunk check-in: 039332be89 user: dkf tags: namespace-variables | |
| 11:54 | Minor tweaks. check-in: 0915d690aa user: dkf tags: trunk | |
| 10:56 | Changes from namspace-variables branch that are reasonably meaningful elsewhere. check-in: 3bfaafe6a7 user: dkf tags: trunk | |
| 06:38 | Defining a few more non-null assumptions/assertions. check-in: 3849083e94 user: dkf tags: minor change, namespace-variables | |
| 05:42 | Tame TclObjGetFrame more thoroughly. check-in: e64a80df2d user: dkf tags: namespace-variables | |
|
2017-07-22
| ||
| 11:14 | Fix the empty-error problems. TclObjGetFrame has a strange result encoding. check-in: dccd96edb7 user: dkf tags: namespace-variables | |
|
2017-07-13
| ||
| 22:36 | Commit temporary 'upvar0' test just to try to debug resolution check-in: 7308d80f26 user: kbk tags: namespace-variables | |
|
2017-07-08
| ||
| 20:40 | Add simple tests (comented out) for upvar. Correct an issue where 'moveFromCallFrame' referenced a FAIL EMPTY CALLFRAME, rather than a CALLFRAME. check-in: e297479fb6 user: kbk tags: namespace-variables | |
| 16:09 | merge trunk - new string hashing tests. check-in: 00f0d5601b user: kbk tags: namespace-variables | |
|
2017-07-07
| ||
| 12:52 | Added tests for string hashing. Key test features: callframes, namespace variables, math, [scan %c] and [binary scan]. check-in: 57baf130c3 user: dkf tags: trunk | |
|
2017-07-04
| ||
| 21:05 | Add some working notes on 'upvar' handling check-in: 6860ba5f08 user: kbk tags: namespace-variables | |
|
2017-07-03
| ||
| 10:14 | Basic support for [global], [variable] and [namespace upvar] commands. check-in: d1dbb6df59 user: dkf tags: trunk | |
|
2017-07-02
| ||
| 23:06 | Finished code issuer for upvar. Not yet generated by quadcode engine. check-in: 4ddcd68805 user: dkf tags: namespace-variables | |
| 16:11 | Add descriptive comments for more builder methods. check-in: e32cbf5f43 user: dkf tags: namespace-variables | |
| 15:37 | Need to follow variable links when reading or writing. check-in: 9cf6622f71 user: dkf tags: namespace-variables | |
|
2017-07-01
| ||
| 19:47 | Add code to allow variable binding to fail check-in: f58eccaca7 user: kbk tags: namespace-variables | |
| 08:05 | Variable binding implementation function done. Something not working. check-in: 2dd141efab user: dkf tags: namespace-variables | |
|
2017-06-28
| ||
| 23:01 | Most of the error handling machinery on the implementation side. check-in: 4e68c6df02 user: dkf tags: namespace-variables | |
| 22:36 | Define the variable lookup functions. check-in: a824df10bf user: dkf tags: namespace-variables | |
| 18:51 | Basic type signatures of implementation functions. check-in: 3cb89fef73 user: dkf tags: namespace-variables | |
| 09:34 | Machinery for code issue. Still needs implementations. (Can varname lookup fail?) check-in: d817e69c7a user: dkf tags: namespace-variables | |
| 08:45 | Work around bug in older release of 8.6 check-in: c7a2aa057f user: dkf tags: namespace-variables | |
|
2017-06-27
| ||
| 23:49 | Resolve inadvertent fork check-in: a82c0275b3 user: kbk tags: namespace-variables | |
| 22:33 | OOPS: Forgot to add aliases.tcl. check-in: 5e6b1a7c87 user: kbk tags: namespace-variables | |
| 18:46 | merge trunk check-in: 6968dde9a9 user: dkf tags: namespace-variables | |
| 18:46 | Fix a spot that wasn't using the namespace path right. check-in: 2d672d3dca user: dkf tags: trunk | |
| 02:18 | Add demos for 'namespace upvar' and make a bunch of niggling changes in support of namespace variable testing. check-in: 801e909810 user: kbk tags: namespace-variables | |
| 01:08 | Merge trunk and correct 'infant mortality' typos in analysis of namespace variables (and other proc effects) Closed-Leaf check-in: de509d61a1 user: kbk tags: kbk-namespace-variables | |
| 00:51 | Oops - correct misspelt -errorinfo check-in: 5d4e019513 user: kbk tags: trunk | |
| 00:45 | Add the failed procedure to the backtrace from specializer operations check-in: ed477e79d4 user: kbk tags: trunk | |
|
2017-06-25
| ||
| 15:15 | Defining a general 'write this module to a file' capability. Leaf check-in: aced25cd25 user: dkf tags: dkf-write-to-file | |
|
2017-06-24
| ||
| 15:29 | merge trunk Leaf check-in: 981e7c27f2 user: dkf tags: tcl-api | |
| 15:28 | Since we require llvmtcl 3.7, we can assume its set of commands. Leaf check-in: af458d10dc user: dkf tags: dkf-remove-unused-functions | |
| 15:26 | merge trunk check-in: 1e4c76ade5 user: dkf tags: dkf-remove-unused-functions | |
| 15:23 | merge trunk Leaf check-in: cca323cf88 user: dkf tags: dkf-callframe-debug | |
| 10:57 | Implementation of synthetic Tcl callframes, allowing compiled code to call many more standard Tcl commands. check-in: 972e702bf1 user: dkf tags: trunk | |
| 10:54 | An actual working argument synthesis scheme that doesn't overuse reference counting and doesn't misuse the C stack frame. Closed-Leaf check-in: adaedf59a8 user: dkf tags: callframe-impl | |
|
2017-06-23
| ||
| 23:16 | Working towards completing the basic callframe support. check-in: e06a820668 user: dkf tags: callframe-impl | |
| 03:35 | Code works again for procs that do not use nonlocal variables - ready to start debugging the ones that do. check-in: 9893a019b4 user: kbk tags: kbk-namespace-variables | |
| 03:04 | Merge callframe-impl and start on some of the FIXME's. NOT WORKING check-in: 4d8021b2c3 user: kbk tags: kbk-namespace-variables, not-working | |
|
2017-06-12
| ||
| 00:58 | Remove use/def of the callframe from 'invoke' instructions when the invoked code cannot access the caller's frame at all. check-in: b569ee9109 user: kbk tags: callframe-impl | |
|
2017-06-11
| ||
| 10:10 | merge callframe-impl check-in: 46a0f7c302 user: dkf tags: dkf-callframe-debug | |
| 05:06 | merge trunk check-in: 2e6d84f46a user: dkf tags: callframe-impl | |
|
2017-06-06
| ||
| 19:22 | Generate local Tcl variables in a true on-stack LVT rather than in a ckalloc()ed hash table. check-in: e27adddd5f user: dkf tags: callframe-impl | |
| 19:16 | Add comment about key feature of one procedure; it is *NOT* to be compiled. Closed-Leaf check-in: 3abcf6b767 user: dkf tags: dkf-improved-proc-metadata | |
| 19:14 | Remove a bit of the debugging machinery that was unnecessary. check-in: 5f0d2b9a5b user: dkf tags: dkf-improved-proc-metadata | |
| 19:12 | Force creation of debugging delegate for type in internal function signature. check-in: a4369d511d user: dkf tags: dkf-improved-proc-metadata | |
| 19:08 | Strip some unnecessary code. check-in: 17f2b1e74a user: dkf tags: minor change, dkf-improved-proc-metadata | |
| 19:01 | LocalCache structures are refcounted; remember to increment on use! check-in: 351c3f697a user: dkf tags: dkf-improved-proc-metadata | |
| 01:09 | Rationalize the callframe-elimination code a little bit. check-in: 15b0db31bb user: kbk tags: callframe-impl | |
| 00:33 | Eliminate callframe allocation/deallocation from procs that are known not to use the callframe at all. check-in: c7f3940a8f user: kbk tags: callframe-impl | |
|
2017-06-05
| ||
| 01:10 | Update to the current callframe implementation check-in: ffb94761a7 user: kbk tags: kbk-namespace-variables, not working | |
|
2017-06-04
| ||
| 17:10 | Working towards better metadata generation check-in: 34cc0dd981 user: dkf tags: not working, dkf-improved-proc-metadata | |
| 11:11 | Tweaks that will report where there are problems once we clean up the callframe handling. check-in: da4845de02 user: dkf tags: dkf-callframe-debug | |
| 11:08 | merge trunk check-in: 3258ec1305 user: dkf tags: callframe-impl | |
| 02:59 | Correct specializer logging to silence it when it's not turned on check-in: 7a7195c5f5 user: kbk tags: callframe-impl | |
| 02:55 | merge trunk: attempt at more disciplined node splitting check-in: f77f4de1f4 user: kbk tags: callframe-impl | |
|
2017-06-03
| ||
| 10:31 | Corral the slowest compilation off in the name of getting a little speed during normal testing. check-in: dd976d6de3 user: dkf tags: minor change, callframe-impl | |