Timeline

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

50 most recent check-ins that include changes to files matching 'quadcode/*'

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
2020-01-02
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
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-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: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
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
03:52
Merge refactoring so that all direct operations interact correctly with the callframe. check-in: b9e2a13b96 user: kbk tags: trunk
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
02:05
directExists interacts with callframe check-in: 8d343ec32d user: kbk tags: kbk-refactor-directops
01:52
directGet interacts with the callframe. (Has 'out' as well as 'in' because of traces). check-in: 22c7d8b278 user: kbk tags: kbk-refactor-directops
01:03
Add 'generate-callframe-op' method to quadcode translator to refactor 'directXXX' ops. check-in: e877e7f449 user: kbk tags: kbk-refactor-directops
2019-11-11
21:01
Fix bug - previous refactoring of directSet accidentally clobbered a use of directSetArray check-in: ebf9ad75df user: kbk tags: kbk-refactor-directops
2019-11-08
21:57
Refactor directSet to accept and return the callframe check-in: 26b53d7b5a user: kennykb tags: kbk-refactor-directops
2019-06-08
22:21
Remove cfRedundancy' header - added prematurely before method structure actually designed. check-in: 74a853f4cd user: kbk tags: kbk-refactor-callframe
2019-02-16
21:40
Start writing discussion of callframe management check-in: 50af9aa069 user: kbk tags: kbk-refactor-callframe
2019-02-02
18:14
Expansion... sort of Leaf check-in: 721be90d96 user: dkf tags: list-and-dict-types
2019-01-29
13:19
Fix misorderered scalar check/copy to result check-in: 36e8177510 user: kbk tags: notworking, kbk-refactor-callframe
02:00
Fix translation bugs that broke [dict] tests check-in: ab6da27502 user: kbk tags: notworking, kbk-refactor-callframe
2019-01-23
02:12
Add conversion to IMPURE ZEROONE INT, needed in booltest. Keep code motion from messing with the callframe for now. Patch out the handful of remaining tests that abort. Next up: fix the dictest tests involving 'dict update', lsetest, and re-add support for direct ops. check-in: 27339e7e0c user: kbk tags: notworking, kbk-refactor-callframe
2019-01-22
02:52
Restore the 'timings' list - if 'transform' doesn't produce it, there's a crash. check-in: 3e49a05889 user: kbk tags: notworking, kbk-refactor-callframe
02:36
Run dead code elimination before copy propagation because copyprop explodes otherwise. check-in: 9e16d3b8d6 user: kbk tags: notworking, kbk-refactor-callframe