robert-strandh / SICL

A fresh implementation of Common Lisp
Other
1.07k stars 79 forks source link

Floating point register allocation #203

Closed no-defun-allowed closed 3 years ago

no-defun-allowed commented 3 years ago

We define a mixin class float-arithmetic-mixin for floating-point arithmetic instructions, and implement register allocation for it. We also ensure that the output of compute-return-value-count-instruction won't be attributed to a register used for return values, and pretend to fix an error in the IR visualizer where compute-dx fails to find an instruction in the sequence of instructions, and make floating-point lexical locations purple to distinguish them easily.