tclquadcode

Timeline
Login

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

62 check-ins related to "inline"

2018-04-17
00:13
Merge trunk Leaf check-in: 25e63838cd user: kbk tags: inline
00:09
Finish expunging the uses of 'uniqueUndef' in constructing phis. check-in: f71cdfbdae user: kbk tags: trunk
2018-03-27
01:40
merge trunk check-in: c0e88e91be user: kbk tags: inline
01:36
Merge changes: complete type checking of Boolean args to 'jumpTrue', 'jumpFalse', 'not', 'land', and 'lor' check-in: 0b62f38ede user: kbk tags: trunk
2018-03-18
22:30
merge trunk check-in: 1cbcf74c81 user: kbk tags: inline
22:29
merge trunk check-in: 0325c2ada8 user: kbk tags: inline
2018-03-15
22:09
Correct broken Markdown formatting in NRE notes check-in: 86584bbbc5 user: kbk tags: trunk
2018-03-11
22:14
Merge: Refactor liveness calculations to a simpler formulation due to Bradner (citation in source code), make it available separate from 'free' insertion, and split out the Conventional-SSA transformation check-in: bbecfe5c48 user: kbk tags: trunk
2018-03-09
02:28
Insert 'extractFail' on the 'jumpMaybe' path of quads that have their tests emitted by 'error-quads'. Add an 'errortest9' that tests correct throwing of local errors. check-in: d69c66add5 user: kbk tags: inline
2018-03-05
04:31
Fix overzealous demand for split markers in every basic block. Correct incorrect line numbers for fatal errors. Mark procedures that throw errors as also changing globals, to account for errorInfo and errorCode. check-in: 2c961de037 user: kbk tags: inline
2018-03-04
05:04
Allow constant folding for 'listConcat' check-in: 9c0c36b669 user: kbk tags: inline
03:56
Commit changes from trunk to pass both absolute and context-relative line numbers out of the front end. Get correct line numbers after procLeave in inlined procedures. Get correct line numbers in 'fatal' messages. check-in: 82e8e4e276 user: kbk tags: inline
02:49
Pass the line number relative to the enclosing context on the @debug-line directive check-in: 0f2366e18c user: kbk tags: trunk
00:21
Merge in code to track file and procedure context through @debug directives, and to make sure that every basic block is labeled with its proper context. check-in: 8eefa1e572 user: kbk tags: trunk
2018-02-19
20:28
Allow inlining of procedures that may throw. Fix bug in 'dictGet' inlining if the dictionary is known not to contain the given key. check-in: dd9a8eab1b user: kbk tags: inline
18:45
Merge mark check-in: 18c7e4f3eb user: kbk tags: inline
18:44
Merge 'infline' branch - a few more trivial optimizations check-in: 35264fe340 user: kbk tags: trunk
05:27
Temporary hack - follow 'initException' that's known to be a FAIL with 'extractFail' so that downstream code knows the status - avoids excess node splits check-in: 3061db19f1 user: kbk tags: inline
05:04
Additional minor optimization - exceptions can be discarded if no code looks at them. check-in: 6ed839c56b user: kbk tags: inline
04:30
Additional optimization - flatten away 'result' when the answer is known. check-in: 8ed8c62621 user: kbk tags: inline
04:01
Merge mark - dovetail merged a tranche of changes into trunk. check-in: 0f30f4eff6 user: kbk tags: inline
04:01
Another tranche of code toward support of inlining: pass the current interpreter result or exception into a 'catch' block explicitly, to enable separation of normal and error paths. Required refactoring of many quadcodes that threw errors, to preserve the error results. check-in: 992e4ebed1 user: kbk tags: trunk
03:55
Flow the current return status into 'returnOptions' and optimize it away if the status is known to be TCL_OK check-in: d6acffc055 user: kbk tags: inline
03:18
Make 'returnCode' use the current exception. Optimize it away if the current return is known to be TCL_OK check-in: c4be83adea user: kbk tags: inline
02:30
Begin splitting normal from exception returns check-in: 6877f5f5ad user: kbk tags: inline
02:03
Pass the exception through to 'result', which should eventually use it if it's known. check-in: c61dcc090a user: kbk tags: inline
00:11
Missed one 'throwIfArray/throwIsArray pair - stomp on it! check-in: cbd19199f5 user: kbk tags: inline
2018-02-18
23:56
checkArithDomain and throwArithDomainError are now dead. Kill off the code that processes them. check-in: a82f73f9a5 user: kbk tags: inline
23:43
Don't use checkArithDomain. Refactor into 'instanceOf' and 'initException'. check-in: e4c73e17de user: kbk tags: inline
22:54
Eliminate the vestiges of 'narrowToParamType' and 'narrowToNotParamType'. Refactor 'checkFunctionParam' into separate operations 'instanceOfParamType' and 'initParamTypeException' so that the FAIL object is made explicit. Add debug logic into several early passes of the 'middle end'. check-in: 34e0e3e461 user: kbk tags: inline
02:59
Constant folding for [info exists] when the variable's value is constant. check-in: 9f310b0264 user: kbk tags: inline
02:54
Kill off throwIfArray and throwIsArray in favour of generating equivalent code inline - allows for passing an object of type FAIL to the catch block. check-in: 4e2e14ceab user: kbk tags: inline
02:41
Kill off throwIfScalar and throwIsScalar in favour of generating equivalent code inline - allows for passing an object of type FAIL to the catch block. check-in: c54be579c4 user: kbk tags: inline
2018-02-15
04:33
Remove throw(If)?NotExists from the documentation, it's dead. check-in: 676ce12783 user: kbk tags: inline
04:25
Eliminate 'throwIfNotExists' and 'initIfNotExists' in favour of explicit inline existence check and initialization of an exception. Prepares for having all exceptions generate an explicit FAIL object. check-in: c79b0c5648 user: kbk tags: inline
03:31
Fix crashes in 'narrow' that were caused by unreachable code introduced in 'varargs'. Change 'setReturnCode' to produce a FAIL. check-in: a14ce4fdee user: kbk tags: inline
02:00
Bury 'returnException' - it's dead, dead, dead. check-in: ad9e594859 user: kbk tags: inline
01:49
Place the FAIL objects corresponding to all thrown exceptions in a known temporary, so that 'returnCode', 'result' and 'returnOptions' can find them. Add an 'extractFail' operation on the 'jumpMaybe' path so that we know the temporary is indeed just a FAIL and never represents a successful result. check-in: 97c90599f0 user: kbk tags: inline
2018-01-30
02:32
Merge mark - dovetail merged initial tranche of changes for inlining into trunk. check-in: 6bcf0e4e95 user: kbk tags: inline
02:30
Merge first tranche of code devoted to procedure inlining. check-in: a36562ea0b user: kbk tags: trunk
2018-01-27
23:39
Make 'wrong # args' work in varargs handling and enable test check-in: e82c9f4d7d user: kbk tags: inline
23:28
Add FIXME comment on commented-out case check-in: e877f8cd4f user: kbk tags: inline
23:27
Prepare to handle multiple invokes per basic block check-in: 29796333b2 user: kbk tags: inline
23:26
Add audit of du- and ud-chains and make auditing optional at run time check-in: 8f211baf33 user: kbk tags: inline
23:26
Better debug logging check-in: 01bb1c0348 user: kbk tags: inline
23:26
Fix bug where unreachable code yields bad SSA repair check-in: 29c1297c18 user: kbk tags: inline
23:22
Add auditing of du- and ud-chains, and fix a bug in copy propagation that failed to track deleted value uses check-in: 5fbd247520 user: kbk tags: inline
2018-01-17
20:45
Refactor argument expansion so that 'invoke' and 'invokeExpanded' share a path. Note that the path generates horrible code, but the rest of compilation is able to tidy it up again. check-in: 8f1e0d889e user: kbk tags: inline
2018-01-10
05:56
Merge in changes to inline 'wrong # args' on 'invokeExpanded'. Still need to do 'invoke'. check-in: bb71cb0eba user: kbk tags: inline
05:54
Fix the bug in the last commit - was a misplaced closing curly brace that caused SSA to be mislinked Closed-Leaf check-in: 481298b855 user: kbk tags: inlineWrongNumArgs
05:10
Add code to throw the 'wrong # args' exception locally without actually trying to invoke the procedure check-in: c3623b95d5 user: kbk tags: notworking, inlineWrongNumArgs
04:04
Notes to self on where code must throw a runtime error check-in: 13e6f8f207 user: kbk tags: inline
02:21
Correct bad checks in 'wrong # args' handling, and add test cases for too few and too many args check-in: f8030b501c user: kbk tags: inline
2018-01-08
03:10
Refactor {*} so that the generated code does not have FAIL SOMETHING or CALLFRAME SOMETHING meet at a phi check-in: 26486c7423 user: kbk tags: inline
2018-01-07
21:01
merge trunk check-in: ee0fedf4cf user: kbk tags: inline
2018-01-04
22:20
No more returnException opcode; we can correctly do everything through plain return now. check-in: c6dc410ca3 user: dkf tags: trunk
2017-12-30
20:47
Completed initial attack on procedure inlining. Only a handful of opportunities so far, including no really useful ones, but it's at least doing the basics of bringing the rewritten code into the caller and optimizing it in its new home. check-in: a58e401eaa user: kbk tags: inline
2017-12-29
23:14
merge trunk check-in: b4049cdf41 user: kbk tags: inline
23:08
Add missing dropReference(FAIL IMPURE ZEROONE BOOLEAN) check-in: 49199b2701 user: kbk tags: trunk
20:08
Take recursion into account when deciding whether a procedure may be inlined. check-in: f95d5ac2a7 user: kbk tags: inline
2017-12-27
20:19
Some initial sketches toward procedure inlining. check-in: a9a9735747 user: kbk tags: inline
2017-12-25
17:56
Corrections so that errors are reported more usefully. Don't const-fold anything that necessarily interacts with an interp. check-in: a86e497781 user: dkf tags: trunk