--- gforth/cross.fs 2011/10/06 20:04:35 1.176 +++ gforth/cross.fs 2011/11/11 18:29:09 1.177 @@ -2966,6 +2966,24 @@ Builder input-var Build: ( m v size -- m v' ) over T , H + ;Build DO: abort" Not in cross mode" ;DO +\ Mini-OOF + +\ Builder method +\ Build: ( m v -- m' v ) over T , swap cell+ swap H ;Build +\ DO: abort" Not in cross mode" ;DO + +\ Builder var +\ Build: ( m v size -- m v+size ) over T , H + ;Build +\ DO: ( o -- addr ) T @ H + ;DO + +\ Builder end-class +\ Build: ( addr m v -- ) +\ T here >r , dup , 2 cells H ?DO T ['] noop , 1 cells H +LOOP +\ T cell+ dup cell+ r> rot @ 2 cells /string move H ;Build +\ by: Variable + +\ : defines ( xt class -- ) T ' >body @ + ! H ; + \ Peephole optimization 05sep01jaw \ this section defines different compilation