From d10993b837276f6641937dba3f16647d67bdb42d Mon Sep 17 00:00:00 2001 From: Slava Pestov Date: Tue, 28 Jul 2009 09:34:08 -0500 Subject: [PATCH] compiler.cfg: Rename ssa to ssa.construction, coalescing to ssa.destruction --- basis/compiler/cfg/builder/builder.factor | 2 +- basis/compiler/cfg/optimizer/optimizer.factor | 4 ++-- .../construction-tests.factor} | 4 ++-- .../construction.factor} | 2 +- .../destruction}/copies/copies.factor | 4 ++-- .../destruction/destruction.factor} | 16 ++++++++-------- .../destruction}/forest/forest-tests.factor | 4 ++-- .../destruction}/forest/forest.factor | 0 .../interference/interference.factor | 4 ++-- .../destruction}/live-ranges/live-ranges.factor | 2 +- .../process-blocks/process-blocks.factor | 8 ++++---- .../destruction}/renaming/renaming.factor | 4 ++-- .../destruction}/state/state.factor | 2 +- .../value-numbering/value-numbering-tests.factor | 2 +- 14 files changed, 29 insertions(+), 29 deletions(-) rename basis/compiler/cfg/ssa/{ssa-tests.factor => construction/construction-tests.factor} (95%) rename basis/compiler/cfg/ssa/{ssa.factor => construction/construction.factor} (98%) rename basis/compiler/cfg/{coalescing => ssa/destruction}/copies/copies.factor (83%) rename basis/compiler/cfg/{coalescing/coalescing.factor => ssa/destruction/destruction.factor} (81%) rename basis/compiler/cfg/{coalescing => ssa/destruction}/forest/forest-tests.factor (94%) rename basis/compiler/cfg/{coalescing => ssa/destruction}/forest/forest.factor (100%) rename basis/compiler/cfg/{coalescing => ssa/destruction}/interference/interference.factor (93%) rename basis/compiler/cfg/{coalescing => ssa/destruction}/live-ranges/live-ranges.factor (97%) rename basis/compiler/cfg/{coalescing => ssa/destruction}/process-blocks/process-blocks.factor (96%) rename basis/compiler/cfg/{coalescing => ssa/destruction}/renaming/renaming.factor (91%) rename basis/compiler/cfg/{coalescing => ssa/destruction}/state/state.factor (92%) diff --git a/basis/compiler/cfg/builder/builder.factor b/basis/compiler/cfg/builder/builder.factor index ed1069d043..0c40b93ba6 100755 --- a/basis/compiler/cfg/builder/builder.factor +++ b/basis/compiler/cfg/builder/builder.factor @@ -23,7 +23,7 @@ compiler.alien ; IN: compiler.cfg.builder ! Convert tree SSA IR to CFG IR. The result is not in SSA form; this is -! constructed later by calling compiler.cfg.ssa:construct-ssa. +! constructed later by calling compiler.cfg.ssa.construction:construct-ssa. SYMBOL: procedures SYMBOL: loops diff --git a/basis/compiler/cfg/optimizer/optimizer.factor b/basis/compiler/cfg/optimizer/optimizer.factor index b411c42a35..52c4c40c09 100644 --- a/basis/compiler/cfg/optimizer/optimizer.factor +++ b/basis/compiler/cfg/optimizer/optimizer.factor @@ -5,13 +5,13 @@ compiler.cfg.tco compiler.cfg.useless-conditionals compiler.cfg.branch-splitting compiler.cfg.block-joining -compiler.cfg.ssa +compiler.cfg.ssa.construction compiler.cfg.alias-analysis compiler.cfg.value-numbering compiler.cfg.copy-prop compiler.cfg.dce compiler.cfg.write-barrier -compiler.cfg.coalescing +compiler.cfg.ssa.destruction compiler.cfg.empty-blocks compiler.cfg.predecessors compiler.cfg.rpo diff --git a/basis/compiler/cfg/ssa/ssa-tests.factor b/basis/compiler/cfg/ssa/construction/construction-tests.factor similarity index 95% rename from basis/compiler/cfg/ssa/ssa-tests.factor rename to basis/compiler/cfg/ssa/construction/construction-tests.factor index 6a3a014f78..da0f320130 100644 --- a/basis/compiler/cfg/ssa/ssa-tests.factor +++ b/basis/compiler/cfg/ssa/construction/construction-tests.factor @@ -1,9 +1,9 @@ USING: accessors compiler.cfg compiler.cfg.debugger compiler.cfg.dominance compiler.cfg.instructions -compiler.cfg.predecessors compiler.cfg.ssa assocs +compiler.cfg.predecessors compiler.cfg.ssa.construction assocs compiler.cfg.registers cpu.architecture kernel namespaces sequences tools.test vectors ; -IN: compiler.cfg.ssa.tests +IN: compiler.cfg.ssa.construction.tests : reset-counters ( -- ) ! Reset counters so that results are deterministic w.r.t. hash order diff --git a/basis/compiler/cfg/ssa/ssa.factor b/basis/compiler/cfg/ssa/construction/construction.factor similarity index 98% rename from basis/compiler/cfg/ssa/ssa.factor rename to basis/compiler/cfg/ssa/construction/construction.factor index 410d8fd951..23bed8bce0 100644 --- a/basis/compiler/cfg/ssa/ssa.factor +++ b/basis/compiler/cfg/ssa/construction/construction.factor @@ -10,7 +10,7 @@ compiler.cfg.liveness compiler.cfg.registers compiler.cfg.dominance compiler.cfg.instructions ; -IN: compiler.cfg.ssa +IN: compiler.cfg.ssa.construction ! SSA construction. Predecessors must be computed first. diff --git a/basis/compiler/cfg/coalescing/copies/copies.factor b/basis/compiler/cfg/ssa/destruction/copies/copies.factor similarity index 83% rename from basis/compiler/cfg/coalescing/copies/copies.factor rename to basis/compiler/cfg/ssa/destruction/copies/copies.factor index f691002d64..063704e0f6 100644 --- a/basis/compiler/cfg/coalescing/copies/copies.factor +++ b/basis/compiler/cfg/ssa/destruction/copies/copies.factor @@ -1,8 +1,8 @@ ! Copyright (C) 2009 Slava Pestov. ! See http://factorcode.org/license.txt for BSD license. USING: accessors assocs hashtables fry kernel make namespaces -sequences compiler.cfg.coalescing.state compiler.cfg.parallel-copy ; -IN: compiler.cfg.coalescing.copies +sequences compiler.cfg.ssa.destruction.state compiler.cfg.parallel-copy ; +IN: compiler.cfg.ssa.destruction.copies ERROR: bad-copy ; diff --git a/basis/compiler/cfg/coalescing/coalescing.factor b/basis/compiler/cfg/ssa/destruction/destruction.factor similarity index 81% rename from basis/compiler/cfg/coalescing/coalescing.factor rename to basis/compiler/cfg/ssa/destruction/destruction.factor index 86dee8a3be..2d0cd26798 100644 --- a/basis/compiler/cfg/coalescing/coalescing.factor +++ b/basis/compiler/cfg/ssa/destruction/destruction.factor @@ -9,15 +9,15 @@ compiler.cfg.dominance compiler.cfg.instructions compiler.cfg.liveness.ssa compiler.cfg.critical-edges -compiler.cfg.coalescing.state -compiler.cfg.coalescing.forest -compiler.cfg.coalescing.copies -compiler.cfg.coalescing.renaming -compiler.cfg.coalescing.live-ranges -compiler.cfg.coalescing.process-blocks ; -IN: compiler.cfg.coalescing +compiler.cfg.ssa.destruction.state +compiler.cfg.ssa.destruction.forest +compiler.cfg.ssa.destruction.copies +compiler.cfg.ssa.destruction.renaming +compiler.cfg.ssa.destruction.live-ranges +compiler.cfg.ssa.destruction.process-blocks ; +IN: compiler.cfg.ssa.destruction -! Fast Copy Coalescing and Live-Range Identification +! Based on "Fast Copy Coalescing and Live-Range Identification" ! http://www.cs.ucsd.edu/classes/sp02/cse231/kenpldi.pdf ! Dominance, liveness and def-use need to be computed diff --git a/basis/compiler/cfg/coalescing/forest/forest-tests.factor b/basis/compiler/cfg/ssa/destruction/forest/forest-tests.factor similarity index 94% rename from basis/compiler/cfg/coalescing/forest/forest-tests.factor rename to basis/compiler/cfg/ssa/destruction/forest/forest-tests.factor index 3cbcbb186a..a74947e5df 100644 --- a/basis/compiler/cfg/coalescing/forest/forest-tests.factor +++ b/basis/compiler/cfg/ssa/destruction/forest/forest-tests.factor @@ -1,9 +1,9 @@ -USING: accessors compiler.cfg compiler.cfg.coalescing.forest +USING: accessors compiler.cfg compiler.cfg.ssa.destruction.forest compiler.cfg.debugger compiler.cfg.dominance compiler.cfg.instructions compiler.cfg.predecessors compiler.cfg.registers compiler.cfg.def-use cpu.architecture kernel namespaces sequences tools.test vectors sorting math.order ; -IN: compiler.cfg.coalescing.forest.tests +IN: compiler.cfg.ssa.destruction.forest.tests V{ T{ ##peek f V int-regs 0 D 0 } } clone 0 test-bb V{ T{ ##peek f V int-regs 1 D 0 } } clone 1 test-bb diff --git a/basis/compiler/cfg/coalescing/forest/forest.factor b/basis/compiler/cfg/ssa/destruction/forest/forest.factor similarity index 100% rename from basis/compiler/cfg/coalescing/forest/forest.factor rename to basis/compiler/cfg/ssa/destruction/forest/forest.factor diff --git a/basis/compiler/cfg/coalescing/interference/interference.factor b/basis/compiler/cfg/ssa/destruction/interference/interference.factor similarity index 93% rename from basis/compiler/cfg/coalescing/interference/interference.factor rename to basis/compiler/cfg/ssa/destruction/interference/interference.factor index 4e0ca99834..4bb55a00aa 100644 --- a/basis/compiler/cfg/coalescing/interference/interference.factor +++ b/basis/compiler/cfg/ssa/destruction/interference/interference.factor @@ -2,8 +2,8 @@ ! See http://factorcode.org/license.txt for BSD license. USING: accessors assocs combinators combinators.short-circuit kernel math namespaces sequences locals compiler.cfg.def-use -compiler.cfg.dominance compiler.cfg.coalescing.live-ranges ; -IN: compiler.cfg.coalescing.interference +compiler.cfg.dominance compiler.cfg.ssa.destruction.live-ranges ; +IN: compiler.cfg.ssa.destruction.interference dup [ diff --git a/basis/compiler/cfg/coalescing/state/state.factor b/basis/compiler/cfg/ssa/destruction/state/state.factor similarity index 92% rename from basis/compiler/cfg/coalescing/state/state.factor rename to basis/compiler/cfg/ssa/destruction/state/state.factor index 6174945ccb..30e69521b9 100644 --- a/basis/compiler/cfg/coalescing/state/state.factor +++ b/basis/compiler/cfg/ssa/destruction/state/state.factor @@ -1,7 +1,7 @@ ! Copyright (C) 2009 Slava Pestov. ! See http://factorcode.org/license.txt for BSD license. USING: namespaces sets kernel assocs ; -IN: compiler.cfg.coalescing.state +IN: compiler.cfg.ssa.destruction.state SYMBOLS: processed-names waiting used-by-another renaming-sets ; diff --git a/basis/compiler/cfg/value-numbering/value-numbering-tests.factor b/basis/compiler/cfg/value-numbering/value-numbering-tests.factor index bec0c27aeb..c5b064b2d3 100644 --- a/basis/compiler/cfg/value-numbering/value-numbering-tests.factor +++ b/basis/compiler/cfg/value-numbering/value-numbering-tests.factor @@ -3,7 +3,7 @@ USING: compiler.cfg.value-numbering compiler.cfg.instructions compiler.cfg.registers compiler.cfg.debugger compiler.cfg.comparisons cpu.architecture tools.test kernel math combinators.short-circuit accessors sequences compiler.cfg.predecessors locals -compiler.cfg.dce compiler.cfg.coalescing +compiler.cfg.dce compiler.cfg.ssa.destruction compiler.cfg assocs vectors arrays layouts namespaces ; : trim-temps ( insns -- insns )