Fixing call( inline caching
							parent
							
								
									c4cd6e0787
								
							
						
					
					
						commit
						afecb9c758
					
				| 
						 | 
				
			
			@ -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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -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?
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue