Code cleanup
							parent
							
								
									b389dcf441
								
							
						
					
					
						commit
						f09b36424c
					
				| 
						 | 
				
			
			@ -96,11 +96,11 @@ M: predicate-engine-word no-compile? "owner-generic" word-prop no-compile? ;
 | 
			
		|||
: not-compiled-def ( word error -- def )
 | 
			
		||||
    '[ _ _ not-compiled ] [ ] like ;
 | 
			
		||||
 | 
			
		||||
: deoptimize* ( word -- * )
 | 
			
		||||
    dup def>> deoptimize-with ;
 | 
			
		||||
 | 
			
		||||
: ignore-error ( word error -- * )
 | 
			
		||||
    drop
 | 
			
		||||
    [ clear-compiler-error ]
 | 
			
		||||
    [ dup def>> deoptimize-with ]
 | 
			
		||||
    bi ;
 | 
			
		||||
    drop [ clear-compiler-error ] [ deoptimize* ] bi ;
 | 
			
		||||
 | 
			
		||||
: remember-error ( word error -- * )
 | 
			
		||||
    [ swap <compiler-error> compiler-error ]
 | 
			
		||||
| 
						 | 
				
			
			@ -124,13 +124,13 @@ M: predicate-engine-word no-compile? "owner-generic" word-prop no-compile? ;
 | 
			
		|||
: contains-breakpoints? ( -- ? )
 | 
			
		||||
    dependencies get keys [ "break?" word-prop ] any? ;
 | 
			
		||||
 | 
			
		||||
: frontend ( word -- nodes )
 | 
			
		||||
: frontend ( word -- tree )
 | 
			
		||||
    #! If the word contains breakpoints, don't optimize it, since
 | 
			
		||||
    #! the walker does not support this.
 | 
			
		||||
    dup optimize? [
 | 
			
		||||
        [ [ build-tree ] [ deoptimize ] recover optimize-tree ] keep
 | 
			
		||||
        contains-breakpoints? [ nip dup def>> deoptimize-with ] [ drop ] if
 | 
			
		||||
    ] [ dup def>> deoptimize-with ] if ;
 | 
			
		||||
        contains-breakpoints? [ nip deoptimize* ] [ drop ] if
 | 
			
		||||
    ] [ deoptimize* ] if ;
 | 
			
		||||
 | 
			
		||||
: compile-dependency ( word -- )
 | 
			
		||||
    #! If a word calls an unoptimized word, try to compile the callee.
 | 
			
		||||
| 
						 | 
				
			
			@ -150,7 +150,7 @@ t compile-dependencies? set-global
 | 
			
		|||
    [ compile-dependencies ]
 | 
			
		||||
    bi ;
 | 
			
		||||
 | 
			
		||||
: backend ( nodes word -- )
 | 
			
		||||
: backend ( tree word -- )
 | 
			
		||||
    build-cfg [
 | 
			
		||||
        optimize-cfg
 | 
			
		||||
        build-mr
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue