diff --git a/basis/compiler/cfg/representations/representations.factor b/basis/compiler/cfg/representations/representations.factor index 71f589d394..a31851d6dd 100644 --- a/basis/compiler/cfg/representations/representations.factor +++ b/basis/compiler/cfg/representations/representations.factor @@ -17,6 +17,14 @@ IN: compiler.cfg.representations ! Virtual register representation selection. Predecessors and loops ! must be computed first. +: emit-conversion ( dst src dst-rep src-rep -- ) + 2array { + { { int-rep int-rep } [ int-rep ##copy ] } + { { double-float-rep double-float-rep } [ double-float-rep ##copy ] } + { { double-float-rep int-rep } [ ##unbox-float ] } + { { int-rep double-float-rep } [ int-rep next-vreg-rep ##box-float ] } + } case ; +