diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2021-02-07 12:55:48 -0800 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2021-02-07 12:55:48 -0800 |
commit | f0ac10cf207f5a9b62b19a2bca186bc56a565d65 (patch) | |
tree | be55dc4c033adc851b8683d1b464bbd0125f5af3 /tests/012/cont.expected | |
parent | 55273419408ffc106718a342496bba63d6d517a9 (diff) | |
download | txr-f0ac10cf207f5a9b62b19a2bca186bc56a565d65.tar.gz txr-f0ac10cf207f5a9b62b19a2bca186bc56a565d65.tar.bz2 txr-f0ac10cf207f5a9b62b19a2bca186bc56a565d65.zip |
compiler: frame reduction optimizations.
These optimizations have to do with moving a (frame x y)
instruction past the next instruction. The goal is to move the
frame past a conditional branch, under the right
circumstances, so that the frame is eliminated when the branch
is taken.
* share/txr/stdlib/optimize.tl (basic-blocks (cut-block,
next-block)): New methods.
(basic-block peephole): Add two patterns: one to move a frame
past a mov, call or gcall. Another more complicated one to
move it past an if which jumps to an end.
Diffstat (limited to 'tests/012/cont.expected')
0 files changed, 0 insertions, 0 deletions