compiler.cfg.linear-scan.allocation: removes no-free-registers?
parent
c8d648f3f2
commit
951c0586f0
|
@ -25,12 +25,9 @@ IN: compiler.cfg.linear-scan.allocation
|
||||||
[ inactive-positions ] [ active-positions ] 2bi
|
[ inactive-positions ] [ active-positions ] 2bi
|
||||||
] keep alist-max ;
|
] keep alist-max ;
|
||||||
|
|
||||||
: no-free-registers? ( result -- ? )
|
|
||||||
second 0 = ; inline
|
|
||||||
|
|
||||||
: assign-register ( new registers -- )
|
: assign-register ( new registers -- )
|
||||||
dupd register-status {
|
dupd register-status {
|
||||||
{ [ dup no-free-registers? ] [ drop assign-blocked-register ] }
|
{ [ dup second 0 = ] [ drop assign-blocked-register ] }
|
||||||
{ [ 2dup register-available? ] [ register-available ] }
|
{ [ 2dup register-available? ] [ register-available ] }
|
||||||
[ drop assign-blocked-register ]
|
[ drop assign-blocked-register ]
|
||||||
} cond ;
|
} cond ;
|
||||||
|
|
Loading…
Reference in New Issue