Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Keep dictionary iterations out of the callframe - they can never be addressed by upvar |
---|---|
Timelines: | family | ancestors | descendants | both | kbk-refactor-callframe |
Files: | files | file ages | folders |
SHA3-256: |
ea7b788fb47c28dbebe9c61c6d843261 |
User & Date: | kbk 2018-12-29 21:00:16.346 |
Context
2019-01-01
| ||
21:57 | Move callframe moves to the actual points where callframe values are moved. They can then be optimized by avaiability and liveness analysis. check-in: dbd9571178 user: kbk tags: notworking, kbk-refactor-callframe | |
2018-12-29
| ||
21:00 | Keep dictionary iterations out of the callframe - they can never be addressed by upvar check-in: ea7b788fb4 user: kbk tags: kbk-refactor-callframe | |
20:26 | Open a branch for some experiments on refactoring callframe operations check-in: 7454a5228c user: kbk tags: kbk-refactor-callframe | |
Changes
Changes to quadcode/translate.tcl.
︙ | ︙ | |||
1417 1418 1419 1420 1421 1422 1423 | oo::define quadcode::transformer method index-to-var {varIndex} { if {[string match "%*" $varIndex]} { set varIndex [string range $varIndex 1 end] } lassign [lindex [dict get $bytecode variables] $varIndex] flags name if {"temp" in $flags} { # Variable name is not legal for Tcl scalar local variables | | | 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 | oo::define quadcode::transformer method index-to-var {varIndex} { if {[string match "%*" $varIndex]} { set varIndex [string range $varIndex 1 end] } lassign [lindex [dict get $bytecode variables] $varIndex] flags name if {"temp" in $flags} { # Variable name is not legal for Tcl scalar local variables return [list temp @var$varIndex] } return [list var $name] } # exception-target -- # # Locate where an exception should go to from the current PC. Do not |
︙ | ︙ |