summaryrefslogtreecommitdiffstats
path: root/mpi-patches/mpi-to-double
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2025-06-17 21:09:16 -0700
committerKaz Kylheku <kaz@kylheku.com>2025-06-17 21:09:16 -0700
commit3dcd2869946e25041957e312fc3598a4f4639cf3 (patch)
tree3b90d86928b455bbb2c77ddfdf7042608d3abadc /mpi-patches/mpi-to-double
parente10d748899c821a8ceba411fe24745023dae602b (diff)
downloadtxr-3dcd2869946e25041957e312fc3598a4f4639cf3.tar.gz
txr-3dcd2869946e25041957e312fc3598a4f4639cf3.tar.bz2
txr-3dcd2869946e25041957e312fc3598a4f4639cf3.zip
compiler: don't null tregs before closure.
* stdlib/compiler.tl (compiler eliminate-frame): New optional no-tregs parameter. If true, it disables the generation of code to null the tregs. (compiler comp-lambda-impl): Pass t to no-regs parameter of eliminate-frame to disable the nulling. It is not required for a lambda which executes which fresh t-registers, implicitly initialized to nil. The presence of these instructions prevents the when-match pattern from matching, which expects the instruction sequence to start with a close instruction, so that the effect of eliminate-frame is then lost. This is a latent bug exposed by the previous commit. We would have seen this previously in a lambda occurring inside a loop.
Diffstat (limited to 'mpi-patches/mpi-to-double')
0 files changed, 0 insertions, 0 deletions