16 lines
552 B
Factor
16 lines
552 B
Factor
! Copyright (C) 2009 Slava Pestov.
|
|
! See http://factorcode.org/license.txt for BSD license.
|
|
USING: accessors assocs compiler.cfg.registers fry kernel math
|
|
namespaces ;
|
|
IN: compiler.cfg.stacks.height
|
|
|
|
SYMBOLS: ds-heights rs-heights ;
|
|
|
|
: record-stack-heights ( ds-height rs-height bb -- )
|
|
[ ds-heights get set-at ] [ rs-heights get set-at ] bi-curry bi* ;
|
|
|
|
GENERIC# untranslate-loc 1 ( loc bb -- loc' )
|
|
|
|
M: ds-loc untranslate-loc [ n>> ] [ ds-heights get at ] bi* + <ds-loc> ;
|
|
M: rs-loc untranslate-loc [ n>> ] [ rs-heights get at ] bi* + <rs-loc> ;
|