From 0d83873174b43e3e47c7f058879b0cdb2baaeb38 Mon Sep 17 00:00:00 2001 From: Slava Pestov Date: Mon, 3 Nov 2008 00:03:15 -0600 Subject: [PATCH] Fix regression --- basis/compiler/tree/cleanup/cleanup-tests.factor | 8 +++++++- basis/compiler/tree/cleanup/cleanup.factor | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/basis/compiler/tree/cleanup/cleanup-tests.factor b/basis/compiler/tree/cleanup/cleanup-tests.factor index b3ba62b73b..b77a27800f 100644 --- a/basis/compiler/tree/cleanup/cleanup-tests.factor +++ b/basis/compiler/tree/cleanup/cleanup-tests.factor @@ -5,7 +5,7 @@ strings sbufs sequences.private slots.private combinators definitions system layouts vectors math.partial-dispatch math.order math.functions accessors hashtables classes assocs io.encodings.utf8 io.encodings.ascii io.encodings fry slots -sorting.private +sorting.private combinators.short-circuit compiler.tree compiler.tree.combinators compiler.tree.cleanup @@ -13,6 +13,7 @@ compiler.tree.builder compiler.tree.recursive compiler.tree.normalization compiler.tree.propagation +compiler.tree.propagation.info compiler.tree.checker compiler.tree.debugger ; @@ -494,3 +495,8 @@ cell-bits 32 = [ [ t ] [ [ hashtable new ] \ new inlined? ] unit-test + +[ t ] [ + [ { array-capacity } declare 1 fixnum+ ] cleaned-up-tree + [ { [ #call? ] [ node-input-infos second literal>> 1 = ] } 1&& ] contains? +] unit-test diff --git a/basis/compiler/tree/cleanup/cleanup.factor b/basis/compiler/tree/cleanup/cleanup.factor index caf2a36925..4ca058b2e3 100644 --- a/basis/compiler/tree/cleanup/cleanup.factor +++ b/basis/compiler/tree/cleanup/cleanup.factor @@ -78,7 +78,7 @@ GENERIC: cleanup* ( node -- node/nodes ) } cond ; : remove-overflow-check ( #call -- #call ) - [ in-d>> ] [ out-d>> ] [ word>> no-overflow-variant ] tri #call cleanup* ; + [ no-overflow-variant ] change-word cleanup* ; M: #call cleanup* {