compiler.cfg.value-numbering: fix compile error
parent
e95cd256ec
commit
efd2a80d98
|
@ -15,7 +15,7 @@ IN: compiler.cfg.value-numbering.math
|
||||||
M: ##tagged>integer rewrite
|
M: ##tagged>integer rewrite
|
||||||
[ dst>> ] [ src>> vreg>expr ] bi {
|
[ dst>> ] [ src>> vreg>expr ] bi {
|
||||||
{ [ dup integer-expr? ] [ value>> tag-fixnum \ ##load-integer new-insn ] }
|
{ [ dup integer-expr? ] [ value>> tag-fixnum \ ##load-integer new-insn ] }
|
||||||
{ [ dup f-expr? ] [ \ f type-number \ ##load-integer new-insn ] }
|
{ [ dup f-expr? ] [ drop \ f type-number \ ##load-integer new-insn ] }
|
||||||
[ 2drop f ]
|
[ 2drop f ]
|
||||||
} cond ;
|
} cond ;
|
||||||
|
|
||||||
|
@ -99,7 +99,7 @@ M: ##sub-imm rewrite
|
||||||
temp expr src1>> vn>vreg insn src2>> mul-op execute
|
temp expr src1>> vn>vreg insn src2>> mul-op execute
|
||||||
insn dst>> temp imm add-op execute
|
insn dst>> temp imm add-op execute
|
||||||
] { } make
|
] { } make
|
||||||
] [ f ] if ;
|
] [ f ] if ; inline
|
||||||
|
|
||||||
: distribute-over-add? ( insn -- ? )
|
: distribute-over-add? ( insn -- ? )
|
||||||
src1>> vreg>expr add-imm-expr? ;
|
src1>> vreg>expr add-imm-expr? ;
|
||||||
|
@ -112,7 +112,7 @@ M: ##sub-imm rewrite
|
||||||
dup src1>> vreg>expr
|
dup src1>> vreg>expr
|
||||||
2dup src2>> vn>integer swap [ src2>> ] keep binary-constant-fold*
|
2dup src2>> vn>integer swap [ src2>> ] keep binary-constant-fold*
|
||||||
next-vreg
|
next-vreg
|
||||||
] 2dip (distribute) ;
|
] 2dip (distribute) ; inline
|
||||||
|
|
||||||
M: ##mul-imm rewrite
|
M: ##mul-imm rewrite
|
||||||
{
|
{
|
||||||
|
|
|
@ -1624,7 +1624,7 @@ cell 8 = [
|
||||||
] [
|
] [
|
||||||
{
|
{
|
||||||
T{ ##load-reference f 1 f }
|
T{ ##load-reference f 1 f }
|
||||||
T{ ##load-integer f 2 1 }
|
T{ ##tagged>integer f 2 1 }
|
||||||
T{ ##and-imm f 3 2 15 }
|
T{ ##and-imm f 3 2 15 }
|
||||||
} value-numbering-step
|
} value-numbering-step
|
||||||
] unit-test
|
] unit-test
|
||||||
|
|
Loading…
Reference in New Issue