Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
50 events occurring around 504ceb334bd134db.
2018-04-28
| ||
08:25 | Added mrtest as a separately buildable package. check-in: 05a6521445 user: dkf tags: kbk-nre | |
2018-04-27
| ||
20:32 | Move more 'alloca' instructions to the entry block, before they can mess up coro.begin. Allow NRE procs to return CALLFRAME COROHANDLE, needed for bookkeeping if they both use NRE and reference the callframe. Put in a test case for the CALLFRAME COROHANDLE condition - that case still crashes check-in: 8c6a038bf1 user: kbk tags: notworking, kbk-nre | |
2018-04-25
| ||
00:59 | Improve commentary check-in: 7a5af13a50 user: kbk tags: kbk-nre | |
00:47 | Streamline returnFromInvoke a tiny bit. check-in: 020581c952 user: kbk tags: kbk-nre | |
2018-04-24
| ||
03:55 | • Edit [c2b79891aa4f21c5|c2b79891aa]: Cancel tag "notworking". artifact: fba673bbee user: kbk | |
03:54 | • Edit [fcf84a86318a4a2e|fcf84a8631]: Add tag "notworking". artifact: 24ff80e649 user: kbk | |
03:54 | • Edit [bc3db1940d963b8f|bc3db1940d]: Add tag "notworking". artifact: f236cdb1fb user: kbk | |
03:53 | • Edit [c2b79891aa4f21c5|c2b79891aa]: Add tag "notworking". artifact: 83875e195a user: kbk | |
03:39 | Use llvmtcl 3.9 (release) features to provide the target platform information before starting to generate code in a module, and to do 'sizeof' and 'alignof' correctly. mrtest::* now compile correctly. check-in: c2b79891aa user: kbk tags: kbk-nre | |
2018-04-23
| ||
03:10 | Force alignment of coroutine promise to 2*sizeof(pointer), in hopes of getting consistent alignment between coro.begin and later references to the coro frame. (Didn't help, alas, but it doesn't hurt to specify the alignment that's required in any case. check-in: bc3db1940d user: kbk tags: notworking, kbk-nre | |
2018-04-20
| ||
02:26 | Add NRE test that throws error check-in: fcf84a8631 user: kbk tags: notworking, kbk-nre | |
2018-04-18
| ||
23:15 | • Edit [3147c5dac5073c81|3147c5dac5]: Add tag "notworking". artifact: 89f46edbc1 user: kbk | |
23:14 | • Edit [9331dcf8d2e53f4a|9331dcf8d2]: Add tag "notworking". artifact: 3bef46ca39 user: kbk | |
23:14 | • Edit [bda33aa9eaf71068|bda33aa9ea]: Add tag "notworking". artifact: 6cba24c65e user: kbk | |
23:13 | • Edit [504ceb334bd134db|504ceb334b]: Add tag "notworking". artifact: b42a9df3e0 user: kbk | |
23:12 | • Edit [1855f5dc7a0840f7|1855f5dc7a]: Add tag "notworking". artifact: 12d91d81ec user: kbk | |
23:12 | • Edit [11236a56397c33b3|11236a5639]: Add tag "notworking". artifact: d34f29d723 user: kbk | |
23:03 | Alignment constraints on coroutine intrinsics must be actual integer constants, not just constant expressions of integer type. check-in: d611cc5908 user: kbk tags: notworking, kbk-nre | |
2018-04-17
| ||
21:53 | Added debugging types for NRE callbacks. check-in: 11236a5639 user: dkf tags: notworking, kbk-nre | |
00:25 | • Edit [bc9590bbdbba8908|bc9590bbdb]: Add tag "notworking". artifact: b132e27331 user: kbk | |
00:13 | Merge trunk Leaf check-in: 25e63838cd user: kbk tags: inline | |
00:11 | Merge trunk: expunge last uses of 'uniqueUndef' in constructing phi's check-in: 1855f5dc7a user: kbk tags: notworking, kbk-nre | |
00:09 | Finish expunging the uses of 'uniqueUndef' in constructing phis. check-in: f71cdfbdae user: kbk tags: trunk | |
00:06 | Finish expunging the uses of 'uniqueUndef' in constructing phis. Closed-Leaf check-in: c50485d110 user: kbk tags: kbk-phi-reform | |
2018-04-16
| ||
23:46 | Dump bitcode to files after module verification, to try to debug optimizer crashes. Commit missing changes to the debug helper for better phi handling. check-in: 504ceb334b user: kbk tags: notworking, kbk-nre | |
04:17 | More purges of uniqueUndef check-in: c9c75024dc user: kbk tags: kbk-phi-reform | |
01:09 | Merge trunk to get better handling of 'phi' operations. Fix issues that prevented compilability with these changes. check-in: bc9590bbdb user: kbk tags: notworking, kbk-nre | |
2018-04-15
| ||
21:52 | Merge kbk-phi-reform. The code issuer no longer creates dummy 'undef' slots for variables only to replace them. Instead, 'phi' operations are created without data sources and have their data sources added after processing the quadcode. check-in: 3578806182 user: kbk tags: trunk | |
21:49 | Reform the processing of 'phi' operations in 'codegen/compile.tcl', observing that variable definitions dominate all uses of the variables except for those in 'phi' operations, so creating dummy phi's and backpatching the data sources is a simpler approach than creating explict 'undef' values only to overwrite them. check-in: f4b8bc60e5 user: kbk tags: kbk-phi-reform | |
19:12 | Remove one llvm.lifetime call that is incompatible with LLVM5 check-in: d3b289185c user: kbk tags: kbk-phi-reform | |
19:03 | Create new branch named "kbk-phi-reform" check-in: f1141ea3b4 user: kbk tags: kbk-phi-reform | |
03:07 | Finish coding the thunk builder for NRE procs. Generated code for NRE now aborts in the optimizer. check-in: ab703b4b95 user: kbk tags: notworking, kbk-nre | |
2018-04-14
| ||
22:20 | • Edit [bcc7273e40708a7c|bcc7273e40]: Move to branch mistake. Add propagating "hidden". Mark "Closed". artifact: df67a40ad2 user: kbk | |
22:10 | Finish up return from an invoked function. Still need to do invoked commands and invokeExpanded in the NRE case. check-in: 2b2ba21e34 user: kbk tags: notworking, kbk-nre | |
2018-04-13
| ||
01:58 | Merge trunk, and do some further tidying of objv management check-in: 1fac62e1ab user: kbk tags: notworking, kbk-nre | |
2018-04-11
| ||
03:57 | Move alloca to the entry blocks check-in: 7e92153b7f user: kbk tags: trunk | |
03:40 | Eliminate stacksave/stackrestore and dynamic alloca from 'list' check-in: 11be702fa8 user: kbk tags: trunk | |
03:16 | Rework foreachStart so that it doesn't require stacksave/stackrestore or dynamic alloca check-in: 5f0c7721ff user: kbk tags: trunk | |
2018-04-10
| ||
03:44 | Move more alloc's into entry blocks. check-in: aa81f2ac20 user: kbk tags: trunk | |
03:31 | Move allocas in standard library up to the entry blocks of the routines, where the inliner can find them check-in: 63a1bf25ff user: kbk tags: trunk | |
03:05 | Reform 'buildBitArray' to use preallocated space in the LLVM callframe check-in: 7f04a0d947 user: kbk tags: trunk | |
02:46 | Reform buildVector and clearVector to use preallocated space in the LLVM callframe check-in: a7ae4fde24 user: kbk tags: trunk | |
2018-04-09
| ||
02:46 | Generate code for return from NRE functions and for suspend. Simplify 'clearVector' so that it can be called without the parameter specification. Next up will be to modify NRE invoke to return a tuple of {coro handle, clear flag, vector} so that NRE return can find the vector to clear it. check-in: 87e8f9147d user: kbk tags: notworking, kbk-nre | |
2018-04-08
| ||
21:34 | • Edit [978b9d80c489b1ed|978b9d80c4]: Add tag "notworking". artifact: 59179ec0b7 user: kbk | |
21:28 | Fix an error in wiring up the test for whether non-compiled commands need NRE - needed to assess 'lsort'. check-in: 978b9d80c4 user: kbk tags: notworking, kbk-nre | |
2018-04-06
| ||
03:29 | Begin refactoring the invoke issuer in preparation for NRE.invoke. Need to fix: needsNRE and nreRequired in specializer, these need full args, not just types, in the case of builtins. Need to examine invokeExpanded because it's still used for Tcl builtins. check-in: df651f8f32 user: kbk tags: notworking, kbk-nre | |
2018-04-03
| ||
02:57 | Break up LLVM coroutine invocation into separate 'invoke', 'suspend', 'returnFromInvoke' to assist code gen check-in: 9331dcf8d2 user: kbk tags: notworking, kbk-nre | |
2018-04-02
| ||
03:40 | Start coding the implementation of NRE procs. check-in: e1f5a1f2d6 user: kbk tags: notworking, kbk-nre | |
2018-03-30
| ||
20:28 | Advance version of llvmtcl required (omitted from previous commit); add accessor for NRE requirement in specializer check-in: bda33aa9ea user: kbk tags: notworking, kbk-nre | |
19:29 | Add a function pass manager so that we can get coroutine support. check-in: 3147c5dac5 user: kbk tags: notworking, kbk-nre | |