Check-in [a934a75e1f]

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

Overview
Comment:Integrate kbk-jumpthread: replace the node-by-node splitting with a single pass that identifies many threading opportunities and also reduces the number of splits. Eliminate the old nodesplit pass, and the renameTemps pass, which is no longer required.
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: a934a75e1f95e1a026ef64e6111b023b2b38b1d987b4f0b86da12d3e07977fbb
User & Date: kbk 2018-12-17 23:19:28.241
Context
2018-12-18
02:32
Add a long-forgotten 'specializer.md' discussing what the specializer does. check-in: 7bd4d23ac9 user: kbk tags: trunk
2018-12-17
23:19
Integrate kbk-jumpthread: replace the node-by-node splitting with a single pass that identifies many threading opportunities and also reduces the number of splits. Eliminate the old nodesplit pass, and the renameTemps pass, which is no longer required. check-in: a934a75e1f user: kbk tags: trunk
23:13
result, returnCode, returnOptions must be split into FAIL and non-FAIL paths because the backend isn't prepared to deal with all combinations of FAIL + someOtherType. closed check-in: 94358b53ea user: kbk tags: kbk-jumpthread
2018-12-08
21:46
Add a micropass to optimize away conditional jumps that are identical to a conditional jump in a dominator. (Partial redundancy elimination appears to create these.) check-in: 344567b919 user: kbk tags: trunk
Changes
Unified Diff Side-by-Side Diff Patch
Changes to demos/perftest/tester.tcl.
Changes to quadcode/constfold.tcl.
Changes to quadcode/inline.tcl.
Added quadcode/jumpthread.tcl.
Deleted quadcode/nodesplit.tcl.
Deleted quadcode/renameTemps.tcl.
Changes to quadcode/specializer.tcl.
Changes to quadcode/ssa.tcl.
Changes to quadcode/transformer.tcl.