Move conjoin-at from compiler.cfg.liveness to sets
							parent
							
								
									a213db05db
								
							
						
					
					
						commit
						fd9a353fd6
					
				| 
						 | 
				
			
			@ -43,9 +43,6 @@ SYMBOL: work-list
 | 
			
		|||
    [ nip kill-set ]
 | 
			
		||||
    2bi assoc-diff ;
 | 
			
		||||
 | 
			
		||||
: conjoin-at ( value key assoc -- )
 | 
			
		||||
    [ dupd ?set-at ] change-at ;
 | 
			
		||||
 | 
			
		||||
: compute-phi-live-in ( basic-block -- phi-live-in )
 | 
			
		||||
    instructions>> [ ##phi? ] filter [ f ] [
 | 
			
		||||
        H{ } clone [
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -23,6 +23,7 @@ $nl
 | 
			
		|||
"Adding elements to sets:"
 | 
			
		||||
{ $subsection adjoin }
 | 
			
		||||
{ $subsection conjoin }
 | 
			
		||||
{ $subsection conjoin-at }
 | 
			
		||||
{ $see-also member? memq? any? all? "assocs-sets" } ;
 | 
			
		||||
 | 
			
		||||
ABOUT: "sets"
 | 
			
		||||
| 
						 | 
				
			
			@ -54,6 +55,10 @@ HELP: conjoin
 | 
			
		|||
}
 | 
			
		||||
{ $side-effects "assoc" } ;
 | 
			
		||||
 | 
			
		||||
HELP: conjoin-at
 | 
			
		||||
{ $values { "value" object } { "key" object } { "assoc" assoc } }
 | 
			
		||||
{ $description "Adds " { $snippet "value" } " to the set stored at " { $snippet "key" } " of " { $snippet "assoc" } "." } ;
 | 
			
		||||
 | 
			
		||||
HELP: unique
 | 
			
		||||
{ $values { "seq" "a sequence" } { "assoc" assoc } }
 | 
			
		||||
{ $description "Outputs a new assoc where the keys and values are equal." }
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -7,6 +7,9 @@ IN: sets
 | 
			
		|||
 | 
			
		||||
: conjoin ( elt assoc -- ) dupd set-at ;
 | 
			
		||||
 | 
			
		||||
: conjoin-at ( value key assoc -- )
 | 
			
		||||
    [ dupd ?set-at ] change-at ;
 | 
			
		||||
 | 
			
		||||
: (prune) ( elt hash vec -- )
 | 
			
		||||
    3dup drop key? [ 3drop ] [
 | 
			
		||||
        [ drop conjoin ] [ nip push ] 3bi
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue