Timeline

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

50 check-ins occurring around fcf84a86318a4a2e.

2018-10-21
16:30
First step of the NRE invokeExpanded machinery. check-in: 115a9a6616 user: dkf tags: kbk-nre
16:12
merge trunk check-in: 3c382b2d30 user: dkf tags: kbk-nre
16:08
First cut at the code generators for list/dict type checks check-in: 593d4987de user: dkf tags: list-and-dict-types
2018-10-19
12:58
Starting to create LIST and DICT types check-in: dc90f65b5e user: dkf tags: list-and-dict-types
2018-10-18
10:59
Add support for LLVM 7; two intrinsics changed signature to become simpler check-in: 961facd520 user: dkf tags: trunk
2018-10-17
12:29
Fix Sean's problem with [lrange]. check-in: e33c1317fd user: dkf tags: trunk
2018-10-15
21:28
Fix crash if a parameter to a procedure is unused within the procedure. check-in: ba43f318d7 user: kbk tags: trunk
17:08
Enable random numbers. check-in: 6841dceaad user: dkf tags: trunk
16:09
Added explicit recursive fib test check-in: 347443afbe user: dkf tags: trunk
12:58
Flipped the sense of some tests check-in: 9912776e7c user: dkf tags: trunk
11:13
Expand the basic eq/ge/gt/le/lt/ne ops to allow doubles too. check-in: 9bbeeddfb9 user: dkf tags: trunk
2018-07-08
09:12
Slightly better script for demos check-in: b12c0dc620 user: dkf tags: trunk
2018-05-02
05:28
Add support for invoking non-compiled Tcl commands using NRE. Still have to do invokeExpanded. check-in: 9f6d191beb user: kbk tags: kbk-nre
2018-05-01
02:13
Make sure that local vars are located on the coro frame and not on the stack. Fix a spurious error when an 'upvar' follows a 'moveToCallFrame' for a nonexistent local var. check-in: 2945c2321c user: kbk tags: kbk-nre
2018-04-30
19:01
Allow 'inlinehint' as an overriding inline control attribute, just like 'noinline'. check-in: ebcc398686 user: dkf tags: kbk-nre
2018-04-29
17:37
merge trunk check-in: 23f46849a7 user: dkf tags: kbk-nre
17:21
Fix native code generation when building DLLs check-in: 412811a9f7 user: dkf tags: trunk
2018-04-28
08:36
Added mrtest as a separately buildable package. check-in: a5f8fcd325 user: dkf tags: trunk
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: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: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: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: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: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