From a211e44bb9264a9e345c132541c462251c6fb5ea Mon Sep 17 00:00:00 2001 From: Slava Pestov Date: Sat, 13 Sep 2008 04:43:29 -0500 Subject: [PATCH 1/2] Found a place to use the locals in literals feature --- basis/compiler/tree/dead-code/recursive/recursive.factor | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/basis/compiler/tree/dead-code/recursive/recursive.factor b/basis/compiler/tree/dead-code/recursive/recursive.factor index 03d4e919ee..02dc42f058 100644 --- a/basis/compiler/tree/dead-code/recursive/recursive.factor +++ b/basis/compiler/tree/dead-code/recursive/recursive.factor @@ -84,7 +84,7 @@ M:: #recursive remove-dead-code* ( node -- nodes ) drop-outputs [ node drop-recursive-outputs ] | node [ (remove-dead-code) ] change-child drop node label>> [ filter-live ] change-enter-out drop - drop-inputs node drop-outputs 3array + { drop-inputs node drop-outputs } ] ; M: #return-recursive remove-dead-code* ; From d47a76b69bc9881f74602d75baf6eb15e6f5eebc Mon Sep 17 00:00:00 2001 From: Slava Pestov Date: Sat, 13 Sep 2008 06:13:49 -0500 Subject: [PATCH 2/2] 15% improvement --- extra/benchmark/spectral-norm/spectral-norm.factor | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/extra/benchmark/spectral-norm/spectral-norm.factor b/extra/benchmark/spectral-norm/spectral-norm.factor index 3c20a1ceff..245027ef77 100644 --- a/extra/benchmark/spectral-norm/spectral-norm.factor +++ b/extra/benchmark/spectral-norm/spectral-norm.factor @@ -32,8 +32,10 @@ IN: benchmark.spectral-norm : eval-AtA-times-u ( u n -- seq ) [ eval-A-times-u ] [ eval-At-times-u ] bi ; inline +: ones ( n -- seq ) [ 1.0 ] F{ } replicate-as ; inline + :: u/v ( n -- u v ) - n 1.0 >float-array dup + n ones dup 10 [ drop n eval-AtA-times-u