]> gitweb.factorcode.org Git - factor.git/blobdiff - extra/compiler/cfg/gvn/gvn.factor
factor: trim using lists
[factor.git] / extra / compiler / cfg / gvn / gvn.factor
index 0877c6b0d460614c338cc665258ca9fc3401158d..a1c77878a9a762a6aa7bb9251a884abbfc48d32c 100644 (file)
@@ -1,25 +1,11 @@
 ! Copyright (C) 2008, 2010 Slava Pestov, 2011 Alex Vondrak
 ! See http://factorcode.org/license.txt for BSD license.
-USING: namespaces arrays assocs hashtables kernel accessors fry
-grouping sorting sets sequences locals
-cpu.architecture
-sequences.deep
-combinators
-compiler.cfg
-compiler.cfg.rpo
-compiler.cfg.def-use
-compiler.cfg.utilities
-compiler.cfg.instructions
-compiler.cfg.predecessors
-compiler.cfg.gvn.alien
-compiler.cfg.gvn.avail
-compiler.cfg.gvn.comparisons
-compiler.cfg.gvn.graph
-compiler.cfg.gvn.math
-compiler.cfg.gvn.rewrite
-compiler.cfg.gvn.slots
-compiler.cfg.gvn.misc
-compiler.cfg.gvn.expressions ;
+USING: accessors arrays assocs compiler.cfg compiler.cfg.def-use
+compiler.cfg.gvn.avail compiler.cfg.gvn.expressions
+compiler.cfg.gvn.graph compiler.cfg.gvn.rewrite
+compiler.cfg.instructions compiler.cfg.predecessors
+compiler.cfg.rpo compiler.cfg.utilities grouping kernel
+namespaces sequences sequences.deep ;
 IN: compiler.cfg.gvn
 
 GENERIC: simplify ( insn -- insn' )
@@ -118,8 +104,8 @@ M: insn gcse
     dup compute-avail-sets
     [ gcse-step ] simple-optimization ;
 
-: value-numbering ( cfg -- cfg )
-    dup {
+: value-numbering ( cfg -- )
+    {
         needs-predecessors
         determine-value-numbers
         eliminate-common-subexpressions