]> gitweb.factorcode.org Git - factor.git/commitdiff
Fixing call( inline caching
authorSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Fri, 13 Nov 2009 10:32:33 +0000 (04:32 -0600)
committerSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Fri, 13 Nov 2009 10:32:33 +0000 (04:32 -0600)
basis/compiler/tree/propagation/call-effect/call-effect.factor
core/compiler/units/units.factor

index 545d02cf9ae7332103aecb5e6a2a6437e9f14ca9..ff4886d1c795ad0ecc2fb7d7dbe0d246f9474871 100644 (file)
@@ -24,11 +24,7 @@ IN: compiler.tree.propagation.call-effect
 TUPLE: inline-cache value counter ;
 
 : inline-cache-hit? ( word/quot ic -- ? )
-    {
-        [ nip value>> ]
-        [ value>> eq? ]
-        [ nip counter>> effect-counter eq? ]
-    } 2&& ; inline
+    { [ value>> eq? ] [ nip counter>> effect-counter eq? ] } 2&& ; inline
 
 : update-inline-cache ( word/quot ic -- )
     [ effect-counter ] dip
index 93ed6c4aa1cb990180e31bf446b6c0d068b76e42..a46e846b0dcc466d0916703bda7f54a13130b92b 100644 (file)
@@ -132,7 +132,7 @@ M: object bump-effect-counter* drop f ;
     or ;
 
 : bump-effect-counter ( -- )
-    bump-effect-counter? [ 46 getenv 1 + 46 setenv ] when ;
+    bump-effect-counter? [ 46 getenv 0 or 1 + 46 setenv ] when ;
 
 : notify-observers ( -- )
     updated-definitions dup assoc-empty?