Check-in [0e06123e97]

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

Overview
Comment:Merge kbk-pre - add the optimizations of loop inversion (enables loop-invariant code motion) and partial redundancy elimination, and fix multiple bugs exposed by these optimizations.
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: 0e06123e97e714ecf9b77727d0fb55c03b07d37aa056a651e7ec3d1c26669992
User & Date: kbk 2018-12-06 03:15:58.543
Context
2018-12-07
02:43
Fixes that make poly1305 compilable. check-in: 602b3659c7 user: kbk tags: trunk
02:19
Increase recursion limit to allow compilation of longer procedures. Correct a bug in expandInlines that left dangling references to procedure args. Correct a bug in analyzeTypes where the INT/ENTIER break was set to int32 rather than int64. Add shift operations to constfold. Improve auditing. Merge trunk. closed check-in: 1984824c19 user: kbk tags: mistake
2018-12-06
21:17
merge trunk check-in: c2a6505ae9 user: dkf tags: poly1305
03:15
Merge kbk-pre - add the optimizations of loop inversion (enables loop-invariant code motion) and partial redundancy elimination, and fix multiple bugs exposed by these optimizations. check-in: 0e06123e97 user: kbk tags: trunk
03:13
Array initialization cannot be hoisted because every array needs its own initArray. Code insertion must ignore operations that it has already inserted, or infinite loops can result. All tests pass! closed check-in: cf87d02677 user: kbk tags: kbk-pre
2018-11-27
03:07
Fix bug in finding variable names among the args to 'regexp' check-in: 6311170b65 user: kbk tags: trunk
Changes
Unified Diff Side-by-Side Diff Patch
Changes to demos/perftest/tester.tcl.
Changes to quadcode/bb.tcl.
Changes to quadcode/callframe.tcl.
Changes to quadcode/constfold.tcl.
Changes to quadcode/copyprop.tcl.
Changes to quadcode/dbginfo.tcl.
Changes to quadcode/deadcode.tcl.
Changes to quadcode/duchain.tcl.
Changes to quadcode/heap.tcl.
Added quadcode/loopinv.tcl.
Changes to quadcode/narrow.tcl.
Added quadcode/pre.tcl.
Changes to quadcode/specializer.tcl.
Changes to quadcode/ssa.tcl.
Changes to quadcode/transformer.tcl.
Changes to quadcode/typecheck.tcl.