     2dup eq? [ 2drop ] [
         [ ac>vregs ] dip
         [ vregs>acs get '[ [ _ ] dip _ set-at ] each ]
-        [ acs>vregs get at push-all ]
+        [ ac>vregs push-all ]
         2bi
     ] if ;
 

FROM: namespaces => set ;
IN: compiler.cfg.alias-analysis

! We try to eliminate redundant slot operations using some simple heuristics.
! 
! All heap-allocated objects which are loaded from the stack, or
! other object slots are pessimistically assumed to belong to

    #! Set alias class of newly-seen vreg.
    vreg vregs>acs get key? [ vreg vreg-not-new ] when
    ac vreg vregs>acs get set-at
    vreg ac ac>vregs push ;

: live-slot ( slot#/f vreg -- vreg' )
    #! If the slot number is unknown, we never reuse a previous
