Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
50 most recent check-ins
2020-01-13
| ||
03:57 | Add elimination of LOAD-STORE redundancy - don't put into the callframe a value that we just got from there. This check may or may not be useful; the test suite exercises it but only on 'set x '. It does come up in other langauges. Leaf check-in: 933c8a03f0 user: kbk tags: kbk-refactor-callframe | |
2020-01-09
| ||
21:56 | Handle 'invokeExpanded'. Restore the ability to remove references to the callframe when calling compiled functions or builtins that don't use it. check-in: b54d2746cb user: kbk tags: kbk-refactor-callframe | |
2020-01-08
| ||
03:12 | Handle correctly the case where there is 'moveFromCallFrame' the same variable from the same callframe on two converging execution paths. check-in: c3e7daa5b9 user: kbk tags: kbk-refactor-callframe | |
2020-01-07
| ||
03:18 | Fix incorrect analysis of avail vars at a merge point. All tests but poly1305 pass. Still mislinkage of call frames in direct operation tests. check-in: 7ab1ef546d user: kbk tags: kbk-refactor-callframe | |
2020-01-05
| ||
20:51 | Calculate effect of 'invoke' on variable analysis. Not yet 100% correct - breaks six additional test cases. check-in: 0fdceaac26 user: kbk tags: notworking, kbk-refactor-callframe | |
05:51 | Liveness analysis of variables in the callframe, enabling store-store and dead-store optimizations. Build is working only because poly1305::compute is commented out. check-in: e392a97b1a user: kbk tags: kbk-refactor-callframe | |
2020-01-04
| ||
00:17 | Refine callframe effect of direct operations check-in: 6205ad764a user: kbk tags: kbk-refactor-callframe | |
00:07 | Clean up console dribble check-in: 5b6b3c8348 user: kbk tags: kbk-refactor-callframe | |
00:00 | Refine callframe effect of directGet and directSet, fix bugs in alias handling check-in: f87e575ff7 user: kbk tags: kbk-refactor-callframe | |
2020-01-03
| ||
23:22 | Refine the callframe effect of 'variable' check-in: b0449c3905 user: kbk tags: kbk-refactor-callframe | |
23:19 | refine callframe effect of 'nsupvar' and 'upvar' check-in: 3c1db65142 user: kbk tags: kbk-refactor-callframe | |
22:51 | Restore the logic that, after a catch, requires any globals that are aliased in the callframe to be reloaded lest they alias errorInfo or errorCode. Also propagate that requirement out to callers of the proc containing the catch. check-in: 0acf314fef user: kbk tags: kbk-refactor-callframe | |
20:47 | Update a few missing ops in quadcodes.txt check-in: fedf0433fc user: kbk tags: kbk-refactor-callframe | |
19:48 | Patch out poly1305::compute for now - segfault! - and break out the 'vartest' tests. check-in: 13b2b5767e user: kbk tags: notworking, kbk-refactor-callframe | |
2020-01-02
| ||
21:12 | Make the poly1305 routines explicit in the tester check-in: 7466722d0e user: kbk tags: kbk-refactor-callframe | |
20:48 | Detect that 'invoke' preserves some callframe variables. Add buffer flushing so that the identity of a test is reported before a crash. Remove some redundant test invocations. check-in: 65069fda8f user: kbk tags: notworking, kbk-refactor-callframe, current | |
18:50 | Add consistency check that callframes are linked correctly before generating speculative phi operations. check-in: b541601fb1 user: kbk tags: kbk-refactor-callframe | |
17:46 | remove some dead code in callframe.tcl check-in: a04a2b1d01 user: kbk tags: kbk-refactor-callframe | |
17:24 | Need to write back to the stack after duplication. check-in: 4d3d8fac22 user: dkf tags: kbk-refactor-callframe | |
2020-01-01
| ||
23:51 | Don't abort all the performance tests because one test throws an error. Make the 'arrayExists' operation consistent with 'extractArray' and 'extractScalar' throughout (there were bad optimizations). Revert a misguided change to 'dict update' that was actually an attempt to work around the 'extractScalar' inconsistency. check-in: 5b6ac87fe8 user: kbk tags: kbk-refactor-callframe | |
2019-12-31
| ||
17:32 | Separate exists and doesn't-exist paths in 'translate' of read-modify-write operations. Fix overeager elimination of 'extractArray'. Move 'partialredundancy' off to its own specializer step, since 'tidy' passes may NOT introduce new variables. Only 'lsetest' is now failing. check-in: 09d85d696a user: kbk tags: notworking, kbk-refactor-callframe | |
00:10 | Finish up elision of 'moveFromCallFrame' in the simpler cases. check-in: bbb81cb21e user: kbk tags: notworking, kbk-refactor-callframe | |
2019-12-30
| ||
03:14 | Provide a hook on which to hang speculative phi generation. check-in: f635c5689f user: kbk tags: notworking, kbk-refactor-callframe | |
01:50 | Peephole optimization of 'moveFromCallFrame' when the value in the callframe is known. (Will be much more effective once more instructions are analyzed: notably 'invoke' and 'phi'.) check-in: 188df1dde4 user: kbk tags: notworking, kbk-refactor-callframe | |
2019-12-27
| ||
23:01 | Add the basic framework for forward analysis of available callframe variables check-in: 85ea960b98 user: kbk tags: notworking, kbk-refactor-callframe | |
2019-12-01
| ||
20:32 | Remove remnants of unused 'startCatch' and 'callFrameNop' instructions, and the pass that removes them (since they're never emitted, they're never removed). check-in: c2d0f14a30 user: kbk tags: kbk-refactor-callframe | |
20:21 | Remove one false start at callframe analysis, and add some stubs for another attack on the problem. check-in: 5741a8ab06 user: kbk tags: kbk-refactor-callframe | |
2019-11-26
| ||
09:58 | Starting to support 8.7's arrays with defaults Leaf check-in: e7a8c3f643 user: dkf tags: dkf-array-default | |
2019-11-24
| ||
01:15 | Modify varargs to not rewrite if the target procedure is not being compiled. This change restores poly1305 to compilability. check-in: e86f7b8518 user: kbk tags: kbk-refactor-callframe | |
2019-11-23
| ||
23:21 | Merge trunk and return to mostly-working status. Two test cases commented away: magicreturn and poly1305. check-in: 824a7974cf user: kbk tags: kbk-refactor-callframe | |
23:02 | merge trunk check-in: c3fc2d4137 user: kbk tags: notworking, kbk-refactor-callframe | |
22:35 | Merge trunk: a couple of ops that interact with the callframe and were missed while refactoring Leaf check-in: 19e26fa988 user: kbk tags: notworking, tcl_8_7_branch | |
22:29 | Merge in refactoring of two operations, directIsArray and directMakeArray, that interact with the callframe and were missed on the first go. Leaf check-in: 7a21900824 user: kbk tags: trunk | |
22:24 | directMakeArray interacts with the callframe Closed-Leaf check-in: 1f1e370993 user: kbk tags: kbk-refactor-directops | |
21:54 | directIsArray interacts with the callframe check-in: a83ba5d5c3 user: kbk tags: kbk-refactor-directops | |
2019-11-22
| ||
20:31 | Rejigger printing of results so that a crashing test can be identified more readily. check-in: c7402fd29e user: kennykb tags: notworking, tcl_8_7_branch | |
19:44 | Initial changes to support differences in the Tcl 8.7 ABI check-in: 668d4221ed user: kennykb tags: notworking, tcl_8_7_branch | |
2019-11-19
| ||
13:05 | Remove unused code Leaf check-in: 66cd584bff user: dkf tags: stdlib-in-c | |
03:52 | Merge refactoring so that all direct operations interact correctly with the callframe. check-in: b9e2a13b96 user: kbk tags: trunk | |
03:48 | Merge dkf's fixes that make type coercion run in a reasonable amount of time check-in: bf9270cd5a user: kbk tags: kbk-refactor-directops | |
00:48 | Fix a couple of typos ('target' s/b 'targetinfo') - code now compiles the test suite again. Closed-Leaf check-in: d9095e2b40 user: kbk tags: dkf-cheaper-autoconvert | |
2019-11-18
| ||
20:29 | Stop confusion over what is being mapped to what. Merge loops that should be merged. check-in: a4634d05b6 user: dkf tags: dkf-cheaper-autoconvert | |
2019-11-16
| ||
14:39 | Refactor stuff better (and more correctly) check-in: ebcd44d358 user: dkf tags: dkf-cheaper-autoconvert | |
14:28 | Cheaper builder type conversion algorithm (untested) check-in: fe14e0068c user: dkf tags: dkf-cheaper-autoconvert | |
2019-11-15
| ||
23:09 | Change return type of directUnset and directUnsetArray from CALLFRAME FAIL to CALLFRAME FAIL BOOLEAN, because void values aren't handled well in the code issuer. Simply discard the unused result. check-in: 731e9cafc6 user: kbk tags: kbk-refactor-directops | |
2019-11-13
| ||
03:55 | directUnset interacts with the callframe and retuns CALLFRAME FAIL check-in: e06c6257c1 user: kbk tags: kbk-refactor-directops | |
2019-11-12
| ||
03:13 | direct append operations interact with the callframe check-in: 9837744239 user: kbk tags: kbk-refactor-directops | |
02:48 | directArraySet interacts with the callframe check-in: 1ff2a97784 user: kbk tags: kbk-refactor-directops | |
02:36 | directArrayGet interacts with the callframe check-in: 9d33782061 user: kbk tags: kbk-refactor-directops | |
02:15 | directArrayExists interacts with callframe check-in: cac986debc user: kbk tags: kbk-refactor-directops | |