1 ! Copyright (C) 2008, 2009 Slava Pestov.
2 ! See https://factorcode.org/license.txt for BSD license.
3 USING: assocs kernel math namespaces parser sequences ;
4 IN: compiler.cfg.registers
8 : next-vreg ( -- vreg )
11 : reset-vreg-counter ( -- )
12 0 vreg-counter set-global ;
14 SYMBOL: representations
16 ERROR: bad-vreg vreg ;
18 : rep-of ( vreg -- rep )
19 representations get ?at [ bad-vreg ] unless ;
21 : set-rep-of ( rep vreg -- )
22 representations get set-at ;
24 : next-vreg-rep ( rep -- vreg )
25 next-vreg [ set-rep-of ] keep ;
27 TUPLE: loc { n integer } ;
35 SYNTAX: D: scan-number <ds-loc> suffix! ;
36 SYNTAX: R: scan-number <rs-loc> suffix! ;