Rename _gc to ##gc
parent
692b479302
commit
1a52414bb1
|
@ -51,10 +51,10 @@ M: ##alien-getter uses-vregs src>> 1array ;
|
||||||
M: ##alien-setter uses-vregs [ src>> ] [ value>> ] bi 2array ;
|
M: ##alien-setter uses-vregs [ src>> ] [ value>> ] bi 2array ;
|
||||||
M: ##fixnum-overflow uses-vregs [ src1>> ] [ src2>> ] bi 2array ;
|
M: ##fixnum-overflow uses-vregs [ src1>> ] [ src2>> ] bi 2array ;
|
||||||
M: ##phi uses-vregs inputs>> ;
|
M: ##phi uses-vregs inputs>> ;
|
||||||
|
M: ##gc uses-vregs live-in>> ;
|
||||||
M: _conditional-branch uses-vregs [ src1>> ] [ src2>> ] bi 2array ;
|
M: _conditional-branch uses-vregs [ src1>> ] [ src2>> ] bi 2array ;
|
||||||
M: _compare-imm-branch uses-vregs src1>> 1array ;
|
M: _compare-imm-branch uses-vregs src1>> 1array ;
|
||||||
M: _dispatch uses-vregs src>> 1array ;
|
M: _dispatch uses-vregs src>> 1array ;
|
||||||
M: _gc uses-vregs live-in>> ;
|
|
||||||
M: insn uses-vregs drop f ;
|
M: insn uses-vregs drop f ;
|
||||||
|
|
||||||
! Instructions that use vregs
|
! Instructions that use vregs
|
||||||
|
@ -66,7 +66,8 @@ UNION: vreg-insn
|
||||||
##fixnum-overflow
|
##fixnum-overflow
|
||||||
##conditional-branch
|
##conditional-branch
|
||||||
##compare-imm-branch
|
##compare-imm-branch
|
||||||
|
##phi
|
||||||
|
##gc
|
||||||
_conditional-branch
|
_conditional-branch
|
||||||
_compare-imm-branch
|
_compare-imm-branch
|
||||||
_dispatch
|
_dispatch ;
|
||||||
_gc ;
|
|
||||||
|
|
|
@ -14,7 +14,7 @@ IN: compiler.cfg.gc-checks
|
||||||
: insert-gc-check ( basic-block -- )
|
: insert-gc-check ( basic-block -- )
|
||||||
dup gc? [
|
dup gc? [
|
||||||
dup
|
dup
|
||||||
[ swap object-pointer-regs \ _gc new-insn suffix ]
|
[ swap object-pointer-regs \ ##gc new-insn prefix ]
|
||||||
change-instructions drop
|
change-instructions drop
|
||||||
] [ drop ] if ;
|
] [ drop ] if ;
|
||||||
|
|
||||||
|
|
|
@ -223,14 +223,14 @@ INSN: ##compare-imm < ##binary-imm cc temp ;
|
||||||
INSN: ##compare-float-branch < ##conditional-branch ;
|
INSN: ##compare-float-branch < ##conditional-branch ;
|
||||||
INSN: ##compare-float < ##binary cc temp ;
|
INSN: ##compare-float < ##binary cc temp ;
|
||||||
|
|
||||||
|
INSN: ##gc live-in ;
|
||||||
|
|
||||||
! Instructions used by machine IR only.
|
! Instructions used by machine IR only.
|
||||||
INSN: _prologue stack-frame ;
|
INSN: _prologue stack-frame ;
|
||||||
INSN: _epilogue stack-frame ;
|
INSN: _epilogue stack-frame ;
|
||||||
|
|
||||||
INSN: _label id ;
|
INSN: _label id ;
|
||||||
|
|
||||||
INSN: _gc live-in ;
|
|
||||||
|
|
||||||
INSN: _branch label ;
|
INSN: _branch label ;
|
||||||
|
|
||||||
INSN: _dispatch src temp ;
|
INSN: _dispatch src temp ;
|
||||||
|
|
|
@ -32,8 +32,8 @@ M: insn compute-stack-frame*
|
||||||
frame-required? on
|
frame-required? on
|
||||||
] when ;
|
] when ;
|
||||||
|
|
||||||
\ _gc t frame-required? set-word-prop
|
|
||||||
\ _spill t frame-required? set-word-prop
|
\ _spill t frame-required? set-word-prop
|
||||||
|
\ ##gc t frame-required? set-word-prop
|
||||||
\ ##fixnum-add t frame-required? set-word-prop
|
\ ##fixnum-add t frame-required? set-word-prop
|
||||||
\ ##fixnum-sub t frame-required? set-word-prop
|
\ ##fixnum-sub t frame-required? set-word-prop
|
||||||
\ ##fixnum-mul t frame-required? set-word-prop
|
\ ##fixnum-mul t frame-required? set-word-prop
|
||||||
|
|
Loading…
Reference in New Issue