From b27634bff77ee7593da345c9a9cfd71a76760d2c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Lindqvist?= Date: Tue, 8 Mar 2016 16:30:25 +0100 Subject: [PATCH] compiler.cfg.builder.blocks: removes assignments to basic-block variable Now it isn't used at all in the cfg creation step. --- .../cfg/builder/blocks/blocks-docs.factor | 23 +++++++++---------- .../cfg/builder/blocks/blocks-tests.factor | 2 +- .../compiler/cfg/builder/blocks/blocks.factor | 10 ++++---- .../compiler/cfg/builder/builder-tests.factor | 6 ++--- 4 files changed, 18 insertions(+), 23 deletions(-) diff --git a/basis/compiler/cfg/builder/blocks/blocks-docs.factor b/basis/compiler/cfg/builder/blocks/blocks-docs.factor index 1f266d7835..7c7b2d6448 100644 --- a/basis/compiler/cfg/builder/blocks/blocks-docs.factor +++ b/basis/compiler/cfg/builder/blocks/blocks-docs.factor @@ -5,22 +5,21 @@ IN: compiler.cfg.builder.blocks << STRING: ex-emit-trivial-block USING: compiler.cfg.builder.blocks make prettyprint ; - set-basic-block [ [ gensym ##call, ] emit-trivial-block ] { } make drop basic-block get . +begin-stack-analysis dup set-basic-block [ gensym ##call, drop ] emit-trivial-block predecessors>> first . T{ basic-block - { id 2040412 } + { instructions + V{ T{ ##call { word ( gensym ) } } T{ ##branch } } + } { successors + V{ + T{ basic-block { predecessors V{ ~circularity~ } } } + } + } + { predecessors V{ T{ basic-block - { id 2040413 } - { instructions - V{ - T{ ##call { word ( gensym ) } } - T{ ##branch } - } - } - { successors - V{ T{ basic-block { id 2040414 } } } - } + { instructions V{ T{ ##branch } } } + { successors V{ ~circularity~ } } } } } diff --git a/basis/compiler/cfg/builder/blocks/blocks-tests.factor b/basis/compiler/cfg/builder/blocks/blocks-tests.factor index 70e158df71..4cedac47a2 100644 --- a/basis/compiler/cfg/builder/blocks/blocks-tests.factor +++ b/basis/compiler/cfg/builder/blocks/blocks-tests.factor @@ -1,6 +1,6 @@ USING: accessors compiler.cfg compiler.cfg.builder.blocks compiler.cfg.instructions compiler.cfg.stacks.local -compiler.cfg.utilities compiler.test kernel make namespaces sequences +compiler.cfg.utilities compiler.test kernel namespaces sequences tools.test ; IN: compiler.cfg.builder.blocks.tests diff --git a/basis/compiler/cfg/builder/blocks/blocks.factor b/basis/compiler/cfg/builder/blocks/blocks.factor index 75b574e3a3..12b589e5c0 100644 --- a/basis/compiler/cfg/builder/blocks/blocks.factor +++ b/basis/compiler/cfg/builder/blocks/blocks.factor @@ -1,19 +1,17 @@ ! Copyright (C) 2009, 2010 Slava Pestov. ! See http://factorcode.org/license.txt for BSD license. USING: accessors arrays compiler.cfg compiler.cfg.instructions -compiler.cfg.stacks compiler.cfg.stacks.local compiler.cfg.utilities fry kernel -make math namespaces sequences ; +compiler.cfg.stacks compiler.cfg.stacks.local compiler.cfg.utilities +kernel make math namespaces sequences ; SLOT: in-d SLOT: out-d IN: compiler.cfg.builder.blocks : set-basic-block ( basic-block -- ) - [ basic-block set ] - [ instructions>> building set ] - [ begin-local-analysis ] tri ; + [ instructions>> building set ] [ begin-local-analysis ] bi ; : end-basic-block ( block -- ) - [ end-local-analysis ] when* building off basic-block off ; + [ end-local-analysis ] when* building off ; : (begin-basic-block) ( block -- block' ) swap [ over connect-bbs ] when* dup set-basic-block ; diff --git a/basis/compiler/cfg/builder/builder-tests.factor b/basis/compiler/cfg/builder/builder-tests.factor index 0aaff60083..199fa7cae1 100644 --- a/basis/compiler/cfg/builder/builder-tests.factor +++ b/basis/compiler/cfg/builder/builder-tests.factor @@ -254,7 +254,7 @@ SYMBOL: foo ! emit-branch { 77 } [ { T{ #call { word + } } } - V{ } 77 insns>block dup basic-block set + V{ } 77 insns>block emit-branch first predecessors>> first predecessors>> @@ -377,9 +377,7 @@ SYMBOL: foo T{ ##return } } } [ - [ - dup set-basic-block end-word - ] V{ } make drop instructions>> + dup set-basic-block end-word instructions>> ] unit-test